Added all promotions for air units, and a couple for other units that were previously missed
BIN
android/Images/UnitPromotionIcons/Air_Repair_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Ambush_II_(Civ5).png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Ambush_I_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Evasion_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Interception_III_(Civ5).png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Interception_II_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Interception_I_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Operational_Range_(Civ5).png
Normal file
After Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Siege_III_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Siege_II_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Siege_I_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Sortie_(Civ5).png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Targeting_I_(air)_(Civ5).png
Normal file
After Width: | Height: | Size: 1.9 KiB |
@ -3014,318 +3014,409 @@ UnitPromotionIcons/Accuracy_I_(Civ5)
|
|||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Barrage_III_(Civ5)
|
UnitPromotionIcons/Air_Repair_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 182, 153
|
xy: 182, 153
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Barrage_II_(Civ5)
|
UnitPromotionIcons/Ambush_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 312, 95
|
xy: 312, 95
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Barrage_I_(Civ5)
|
UnitPromotionIcons/Ambush_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 1142, 1229
|
xy: 1142, 1229
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Blitz_(Civ5)
|
UnitPromotionIcons/Barrage_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 438, 447
|
xy: 438, 447
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Boarding_Party_III_(Civ5)
|
UnitPromotionIcons/Barrage_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 1164, 1229
|
xy: 1164, 1229
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Boarding_Party_II_(Civ5)
|
UnitPromotionIcons/Barrage_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 312, 73
|
xy: 312, 73
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Boarding_Party_I_(Civ5)
|
UnitPromotionIcons/Blitz_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2459, 422
|
xy: 2459, 422
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Bombardment_III_(Civ5)
|
UnitPromotionIcons/Boarding_Party_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 281, 1665
|
xy: 281, 1665
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Bombardment_II_(Civ5)
|
UnitPromotionIcons/Boarding_Party_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 379, 1281
|
xy: 379, 1281
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Bombardment_I_(Civ5)
|
UnitPromotionIcons/Boarding_Party_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2442, 55
|
xy: 2442, 55
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Charge_(Civ5)
|
UnitPromotionIcons/Bombardment_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2338, 3
|
xy: 2338, 3
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Coastal_Raider_III_(Civ5)
|
UnitPromotionIcons/Bombardment_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 458, 669
|
xy: 458, 669
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Coastal_Raider_II_(Civ5)
|
UnitPromotionIcons/Bombardment_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2440, 33
|
xy: 2440, 33
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Coastal_Raider_I_(Civ5)
|
UnitPromotionIcons/Charge_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 538, 5
|
xy: 538, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Cover_II_(Civ5)
|
UnitPromotionIcons/Coastal_Raider_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 1172, 1281
|
xy: 1172, 1281
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Cover_I_(Civ5)
|
UnitPromotionIcons/Coastal_Raider_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 312, 51
|
xy: 312, 51
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Drill_III_(Civ5)
|
UnitPromotionIcons/Coastal_Raider_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 334, 71
|
xy: 334, 71
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Drill_II_(Civ5)
|
UnitPromotionIcons/Cover_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 281, 1643
|
xy: 281, 1643
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Drill_I_(Civ5)
|
UnitPromotionIcons/Cover_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 379, 1259
|
xy: 379, 1259
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Formation_II_(Civ5)
|
UnitPromotionIcons/Drill_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2360, 3
|
xy: 2360, 3
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Formation_I_(Civ5)
|
UnitPromotionIcons/Drill_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 458, 647
|
xy: 458, 647
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Heal_Instantly_(Civ5)
|
UnitPromotionIcons/Drill_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 560, 5
|
xy: 560, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Indirect_Fire_(Civ5)
|
UnitPromotionIcons/Evasion_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 1172, 1259
|
xy: 1172, 1259
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Logistics_(Civ5)
|
UnitPromotionIcons/Formation_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 312, 29
|
xy: 312, 29
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/March_(Civ5)
|
UnitPromotionIcons/Formation_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 334, 49
|
xy: 334, 49
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Medic_(Civ5)
|
UnitPromotionIcons/Heal_Instantly_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 356, 71
|
xy: 356, 71
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Medic_II_(Civ5)
|
UnitPromotionIcons/Indirect_Fire_(Civ5)
|
||||||
rotate: false
|
|
||||||
xy: 356, 71
|
|
||||||
size: 20, 20
|
|
||||||
orig: 20, 20
|
|
||||||
offset: 0, 0
|
|
||||||
index: -1
|
|
||||||
UnitPromotionIcons/Mobility_(Civ5)
|
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 281, 1621
|
xy: 281, 1621
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Range_(Civ5)
|
UnitPromotionIcons/Interception_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 379, 1237
|
xy: 379, 1237
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Scouting_III_(Civ5)
|
UnitPromotionIcons/Interception_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2382, 3
|
xy: 2382, 3
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Scouting_II_(Civ5)
|
UnitPromotionIcons/Interception_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 582, 5
|
xy: 582, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Scouting_I_(Civ5)
|
UnitPromotionIcons/Logistics_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 356, 49
|
xy: 356, 49
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Sentry_(Civ5)
|
UnitPromotionIcons/March_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 378, 71
|
xy: 378, 71
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Shock_III_(Civ5)
|
UnitPromotionIcons/Medic_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 379, 1215
|
xy: 379, 1215
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Shock_II_(Civ5)
|
UnitPromotionIcons/Medic_II_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 379, 1215
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Mobility_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 2404, 3
|
xy: 2404, 3
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Shock_I_(Civ5)
|
UnitPromotionIcons/Operational_Range_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 604, 5
|
xy: 604, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Siege_(Civ5)
|
UnitPromotionIcons/Range_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 604, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Scouting_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 378, 49
|
xy: 378, 49
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Targeting_III_(Civ5)
|
UnitPromotionIcons/Scouting_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 400, 71
|
xy: 400, 71
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Targeting_II_(Civ5)
|
UnitPromotionIcons/Scouting_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 626, 5
|
xy: 626, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Targeting_I_(Civ5)
|
UnitPromotionIcons/Sentry_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 400, 49
|
xy: 400, 49
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Volley_(Civ5)
|
UnitPromotionIcons/Shock_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 648, 5
|
xy: 648, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Wolfpack_III_(Civ5)
|
UnitPromotionIcons/Shock_II_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 670, 5
|
xy: 670, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Wolfpack_II_(Civ5)
|
UnitPromotionIcons/Shock_I_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 692, 5
|
xy: 692, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Wolfpack_I_(Civ5)
|
UnitPromotionIcons/Siege_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 714, 5
|
xy: 714, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
UnitPromotionIcons/Woodsman_(Civ5)
|
UnitPromotionIcons/Siege_I_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 714, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Siege_III_(Civ5)
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 736, 5
|
xy: 736, 5
|
||||||
size: 20, 20
|
size: 20, 20
|
||||||
orig: 20, 20
|
orig: 20, 20
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
|
UnitPromotionIcons/Siege_II_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 758, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Sortie_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 780, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Targeting_III_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 802, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Targeting_II_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 824, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Targeting_I_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 846, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Targeting_I_(air)_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 846, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Volley_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 868, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Wolfpack_III_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 890, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Wolfpack_II_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 912, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Wolfpack_I_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 934, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
UnitPromotionIcons/Woodsman_(Civ5)
|
||||||
|
rotate: false
|
||||||
|
xy: 956, 5
|
||||||
|
size: 20, 20
|
||||||
|
orig: 20, 20
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
|
Before Width: | Height: | Size: 1000 KiB After Width: | Height: | Size: 1006 KiB |
@ -5,6 +5,8 @@
|
|||||||
effect:"Heal this Unit by 50 HP; Doing so will consume this opportunity to choose a Promotion",
|
effect:"Heal this Unit by 50 HP; Doing so will consume this opportunity to choose a Promotion",
|
||||||
unitTypes:["Melee","Mounted","Scout","Siege","Ranged","Armor","WaterMelee","WaterRanged","WaterSubmarine"]
|
unitTypes:["Melee","Mounted","Scout","Siege","Ranged","Armor","WaterMelee","WaterRanged","WaterSubmarine"]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Ranged+Siege
|
||||||
{
|
{
|
||||||
name:"Accuracy I",
|
name:"Accuracy I",
|
||||||
effect:"Bonus vs units in open terrain 15%",
|
effect:"Bonus vs units in open terrain 15%",
|
||||||
@ -40,7 +42,26 @@
|
|||||||
effect:"Bonus vs units in rough terrain 15%",
|
effect:"Bonus vs units in rough terrain 15%",
|
||||||
unitTypes:["Siege","Ranged"]
|
unitTypes:["Siege","Ranged"]
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
name:"Volley",
|
||||||
|
prerequisites:["Accuracy I","Barrage I"],
|
||||||
|
effect:"Bonus vs City 50%",
|
||||||
|
unitTypes:["Ranged","Siege"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Range",
|
||||||
|
prerequisites:["Accuracy III","Barrage III","Targeting II","Bombardment II", "Wolfpack II"],
|
||||||
|
effect:"+1 Range",
|
||||||
|
unitTypes:["Ranged","Siege","WaterRanged","WaterSubmarine"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Indirect Fire",
|
||||||
|
prerequisites:["Accuracy III","Barrage III"],
|
||||||
|
effect:"Ranged attacks may be performed over obstacles",
|
||||||
|
unitTypes:["Ranged","Siege"]
|
||||||
|
}
|
||||||
|
|
||||||
|
// Melee, Mounted+Armor
|
||||||
{
|
{
|
||||||
name:"Shock I",
|
name:"Shock I",
|
||||||
effect:"Bonus vs units in open terrain 15%",
|
effect:"Bonus vs units in open terrain 15%",
|
||||||
@ -76,94 +97,18 @@
|
|||||||
effect:"Bonus vs units in rough terrain 15%",
|
effect:"Bonus vs units in rough terrain 15%",
|
||||||
unitTypes:["Melee","Mounted","Armor"]
|
unitTypes:["Melee","Mounted","Armor"]
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
|
||||||
name:"Scouting I",
|
|
||||||
effect:"+1 Visibility Range",
|
|
||||||
unitTypes:["Scout"]
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name:"Scouting II",
|
|
||||||
prerequisites:["Scouting I"],
|
|
||||||
effect:"+1 Movement",
|
|
||||||
unitTypes:["Scout"]
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name:"Scouting III",
|
|
||||||
prerequisites:["Scouting II"],
|
|
||||||
effect:"+1 Visibility Range",
|
|
||||||
unitTypes:["Scout"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
name:"Cover I",
|
|
||||||
effect:"+25% Defence against ranged attacks",
|
|
||||||
unitTypes:["Melee","Ranged","Siege"]
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name:"Cover II",
|
|
||||||
prerequisites:["Cover I"],
|
|
||||||
effect:"+25% Defence against ranged attacks",
|
|
||||||
unitTypes:["Melee","Ranged","Siege"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
name:"March",
|
|
||||||
prerequisites:["Accuracy II","Barrage II","Shock III","Drill III"],
|
|
||||||
effect:"Unit will heal every turn, even if it performs an action",
|
|
||||||
unitTypes:["Melee","Ranged","Siege","Mounted"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
name:"Charge",
|
name:"Charge",
|
||||||
prerequisites:["Shock II","Drill II"],
|
prerequisites:["Shock II","Drill II"],
|
||||||
effect:"Bonus vs wounded units 33%",
|
effect:"Bonus vs wounded units 33%",
|
||||||
unitTypes:["Mounted","Armor"]
|
unitTypes:["Mounted","Armor"]
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
|
||||||
name:"Mobility",
|
|
||||||
prerequisites:["Shock II","Drill II","Targeting I",
|
|
||||||
"Bombardment I","Boarding Party I", "Coastal Raider I", "Wolfpack I"],
|
|
||||||
effect:"+1 Movement",
|
|
||||||
unitTypes:["Mounted","WaterMelee","WaterRanged","Armor","WaterSubmarine"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
name:"Siege",
|
name:"Siege",
|
||||||
prerequisites:["Shock II","Drill II"],
|
prerequisites:["Shock II","Drill II"],
|
||||||
effect:"Bonus vs City 50%",
|
effect:"Bonus vs City 50%",
|
||||||
unitTypes:["Melee"]
|
unitTypes:["Melee"]
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
|
||||||
name:"Volley",
|
|
||||||
prerequisites:["Accuracy I","Barrage I"],
|
|
||||||
effect:"Bonus vs City 50%",
|
|
||||||
unitTypes:["Ranged","Siege"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
name:"Sentry",
|
|
||||||
prerequisites:["Accuracy I","Barrage I","Shock II","Drill II","Bombardment I","Targeting I","Boarding Party I","Coastal Raider I"],
|
|
||||||
effect:"+1 Visibility Range",
|
|
||||||
unitTypes:["Melee","Mounted","WaterRanged","Armor","WaterMelee"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
name:"Range",
|
|
||||||
prerequisites:["Accuracy III","Barrage III","Targeting II","Bombardment II", "Wolfpack II"],
|
|
||||||
effect:"+1 Range",
|
|
||||||
unitTypes:["Ranged","Siege","WaterRanged","WaterSubmarine"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
name:"Indirect Fire",
|
|
||||||
prerequisites:["Accuracy III","Barrage III"],
|
|
||||||
effect:"Ranged attacks may be performed over obstacles",
|
|
||||||
unitTypes:["Ranged","Siege"]
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
name:"Formation I",
|
name:"Formation I",
|
||||||
prerequisites:["Shock II","Drill II"],
|
prerequisites:["Shock II","Drill II"],
|
||||||
@ -183,33 +128,46 @@
|
|||||||
effect:"1 additional attack per turn",
|
effect:"1 additional attack per turn",
|
||||||
unitTypes:["Melee","Mounted","Armor"]
|
unitTypes:["Melee","Mounted","Armor"]
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
name:"Logistics",
|
name:"Woodsman",
|
||||||
prerequisites:["Accuracy III","Barrage III","Targeting III", "Wolfpack III",
|
prerequisites:["Shock III","Drill III"],
|
||||||
"Bombardment III", "Coastal Raider III","Boarding Party III"],
|
effect:"Double movement rate through Forest and Jungle",
|
||||||
effect:"1 additional attack per turn",
|
unitTypes:["Melee"]
|
||||||
unitTypes:["Ranged","Siege","WaterMelee","WaterRanged","WaterSubmarine"]
|
}
|
||||||
|
{
|
||||||
|
name:"Medic",
|
||||||
|
prerequisites:["Shock I", "Drill I", "Scouting II"],
|
||||||
|
effect:"This unit and all others in adjacent tiles heal 5 additional HP per turn",
|
||||||
|
unitTypes:["Melee","Mounted","Scout"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Medic II",
|
||||||
|
prerequisites:["Medic"],
|
||||||
|
effect:"This unit and all others in adjacent tiles heal 5 additional HP. This unit heals 5 additional HP outside of friendly territory.",
|
||||||
|
unitTypes:["Melee","Mounted","Scout"]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Scout
|
||||||
{
|
{
|
||||||
name:"Bombardment I",
|
name:"Scouting I",
|
||||||
effect:"Bonus vs land units 33%",
|
effect:"+1 Visibility Range",
|
||||||
unitTypes:["WaterRanged"]
|
unitTypes:["Scout"]
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name:"Bombardment II",
|
name:"Scouting II",
|
||||||
prerequisites:["Bombardment I"],
|
prerequisites:["Scouting I"],
|
||||||
effect:"Bonus vs land units 33%",
|
effect:"+1 Movement",
|
||||||
unitTypes:["WaterRanged"]
|
unitTypes:["Scout"]
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name:"Bombardment III",
|
name:"Scouting III",
|
||||||
prerequisites:["Bombardment II"],
|
prerequisites:["Scouting II"],
|
||||||
effect:"Bonus vs land units 34%",
|
effect:"+1 Visibility Range",
|
||||||
unitTypes:["WaterRanged"]
|
unitTypes:["Scout"]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Water melee
|
||||||
{
|
{
|
||||||
name:"Boarding Party I",
|
name:"Boarding Party I",
|
||||||
effect:"Bonus vs water units 15%",
|
effect:"Bonus vs water units 15%",
|
||||||
@ -245,23 +203,8 @@
|
|||||||
effect:"Bonus vs City 15%",
|
effect:"Bonus vs City 15%",
|
||||||
unitTypes:["WaterMelee"]
|
unitTypes:["WaterMelee"]
|
||||||
}
|
}
|
||||||
{
|
|
||||||
name:"Targeting I",
|
// Submarine
|
||||||
effect:"Bonus vs City 15%",
|
|
||||||
unitTypes:["WaterRanged"]
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name:"Targeting II",
|
|
||||||
prerequisites:["Targeting I"],
|
|
||||||
effect:"Bonus vs water units 15%",
|
|
||||||
unitTypes:["WaterRanged"]
|
|
||||||
}
|
|
||||||
{
|
|
||||||
name:"Targeting III",
|
|
||||||
prerequisites:["Targeting II"],
|
|
||||||
effect:"Bonus vs water units 15%",
|
|
||||||
unitTypes:["WaterRanged"]
|
|
||||||
}
|
|
||||||
{
|
{
|
||||||
name:"Wolfpack I",
|
name:"Wolfpack I",
|
||||||
effect:"Bonus as Attacker [25]%",
|
effect:"Bonus as Attacker [25]%",
|
||||||
@ -279,22 +222,184 @@
|
|||||||
effect:"Bonus as Attacker [25]%",
|
effect:"Bonus as Attacker [25]%",
|
||||||
unitTypes:["WaterSubmarine"]
|
unitTypes:["WaterSubmarine"]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Bomber
|
||||||
{
|
{
|
||||||
name:"Woodsman",
|
name:"Siege I",
|
||||||
prerequisites:["Shock III","Drill III"],
|
effect:"Bonus vs City 33%",
|
||||||
effect:"Double movement rate through Forest and Jungle",
|
unitTypes:["Bomber"]
|
||||||
unitTypes:["Melee"]
|
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name:"Medic",
|
name:"Siege II",
|
||||||
prerequisites:["Shock I", "Drill I", "Scouting II"],
|
prerequisites:["Siege I"],
|
||||||
effect:"This unit and all others in adjacent tiles heal 5 additional HP per turn",
|
effect:"Bonus vs City 33%",
|
||||||
unitTypes:["Melee","Mounted","Scout"]
|
unitTypes:["Bomber"]
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
name:"Medic II",
|
name:"Siege III",
|
||||||
prerequisites:["Medic"],
|
prerequisites:["Siege II"],
|
||||||
effect:"This unit and all others in adjacent tiles heal 5 additional HP. This unit heals 5 additional HP outside of friendly territory.",
|
effect:"Bonus vs City 34%",
|
||||||
unitTypes:["Melee","Mounted","Scout"]
|
unitTypes:["Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Evasion",
|
||||||
|
prerequisites:["Siege II", "Bombardment II"]
|
||||||
|
effect:"Reduces damage taken from interception by 50%",
|
||||||
|
unitTypes:["Bomber"]
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fighter
|
||||||
|
{
|
||||||
|
name:"Interception I",
|
||||||
|
effect:"Bonus when intercepting [33]%",
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Interception II",
|
||||||
|
prerequisites:["Interception I"],
|
||||||
|
effect:"Bonus when intercepting [33]%",
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Interception III",
|
||||||
|
prerequisites:["Interception II"],
|
||||||
|
effect:"Bonus when intercepting [34]%",
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
{
|
||||||
|
name:"Dogfighting I",
|
||||||
|
effect:"Bonus when performing air sweep [33]%", // todo
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Dogfighting II",
|
||||||
|
prerequisites:["Dogfighting I"],
|
||||||
|
effect:"Bonus when performing air sweep [33]%",
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Dogfighting III",
|
||||||
|
prerequisites:["Dogfighting II"],
|
||||||
|
effect:"Bonus when performing air sweep [34]%",
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
{
|
||||||
|
name:"Sortie",
|
||||||
|
prerequisites:["Interception II", "Dogfighting II"]
|
||||||
|
effect:"1 extra Interception may be made per turn",
|
||||||
|
unitTypes:["Fighter"]
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
name:"Operational Range",
|
||||||
|
prerequisites:["Interception I", /*"Dogfighting I",*/ "Siege I", "Bombardment I"],
|
||||||
|
effect:"+2 Range",
|
||||||
|
unitTypes:["Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Air Repair",
|
||||||
|
prerequisites:["Interception II", /*"Dogfighting II",*/ "Siege II", "Bombardment II"],
|
||||||
|
effect:"Unit will heal every turn, even if it performs an action",
|
||||||
|
unitTypes:["Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
|
||||||
|
// Mixed
|
||||||
|
{
|
||||||
|
name:"Cover I",
|
||||||
|
effect:"+25% Defence against ranged attacks",
|
||||||
|
unitTypes:["Melee","Ranged","Siege"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Cover II",
|
||||||
|
prerequisites:["Cover I"],
|
||||||
|
effect:"+25% Defence against ranged attacks",
|
||||||
|
unitTypes:["Melee","Ranged","Siege"]
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
name:"March",
|
||||||
|
prerequisites:["Accuracy II","Barrage II","Shock III","Drill III"],
|
||||||
|
effect:"Unit will heal every turn, even if it performs an action",
|
||||||
|
unitTypes:["Melee","Ranged","Siege","Mounted"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Mobility",
|
||||||
|
prerequisites:["Shock II","Drill II","Targeting I",
|
||||||
|
"Bombardment I","Boarding Party I", "Coastal Raider I", "Wolfpack I"],
|
||||||
|
effect:"+1 Movement",
|
||||||
|
unitTypes:["Mounted","WaterMelee","WaterRanged","Armor","WaterSubmarine"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Sentry",
|
||||||
|
prerequisites:["Accuracy I","Barrage I","Shock II","Drill II","Bombardment I","Targeting I","Boarding Party I","Coastal Raider I"],
|
||||||
|
effect:"+1 Visibility Range",
|
||||||
|
unitTypes:["Melee","Mounted","WaterRanged","Armor","WaterMelee"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Logistics",
|
||||||
|
prerequisites:["Accuracy III","Barrage III","Targeting III", "Wolfpack III",
|
||||||
|
"Bombardment III", "Coastal Raider III","Boarding Party III","Siege III","Bombardment III"],
|
||||||
|
effect:"1 additional attack per turn",
|
||||||
|
unitTypes:["Ranged","Siege","WaterMelee","WaterRanged","WaterSubmarine","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
name:"Ambush I",
|
||||||
|
effect:"Bonus vs Armor 25%",
|
||||||
|
unitTypes:["Melee","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Ambush II",
|
||||||
|
prerequisites:["Ambush I"],
|
||||||
|
effect:"Bonus vs Armor 25%",
|
||||||
|
unitTypes:["Melee","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Water ranged and air units
|
||||||
|
{
|
||||||
|
name:"Bombardment I",
|
||||||
|
effect:"Bonus vs land units 33%",
|
||||||
|
unitTypes:["WaterRanged","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Bombardment II",
|
||||||
|
prerequisites:["Bombardment I"],
|
||||||
|
effect:"Bonus vs land units 33%",
|
||||||
|
unitTypes:["WaterRanged","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Bombardment III",
|
||||||
|
prerequisites:["Bombardment II"],
|
||||||
|
effect:"Bonus vs land units 34%",
|
||||||
|
unitTypes:["WaterRanged","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
|
||||||
|
// Targeting I has different requirements for air and waterranged units, this was the cleanest way to do so
|
||||||
|
{
|
||||||
|
name:"Targeting I",
|
||||||
|
effect:"Bonus vs water units 15%",
|
||||||
|
unitTypes:["WaterRanged"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Targeting I (air)",
|
||||||
|
prerequisites:["Interception I","Dogfighting I", "Siege I","Bombardment I"]
|
||||||
|
effect:"Bonus vs water units 15%",
|
||||||
|
unitTypes:["Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Targeting II",
|
||||||
|
prerequisites:["Targeting I","Targeting I (air)"],
|
||||||
|
effect:"Bonus vs water units 15%",
|
||||||
|
unitTypes:["WaterRanged","Fighter","Bomber"]
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name:"Targeting III",
|
||||||
|
prerequisites:["Targeting II"],
|
||||||
|
effect:"Bonus vs water units 15%",
|
||||||
|
unitTypes:["WaterRanged"]
|
||||||
}
|
}
|
||||||
]
|
]
|
@ -295,25 +295,30 @@ class Battle(val gameInfo:GameInfo) {
|
|||||||
|
|
||||||
fun intercept(attacker:MapUnitCombatant, defender: ICombatant){
|
fun intercept(attacker:MapUnitCombatant, defender: ICombatant){
|
||||||
val attackedTile = defender.getTile()
|
val attackedTile = defender.getTile()
|
||||||
for(unit in defender.getCivInfo().getCivUnits().filter { it.canIntercept(attackedTile) }){
|
for(interceptor in defender.getCivInfo().getCivUnits().filter { it.canIntercept(attackedTile) }){
|
||||||
if(Random().nextFloat() > 100f/unit.interceptChance()) continue
|
if(Random().nextFloat() > 100f/interceptor.interceptChance()) continue
|
||||||
val damage = BattleDamage().calculateDamageToDefender(MapUnitCombatant(unit),attacker)
|
|
||||||
|
var damage = BattleDamage().calculateDamageToDefender(MapUnitCombatant(interceptor),attacker)
|
||||||
|
damage += damage*interceptor.interceptDamagePercentBonus()/100
|
||||||
|
if(attacker.unit.hasUnique("Reduces damage taken from interception by 50%")) damage/=2
|
||||||
|
|
||||||
attacker.takeDamage(damage)
|
attacker.takeDamage(damage)
|
||||||
|
interceptor.attacksThisTurn++
|
||||||
|
|
||||||
val attackerName = attacker.getName()
|
val attackerName = attacker.getName()
|
||||||
val interceptorName = unit.name
|
val interceptorName = interceptor.name
|
||||||
|
|
||||||
if(attacker.isDefeated()){
|
if(attacker.isDefeated()){
|
||||||
attacker.getCivInfo().addNotification("Our [$attackerName] was destroyed by an intercepting [$interceptorName]",
|
attacker.getCivInfo().addNotification("Our [$attackerName] was destroyed by an intercepting [$interceptorName]",
|
||||||
Color.RED)
|
Color.RED)
|
||||||
defender.getCivInfo().addNotification("Our [$interceptorName] intercepted and destroyed an enemy [$attackerName]",
|
defender.getCivInfo().addNotification("Our [$interceptorName] intercepted and destroyed an enemy [$attackerName]",
|
||||||
unit.currentTile.position, Color.RED)
|
interceptor.currentTile.position, Color.RED)
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
attacker.getCivInfo().addNotification("Our [$attackerName] was attacked by an intercepting [$interceptorName]",
|
attacker.getCivInfo().addNotification("Our [$attackerName] was attacked by an intercepting [$interceptorName]",
|
||||||
Color.RED)
|
Color.RED)
|
||||||
defender.getCivInfo().addNotification("Our [$interceptorName] intercepted and attacked an enemy [$attackerName]",
|
defender.getCivInfo().addNotification("Our [$interceptorName] intercepted and attacked an enemy [$attackerName]",
|
||||||
unit.currentTile.position, Color.RED)
|
interceptor.currentTile.position, Color.RED)
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
@ -180,6 +180,7 @@ class MapUnit {
|
|||||||
if(type.isMelee()) return 1
|
if(type.isMelee()) return 1
|
||||||
var range = baseUnit().range
|
var range = baseUnit().range
|
||||||
if(hasUnique("+1 Range")) range++
|
if(hasUnique("+1 Range")) range++
|
||||||
|
if(hasUnique("+2 Range")) range+=2
|
||||||
return range
|
return range
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -475,7 +476,8 @@ class MapUnit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun canIntercept(attackedTile: TileInfo): Boolean {
|
fun canIntercept(attackedTile: TileInfo): Boolean {
|
||||||
return interceptChance()!=0 && attacksThisTurn==0
|
return interceptChance()!=0
|
||||||
|
&& (attacksThisTurn==0 || hasUnique("1 extra Interception may be made per turn") && attacksThisTurn<2)
|
||||||
&& currentTile.arialDistanceTo(attackedTile) <= getRange()
|
&& currentTile.arialDistanceTo(attackedTile) <= getRange()
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -483,8 +485,17 @@ class MapUnit {
|
|||||||
val interceptUnique = getUniques()
|
val interceptUnique = getUniques()
|
||||||
.firstOrNull { it.endsWith(" chance to intercept air attacks") }
|
.firstOrNull { it.endsWith(" chance to intercept air attacks") }
|
||||||
if(interceptUnique==null) return 0
|
if(interceptUnique==null) return 0
|
||||||
val percent = Regex("\\d+").find(interceptUnique)!!.value
|
val percent = Regex("\\d+").find(interceptUnique)!!.value.toInt()
|
||||||
return percent.toInt()
|
return percent
|
||||||
|
}
|
||||||
|
|
||||||
|
fun interceptDamagePercentBonus():Int{
|
||||||
|
var sum=0
|
||||||
|
for(unique in getUniques().filter { it.startsWith("Bonus when intercepting") }){
|
||||||
|
val percent = Regex("\\d+").find(unique)!!.value.toInt()
|
||||||
|
sum += percent
|
||||||
|
}
|
||||||
|
return sum
|
||||||
}
|
}
|
||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
|