Merge remote-tracking branch 'upstream/master'
update
Before Width: | Height: | Size: 862 B After Width: | Height: | Size: 1.2 KiB |
BIN
android/Images/UnitPromotionIcons/Air Repair.png
Normal file
After Width: | Height: | Size: 506 B |
Before Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Ambush.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Boarding Party.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.7 KiB |
BIN
android/Images/UnitPromotionIcons/Charge.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Evasion.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Heal Instantly.png
Normal file
After Width: | Height: | Size: 993 B |
Before Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Indirect Fire.png
Normal file
After Width: | Height: | Size: 1013 B |
Before Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Interception.png
Normal file
After Width: | Height: | Size: 934 B |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Logistics.png
Normal file
After Width: | Height: | Size: 759 B |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 761 B After Width: | Height: | Size: 1.6 KiB |
BIN
android/Images/UnitPromotionIcons/Operational Range.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Range.png
Normal file
After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Scouting.png
Normal file
After Width: | Height: | Size: 862 B |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Sentry.png
Normal file
After Width: | Height: | Size: 862 B |
Before Width: | Height: | Size: 1.9 KiB |
BIN
android/Images/UnitPromotionIcons/Sortie.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 1.8 KiB |
BIN
android/Images/UnitPromotionIcons/Targeting I (air).png
Normal file
After Width: | Height: | Size: 2.1 KiB |
BIN
android/Images/UnitPromotionIcons/Targeting.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 1.9 KiB |
Before Width: | Height: | Size: 500 B After Width: | Height: | Size: 860 B |
BIN
android/Images/UnitPromotionIcons/Wolfpack.png
Normal file
After Width: | Height: | Size: 651 B |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.6 KiB |
BIN
android/Images/UnitPromotionIcons/Woodsman.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1007 KiB |
@ -41,8 +41,15 @@ class GameStarter{
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
val cityStatesWithStartingLocations =
|
||||||
|
gameInfo.tileMap.values.filter { it.improvement!=null && it.improvement!!.startsWith("StartingLocation ") }
|
||||||
|
.map { it.improvement!!.replace("StartingLocation ","") }
|
||||||
|
|
||||||
val availableCityStatesNames = Stack<String>()
|
val availableCityStatesNames = Stack<String>()
|
||||||
availableCityStatesNames.addAll(GameBasics.Nations.filter { it.value.isCityState() }.keys.shuffled())
|
// since we shuffle and then order by, we end up with all the city states with starting locations first in a random order,
|
||||||
|
// and then all the other city states in a random order! Because the sortedBy function is stable!
|
||||||
|
availableCityStatesNames.addAll(GameBasics.Nations.filter { it.value.isCityState() }.keys
|
||||||
|
.shuffled().sortedByDescending { it in cityStatesWithStartingLocations })
|
||||||
|
|
||||||
for (cityStateName in availableCityStatesNames.take(newGameParameters.numberOfCityStates)) {
|
for (cityStateName in availableCityStatesNames.take(newGameParameters.numberOfCityStates)) {
|
||||||
val civ = CivilizationInfo(cityStateName)
|
val civ = CivilizationInfo(cityStateName)
|
||||||
|
@ -170,11 +170,6 @@ class DiplomacyManager() {
|
|||||||
if(offer.type== TradeType.Strategic_Resource || offer.type== TradeType.Luxury_Resource)
|
if(offer.type== TradeType.Strategic_Resource || offer.type== TradeType.Luxury_Resource)
|
||||||
counter.add(GameBasics.TileResources[offer.name]!!,offer.amount,"Trade")
|
counter.add(GameBasics.TileResources[offer.name]!!,offer.amount,"Trade")
|
||||||
}
|
}
|
||||||
for(tradeRequest in otherCiv().tradeRequests.filter { it.requestingCiv==civInfo.civName }){
|
|
||||||
for(offer in tradeRequest.trade.theirOffers) // "theirOffers" in the other civ's trade request, is actually out civ's offers
|
|
||||||
if(offer.type== TradeType.Strategic_Resource || offer.type== TradeType.Luxury_Resource)
|
|
||||||
counter.add(GameBasics.TileResources[offer.name]!!,-offer.amount,"Trade")
|
|
||||||
}
|
|
||||||
return counter
|
return counter
|
||||||
}
|
}
|
||||||
//endregion
|
//endregion
|
||||||
|
@ -114,6 +114,12 @@ class MapDownloadTable(mapEditorScreen: MapEditorScreen):PopupTable(mapEditorScr
|
|||||||
val downloadMapButton = TextButton(downloadableMap.name, CameraStageBaseScreen.skin)
|
val downloadMapButton = TextButton(downloadableMap.name, CameraStageBaseScreen.skin)
|
||||||
downloadMapButton.onClick {
|
downloadMapButton.onClick {
|
||||||
val mapJsonGzipped = DropBox().downloadFile(downloadableMap.path_display)
|
val mapJsonGzipped = DropBox().downloadFile(downloadableMap.path_display)
|
||||||
|
if(mapJsonGzipped==""){
|
||||||
|
val couldNotDownloadMapPopup = PopupTable(screen)
|
||||||
|
couldNotDownloadMapPopup.addGoodSizedLabel("Could not download map!").row()
|
||||||
|
couldNotDownloadMapPopup.addCloseButton()
|
||||||
|
return@onClick
|
||||||
|
}
|
||||||
val decodedMapJson = Gzip.unzip(mapJsonGzipped)
|
val decodedMapJson = Gzip.unzip(mapJsonGzipped)
|
||||||
val mapObject = MapSaver().mapFromJson(decodedMapJson)
|
val mapObject = MapSaver().mapFromJson(decodedMapJson)
|
||||||
MapSaver().saveMap(downloadableMap.name, mapObject)
|
MapSaver().saveMap(downloadableMap.name, mapObject)
|
||||||
|
@ -41,7 +41,7 @@ class DropBox(){
|
|||||||
println(ex.message)
|
println(ex.message)
|
||||||
val reader = BufferedReader(InputStreamReader(errorStream))
|
val reader = BufferedReader(InputStreamReader(errorStream))
|
||||||
println(reader.readText())
|
println(reader.readText())
|
||||||
return "Error!"
|
return ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -445,7 +445,7 @@ Unless otherwise specified, all the following are from [the Noun Project](https:
|
|||||||
|
|
||||||
## Promotions
|
## Promotions
|
||||||
|
|
||||||
* [Sight](https://thenounproject.com/search/?q=sight&i=2631027) By Jejen Juliansyah Nur Agung for Accuracy
|
* [Sight](https://thenounproject.com/search/?q=sight&i=2631027) By Jejen Juliansyah Nur Agung for Scouting
|
||||||
* [skill bow rain arrow](https://thenounproject.com/search/?q=rain%20of%20arrows&i=2360192) by Maxicons for Barrage
|
* [skill bow rain arrow](https://thenounproject.com/search/?q=rain%20of%20arrows&i=2360192) by Maxicons for Barrage
|
||||||
* [Bomb](https://thenounproject.com/search/?q=bombardment&i=1705276) By Angelo Troiano for Bombardment
|
* [Bomb](https://thenounproject.com/search/?q=bombardment&i=1705276) By Angelo Troiano for Bombardment
|
||||||
* [Private E2](https://thenounproject.com/yeongrong.kim.5/collection/miltary-rank/?i=833152) By Yeong Rong Kim for Shock
|
* [Private E2](https://thenounproject.com/yeongrong.kim.5/collection/miltary-rank/?i=833152) By Yeong Rong Kim for Shock
|
||||||
@ -457,6 +457,18 @@ Unless otherwise specified, all the following are from [the Noun Project](https:
|
|||||||
* [Wall](https://thenounproject.com/search/?q=wall&i=1305174) By Graphic Tigers for Volley
|
* [Wall](https://thenounproject.com/search/?q=wall&i=1305174) By Graphic Tigers for Volley
|
||||||
* [Lightning](https://thenounproject.com/search/?q=lightning&i=1187991) By Mooms for Blitz
|
* [Lightning](https://thenounproject.com/search/?q=lightning&i=1187991) By Mooms for Blitz
|
||||||
* [Move](https://thenounproject.com/search/?q=move&i=790952) By Sandra for Mobility
|
* [Move](https://thenounproject.com/search/?q=move&i=790952) By Sandra for Mobility
|
||||||
|
* [accuracy](https://thenounproject.com/search/?q=accuracy&i=2017348) By vigtographics for Targeting
|
||||||
|
* [location](https://thenounproject.com/search/?q=location&i=2858979) by Humantech for Accuracy
|
||||||
|
* [Plane](https://thenounproject.com/search/?q=plane&i=1875398) By Tran Minh Villageois for Interception
|
||||||
|
* [Hammer](https://thenounproject.com/search/?q=hammer&i=854936) by Thengakola for Air Repair
|
||||||
|
* [Hook](https://thenounproject.com/search/?q=hook&i=738678) By Yeong Rong Kim for Boarding Party
|
||||||
|
* [Leaf](https://thenounproject.com/search/?q=Leaf&i=1627477) By Paul Verhulst for Indirect Fire
|
||||||
|
* [Move](https://thenounproject.com/search/?q=move&i=344603) By Muneer A.Safiah for Logistics
|
||||||
|
* [Evasion](https://thenounproject.com/search/?q=evasion&i=2013749) By Anna Sophie for Evasion
|
||||||
|
* [Interrupt](https://thenounproject.com/search/?q=interrupt&i=366680) by Stephen Plaster for Ambush
|
||||||
|
* [Submarine](https://thenounproject.com/search/?q=submarines&i=96833) by Lloyd Humphreys for Wolfpack
|
||||||
|
* [Axe](https://thenounproject.com/search/?q=axe&i=14290) by Brian Oppenlander for Woodsman
|
||||||
|
* [Competition](https://thenounproject.com/search/?q=move%20fast&i=1743826) by luca fruzza
|
||||||
|
|
||||||
## Others
|
## Others
|
||||||
|
|
||||||
|