diff --git a/android/Images/TileSets/FantasyHex/Tiles/Customs house.png b/android/Images/TileSets/FantasyHex/Tiles/Customs house.png index a611dbd79f..934aece48c 100644 Binary files a/android/Images/TileSets/FantasyHex/Tiles/Customs house.png and b/android/Images/TileSets/FantasyHex/Tiles/Customs house.png differ diff --git a/android/Images/TileSets/FantasyHex/Tiles/Pasture2.png b/android/Images/TileSets/FantasyHex/Tiles/Pasture2.png new file mode 100644 index 0000000000..3e08cc7d26 Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Tiles/Pasture2.png differ diff --git a/android/Images/TileSets/FantasyHex/Units/Cruiser.png b/android/Images/TileSets/FantasyHex/Units/Cruiser.png new file mode 100644 index 0000000000..c55b924aa7 Binary files /dev/null and b/android/Images/TileSets/FantasyHex/Units/Cruiser.png differ diff --git a/android/assets/game.atlas b/android/assets/game.atlas index 21b49d7555..c91aa70b43 100644 --- a/android/assets/game.atlas +++ b/android/assets/game.atlas @@ -2567,7 +2567,7 @@ OtherIcons/TableBackground index: -1 OtherIcons/whiteDot rotate: false - xy: 1642, 347 + xy: 818, 6 size: 1, 1 orig: 1, 1 offset: 0, 0 @@ -3022,126 +3022,126 @@ TileSets/FantasyHex/Tiles/Coast index: -1 TileSets/FantasyHex/Tiles/Customs house rotate: false - xy: 1778, 378 - size: 32, 28 - orig: 32, 28 + xy: 1812, 371 + size: 32, 35 + orig: 32, 35 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert rotate: false - xy: 1812, 378 + xy: 1846, 378 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+City rotate: false - xy: 1846, 373 + xy: 1880, 373 size: 32, 33 orig: 32, 33 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Fallout rotate: false - xy: 1880, 378 + xy: 1914, 378 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Farm rotate: false - xy: 1914, 378 + xy: 1948, 378 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Flood plains rotate: false - xy: 1948, 378 + xy: 920, 16 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Flood plains+Farm rotate: false - xy: 920, 16 + xy: 954, 16 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Flood plains+Trading post rotate: false - xy: 954, 16 + xy: 988, 16 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Oasis rotate: false - xy: 988, 16 + xy: 1982, 378 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Desert+Trading post rotate: false - xy: 1982, 378 + xy: 1078, 140 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Fishing Boats rotate: false - xy: 1078, 140 + xy: 1130, 192 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Fort rotate: false - xy: 1234, 343 + xy: 1268, 343 size: 32, 33 orig: 32, 33 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland rotate: false - xy: 1404, 348 + xy: 1438, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland+Fallout rotate: false - xy: 1438, 348 + xy: 1472, 343 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland+Farm rotate: false - xy: 1472, 343 + xy: 1506, 341 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland+Forest rotate: false - xy: 1506, 338 + xy: 1540, 345 size: 32, 31 orig: 32, 31 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland+Forest+Camp rotate: false - xy: 1540, 345 + xy: 1574, 345 size: 32, 31 orig: 32, 31 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland+Forest+Lumber mill rotate: false - xy: 1574, 345 + xy: 1608, 345 size: 32, 31 orig: 32, 31 offset: 0, 0 @@ -3169,343 +3169,350 @@ TileSets/FantasyHex/Tiles/Grassland+Jungle+Trading post index: -1 TileSets/FantasyHex/Tiles/Grassland+Marsh rotate: false - xy: 1608, 347 + xy: 1642, 349 size: 32, 29 orig: 32, 29 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Grassland+Trading post rotate: false - xy: 1642, 350 + xy: 1676, 350 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill rotate: false - xy: 1880, 344 + xy: 1914, 344 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Camp rotate: false - xy: 1914, 344 + xy: 1948, 344 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Customs house rotate: false - xy: 1948, 344 + xy: 1982, 344 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Fallout rotate: false - xy: 1982, 344 + xy: 1164, 218 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Forest rotate: false - xy: 1164, 205 + xy: 1060, 93 size: 32, 45 orig: 32, 45 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Forest+Camp rotate: false - xy: 1060, 93 + xy: 1060, 46 size: 32, 45 orig: 32, 45 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Forest+Lumber mill rotate: false - xy: 1060, 46 + xy: 1094, 93 size: 32, 45 orig: 32, 45 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Mine rotate: false - xy: 1026, 26 + xy: 1094, 59 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Quarry rotate: false - xy: 1060, 12 + xy: 1026, 26 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Hill+Terrace Farm rotate: false - xy: 1094, 106 + xy: 1164, 184 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Lakes rotate: false - xy: 1250, 283 + xy: 1948, 314 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Landmark rotate: false - xy: 1318, 320 + xy: 1250, 313 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Manufactory rotate: false - xy: 1352, 283 + xy: 1318, 285 size: 32, 35 orig: 32, 35 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Mine rotate: false - xy: 1420, 288 + xy: 1352, 260 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Moai rotate: false - xy: 1386, 260 + xy: 1420, 318 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Mountain rotate: false - xy: 1454, 305 + xy: 1420, 280 size: 32, 36 orig: 32, 36 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Ocean rotate: false - xy: 1488, 250 + xy: 1846, 290 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Oil well rotate: false - xy: 1522, 308 + xy: 1880, 285 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Pasture rotate: false - xy: 1556, 315 + xy: 1982, 284 + size: 32, 28 + orig: 32, 28 + offset: 0, 0 + index: -1 +TileSets/FantasyHex/Tiles/Pasture2 + rotate: false + xy: 1454, 313 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains rotate: false - xy: 1590, 315 + xy: 1488, 311 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+City rotate: false - xy: 1590, 278 + xy: 1488, 274 size: 32, 35 orig: 32, 35 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Fallout rotate: false - xy: 1590, 248 + xy: 1488, 244 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Farm rotate: false - xy: 1624, 317 + xy: 1522, 311 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Forest rotate: false - xy: 1624, 282 + xy: 1522, 276 size: 32, 33 orig: 32, 33 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Forest+Camp rotate: false - xy: 1624, 247 + xy: 1522, 241 size: 32, 33 orig: 32, 33 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Forest+Lumber mill rotate: false - xy: 1658, 315 + xy: 1556, 310 size: 32, 33 orig: 32, 33 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Jungle rotate: false - xy: 1658, 278 + xy: 1556, 273 size: 32, 35 orig: 32, 35 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Jungle+Trading post rotate: false - xy: 1658, 241 + xy: 1590, 308 size: 32, 35 orig: 32, 35 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plains+Trading post rotate: false - xy: 1556, 225 + xy: 1556, 243 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Plantation rotate: false - xy: 1590, 218 + xy: 1590, 278 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Polder rotate: false - xy: 1624, 217 + xy: 1590, 248 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Quarry rotate: false - xy: 1658, 211 + xy: 1624, 315 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/River-Bottom rotate: false - xy: 1692, 286 + xy: 1624, 253 size: 32, 30 orig: 32, 30 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/River-BottomLeft rotate: false - xy: 1726, 316 + xy: 1454, 221 size: 32, 30 orig: 32, 30 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/River-BottomRight rotate: false - xy: 1692, 254 + xy: 1488, 212 size: 32, 30 orig: 32, 30 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/River-Top rotate: false - xy: 1760, 316 + xy: 1522, 209 size: 32, 30 orig: 32, 30 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/River-TopLeft rotate: false - xy: 1726, 284 + xy: 1556, 211 size: 32, 30 orig: 32, 30 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/River-TopRight rotate: false - xy: 1692, 222 + xy: 1590, 216 size: 32, 30 orig: 32, 30 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra rotate: false - xy: 1862, 313 + xy: 1658, 203 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+Camp rotate: false - xy: 1862, 283 + xy: 1624, 193 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+City rotate: false - xy: 1862, 246 + xy: 1590, 179 size: 32, 35 orig: 32, 35 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+Fallout rotate: false - xy: 1896, 314 + xy: 1556, 181 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+Forest rotate: false - xy: 1896, 280 + xy: 1692, 194 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+Forest+Camp rotate: false - xy: 1930, 310 + xy: 1726, 198 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+Forest+Lumber mill rotate: false - xy: 1896, 246 + xy: 1658, 169 size: 32, 32 orig: 32, 32 offset: 0, 0 index: -1 TileSets/FantasyHex/Tiles/Tundra+Trading post rotate: false - xy: 1930, 280 + xy: 1624, 163 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/TopBorder rotate: false - xy: 1828, 283 + xy: 1726, 260 size: 32, 28 orig: 32, 28 offset: 0, 0 @@ -3664,128 +3671,135 @@ TileSets/FantasyHex/Units/Crossbowman orig: 32, 28 offset: 0, 0 index: -1 +TileSets/FantasyHex/Units/Cruiser + rotate: false + xy: 1778, 380 + size: 32, 26 + orig: 32, 26 + offset: 0, 0 + index: -1 TileSets/FantasyHex/Units/Foreign Legion rotate: false - xy: 1130, 192 + xy: 1234, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Frigate rotate: false - xy: 1268, 350 + xy: 1302, 350 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Galleass rotate: false - xy: 1302, 350 + xy: 1336, 350 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Galley rotate: false - xy: 1336, 350 + xy: 1370, 350 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Gatling Gun rotate: false - xy: 1370, 348 + xy: 1404, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Machine Gun rotate: false - xy: 1370, 348 + xy: 1404, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Great Artist rotate: false - xy: 1676, 350 + xy: 1710, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Great Engineer rotate: false - xy: 1710, 348 + xy: 1744, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Worker rotate: false - xy: 1710, 348 + xy: 1744, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Great General rotate: false - xy: 1744, 348 + xy: 1778, 350 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Great Merchant rotate: false - xy: 1778, 348 + xy: 1812, 341 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Settler rotate: false - xy: 1778, 348 + xy: 1812, 341 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Great Scientist rotate: false - xy: 1812, 348 + xy: 1846, 348 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Great War Infantry rotate: false - xy: 1846, 343 + xy: 1880, 343 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Infantry rotate: false - xy: 1846, 343 + xy: 1880, 343 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Hoplite rotate: false - xy: 1094, 76 + xy: 1060, 16 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Horseman rotate: false - xy: 1094, 46 + xy: 1094, 29 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Hwach'a rotate: false - xy: 1094, 16 + xy: 1216, 318 size: 32, 28 orig: 32, 28 offset: 0, 0 @@ -3799,315 +3813,315 @@ TileSets/FantasyHex/Units/Ironclad index: -1 TileSets/FantasyHex/Units/Jaguar rotate: false - xy: 1164, 175 + xy: 1216, 288 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Janissary rotate: false - xy: 1216, 313 + xy: 1216, 258 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Keshik rotate: false - xy: 1216, 285 + xy: 1846, 320 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Khan rotate: false - xy: 1216, 257 + xy: 1880, 315 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Knight rotate: false - xy: 1250, 313 + xy: 1914, 314 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Lancer rotate: false - xy: 1250, 253 + xy: 1982, 314 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/LandUnit rotate: false - xy: 1284, 320 + xy: 1112, 162 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Warrior rotate: false - xy: 1284, 320 + xy: 1112, 162 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Landship rotate: false - xy: 1284, 290 + xy: 1250, 283 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Landsknecht rotate: false - xy: 1284, 260 + xy: 1250, 253 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Legion rotate: false - xy: 1318, 290 + xy: 1284, 313 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Longbowman rotate: false - xy: 1318, 260 + xy: 1284, 283 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Longswordsman rotate: false - xy: 1112, 162 + xy: 1284, 253 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Mandekalu Cavalry rotate: false - xy: 1352, 320 + xy: 1318, 322 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Maori Warrior rotate: false - xy: 1386, 318 + xy: 1352, 320 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Marine rotate: false - xy: 1420, 318 + xy: 1352, 290 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Mechanized Infantry rotate: false - xy: 1386, 290 + xy: 1318, 257 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Minuteman rotate: false - xy: 1352, 253 + xy: 1386, 318 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Mohawk Warrior rotate: false - xy: 1420, 258 + xy: 1386, 288 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Musketeer rotate: false - xy: 1454, 275 + xy: 1386, 258 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Musketman rotate: false - xy: 1454, 245 + xy: 1420, 250 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Naresuan's Elephant rotate: false - xy: 1488, 310 + xy: 1778, 322 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Norwegian Ski Infantry rotate: false - xy: 1488, 280 + xy: 1812, 311 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Panzer rotate: false - xy: 1522, 280 + xy: 1914, 286 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Paratrooper rotate: false - xy: 1522, 250 + xy: 1948, 284 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Persian Immortal rotate: false - xy: 1556, 285 + xy: 1454, 283 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Pikeman rotate: false - xy: 1556, 255 + xy: 1454, 253 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Rifleman rotate: false - xy: 1692, 318 + xy: 1624, 285 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Rocket Artillery rotate: false - xy: 1794, 318 + xy: 1624, 223 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Scout rotate: false - xy: 1726, 254 + xy: 1658, 319 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Ship of the Line rotate: false - xy: 1760, 288 + xy: 1658, 291 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Sipahi rotate: false - xy: 1794, 290 + xy: 1658, 263 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Slinger rotate: false - xy: 1726, 224 + xy: 1658, 233 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Spearman rotate: false - xy: 1760, 258 + xy: 1692, 318 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Submarine rotate: false - xy: 1794, 262 + xy: 1726, 320 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Swordsman rotate: false - xy: 1760, 228 + xy: 1692, 288 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Tank rotate: false - xy: 1794, 232 + xy: 1726, 290 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Tercio rotate: false - xy: 1828, 313 + xy: 1692, 258 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Trebuchet rotate: false - xy: 1828, 253 + xy: 1692, 228 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Trireme rotate: false - xy: 1828, 225 + xy: 1726, 232 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Turtle Ship rotate: false - xy: 1964, 316 + xy: 1692, 166 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/War Chariot rotate: false - xy: 1930, 250 + xy: 1726, 168 size: 32, 28 orig: 32, 28 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/War Elephant rotate: false - xy: 1964, 288 + xy: 1760, 294 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/WaterUnit rotate: false - xy: 1964, 260 + xy: 1760, 266 size: 32, 26 orig: 32, 26 offset: 0, 0 index: -1 TileSets/FantasyHex/Units/Work Boats rotate: false - xy: 1862, 218 + xy: 1760, 238 size: 32, 26 orig: 32, 26 offset: 0, 0 diff --git a/android/assets/game2.png b/android/assets/game2.png index 80043c28b8..5e50578dfd 100644 Binary files a/android/assets/game2.png and b/android/assets/game2.png differ diff --git a/core/src/com/unciv/models/gamebasics/tech/Technology.kt b/core/src/com/unciv/models/gamebasics/tech/Technology.kt index 625c002c5d..62e96b225f 100644 --- a/core/src/com/unciv/models/gamebasics/tech/Technology.kt +++ b/core/src/com/unciv/models/gamebasics/tech/Technology.kt @@ -74,7 +74,7 @@ class Technology { val replacedBuildings = enabledBuildings.mapNotNull { it.replaces } enabledBuildings = enabledBuildings.filter { it.name !in replacedBuildings } - if (!civInfo.gameInfo.gameParameters.nuclearWeaponEnabled) + if (!UnCivGame.Current.settings.nuclearWeaponEnabled) enabledBuildings=enabledBuildings.filterNot { it.name=="Manhattan Project" } return enabledBuildings @@ -88,7 +88,7 @@ class Technology { val replacedUnits = enabledUnits.mapNotNull { it.replaces } enabledUnits = enabledUnits.filter { it.name !in replacedUnits } - if (!civInfo.gameInfo.gameParameters.nuclearWeaponEnabled) + if (!UnCivGame.Current.settings.nuclearWeaponEnabled) enabledUnits=enabledUnits.filterNot { it.uniques.contains("Requires Manhattan Project") } diff --git a/core/src/com/unciv/models/gamebasics/unit/BaseUnit.kt b/core/src/com/unciv/models/gamebasics/unit/BaseUnit.kt index e06d690c9c..0dec49aeff 100644 --- a/core/src/com/unciv/models/gamebasics/unit/BaseUnit.kt +++ b/core/src/com/unciv/models/gamebasics/unit/BaseUnit.kt @@ -1,6 +1,7 @@ package com.unciv.models.gamebasics.unit import com.unciv.Constants +import com.unciv.UnCivGame import com.unciv.logic.city.CityConstructions import com.unciv.logic.city.IConstruction import com.unciv.logic.civilization.CivilizationInfo @@ -131,7 +132,7 @@ class BaseUnit : INamed, IConstruction { if (obsoleteTech!=null && civInfo.tech.isResearched(obsoleteTech!!)) return "Obsolete by $obsoleteTech" if (uniqueTo!=null && uniqueTo!=civInfo.civName) return "Unique to $uniqueTo" if (GameBasics.Units.values.any { it.uniqueTo==civInfo.civName && it.replaces==name }) return "Our unique unit replaces this" - if (!civInfo.gameInfo.gameParameters.nuclearWeaponEnabled + if (!UnCivGame.Current.settings.nuclearWeaponEnabled && (name == "Manhattan Project" || uniques.contains("Requires Manhattan Project"))) return "Disabled by setting" if (uniques.contains("Requires Manhattan Project") && !civInfo.containsBuildingUnique("Enables nuclear weapon")) return "Requires Manhattan Project" diff --git a/core/src/com/unciv/models/metadata/GameParameters.kt b/core/src/com/unciv/models/metadata/GameParameters.kt index f814f60f29..04e407ba24 100644 --- a/core/src/com/unciv/models/metadata/GameParameters.kt +++ b/core/src/com/unciv/models/metadata/GameParameters.kt @@ -17,7 +17,6 @@ class GameParameters { // Default values are the default new game var mapType = MapType.pangaea var noBarbarians = false var oneCityChallenge = false - var nuclearWeaponEnabled = false var noRuins = false; var mapFileName: String? = null var victoryTypes: ArrayList = VictoryType.values().toCollection(ArrayList()) // By default, all victory types diff --git a/core/src/com/unciv/models/metadata/GameSettings.kt b/core/src/com/unciv/models/metadata/GameSettings.kt index 86f06105c6..cec994c87b 100644 --- a/core/src/com/unciv/models/metadata/GameSettings.kt +++ b/core/src/com/unciv/models/metadata/GameSettings.kt @@ -21,6 +21,7 @@ class GameSettings { var showMinimap: Boolean = true var showPixelUnits: Boolean = false var showPixelImprovements: Boolean = false + var nuclearWeaponEnabled = false var userId = "" diff --git a/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt b/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt index 452cdd68d9..46dbeac251 100644 --- a/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt +++ b/core/src/com/unciv/ui/newgamescreen/NewGameScreenOptionsTable.kt @@ -28,9 +28,7 @@ class NewGameScreenOptionsTable(val newGameParameters: GameParameters, val onMul addVictoryTypeCheckboxes() addBarbariansCheckbox() addOneCityChallengeCheckbox() - addNuclearWeaponCheckbox() addNoRuinsCheckbox() - addIsOnlineMultiplayerCheckbox() pack() @@ -58,18 +56,6 @@ class NewGameScreenOptionsTable(val newGameParameters: GameParameters, val onMul add(oneCityChallengeCheckbox).colspan(2).row() } - private fun addNuclearWeaponCheckbox() { - add("HIGHLY EXPERIMENTAL - YOU HAVE BEEN WARNED!".tr()).colspan(2).row() - val nuclearWeaponCheckbox = CheckBox("Enable nuclear weapon".tr(), CameraStageBaseScreen.skin) - nuclearWeaponCheckbox.isChecked = newGameParameters.nuclearWeaponEnabled - nuclearWeaponCheckbox.addListener(object : ChangeListener() { - override fun changed(event: ChangeEvent?, actor: Actor?) { - newGameParameters.nuclearWeaponEnabled = nuclearWeaponCheckbox.isChecked - } - }) - add(nuclearWeaponCheckbox).colspan(2).row() - } - private fun addNoRuinsCheckbox() { val noRuinsCheckbox = CheckBox("No ancient ruins".tr(), CameraStageBaseScreen.skin) noRuinsCheckbox.isChecked = newGameParameters.noRuins diff --git a/core/src/com/unciv/ui/pickerscreens/TechButton.kt b/core/src/com/unciv/ui/pickerscreens/TechButton.kt index df8f3bdb80..7ce120f302 100644 --- a/core/src/com/unciv/ui/pickerscreens/TechButton.kt +++ b/core/src/com/unciv/ui/pickerscreens/TechButton.kt @@ -29,8 +29,8 @@ class TechButton(techName:String, val techManager: TechManager, isWorldScreen: B add(ImageGetter.getProgressBarVertical(2f, 50f, percentComplete, Color.BLUE, Color.WHITE)) } else add().width(2f) - if (isWorldScreen) rightSide.add(text).row() - else rightSide.add(text).height(25f).row() + if (isWorldScreen) rightSide.add(text).padBottom(5f).row() + else rightSide.add(text).height(25f).padBottom(5f).row() addTechEnabledIcons(techName, isWorldScreen, rightSide) diff --git a/core/src/com/unciv/ui/worldscreen/optionstable/WorldScreenOptionsTable.kt b/core/src/com/unciv/ui/worldscreen/optionstable/WorldScreenOptionsTable.kt index a63d1ec507..f4be8cc583 100644 --- a/core/src/com/unciv/ui/worldscreen/optionstable/WorldScreenOptionsTable.kt +++ b/core/src/com/unciv/ui/worldscreen/optionstable/WorldScreenOptionsTable.kt @@ -104,6 +104,12 @@ class WorldScreenOptionsTable(val worldScreen:WorldScreen) : PopupTable(worldScr update() } + innerTable.add("Enable nuclear weapons".toLabel()) + innerTable.addButton(if (settings.nuclearWeaponEnabled) "Yes".tr() else "No".tr()) { + settings.nuclearWeaponEnabled = !settings.nuclearWeaponEnabled + update() + } + addLanguageSelectBox(innerTable) addResolutionSelectBox(innerTable)