Added the nation of the Netherlands (#4372)
* Added the nation of the Netherlands * Added Sea Beggar, Dutch unique unit * Added polder improvement, Dutch unique improvement * Added national ability
BIN
android/Images/ImprovementIcons/Polder.png
Normal file
After Width: | Height: | Size: 3.4 KiB |
BIN
android/Images/NationIcons/The Netherlands.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
android/ImagesToPackSeparately/UnitIcons/Sea Beggar.png
Normal file
After Width: | Height: | Size: 4.6 KiB |
@ -599,142 +599,149 @@ Scout
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Settler
|
||||
Sea Beggar
|
||||
rotate: false
|
||||
xy: 976, 436
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Ship of the Line
|
||||
Settler
|
||||
rotate: false
|
||||
xy: 1084, 544
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Sipahi
|
||||
Ship of the Line
|
||||
rotate: false
|
||||
xy: 1192, 653
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Slinger
|
||||
Sipahi
|
||||
rotate: false
|
||||
xy: 1300, 760
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Spearman
|
||||
Slinger
|
||||
rotate: false
|
||||
xy: 1408, 868
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Stealth Bomber
|
||||
Spearman
|
||||
rotate: false
|
||||
xy: 652, 4
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Submarine
|
||||
Stealth Bomber
|
||||
rotate: false
|
||||
xy: 760, 118
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Swordsman
|
||||
Submarine
|
||||
rotate: false
|
||||
xy: 868, 220
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Tank
|
||||
Swordsman
|
||||
rotate: false
|
||||
xy: 976, 328
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Tercio
|
||||
Tank
|
||||
rotate: false
|
||||
xy: 1084, 436
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Trebuchet
|
||||
Tercio
|
||||
rotate: false
|
||||
xy: 1192, 545
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Triplane
|
||||
Trebuchet
|
||||
rotate: false
|
||||
xy: 1300, 652
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Triplane
|
||||
rotate: false
|
||||
xy: 1408, 760
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Trireme
|
||||
rotate: false
|
||||
xy: 1408, 759
|
||||
xy: 1516, 867
|
||||
size: 100, 101
|
||||
orig: 100, 101
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Turtle Ship
|
||||
rotate: false
|
||||
xy: 1516, 868
|
||||
xy: 760, 10
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
War Chariot
|
||||
rotate: false
|
||||
xy: 760, 10
|
||||
xy: 868, 112
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
War Elephant
|
||||
rotate: false
|
||||
xy: 868, 112
|
||||
xy: 976, 220
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Warrior
|
||||
rotate: false
|
||||
xy: 976, 220
|
||||
xy: 1084, 328
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Work Boats
|
||||
rotate: false
|
||||
xy: 1084, 328
|
||||
xy: 1192, 437
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Worker
|
||||
rotate: false
|
||||
xy: 1192, 437
|
||||
xy: 1300, 544
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
index: -1
|
||||
Zero
|
||||
rotate: false
|
||||
xy: 1300, 544
|
||||
xy: 1408, 652
|
||||
size: 100, 100
|
||||
orig: 100, 100
|
||||
offset: 0, 0
|
||||
|
Before Width: | Height: | Size: 330 KiB After Width: | Height: | Size: 334 KiB |
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 1.0 MiB |
@ -691,6 +691,27 @@
|
||||
"uniques": ["[+1 Production] from every [Pasture]", "Cities are razed [2] times as fast", "Starts with [Animal Husbandry]", "\"Borrows\" city names from other civilizations in the game"],
|
||||
"cities": ["Atilla's Court"]
|
||||
},
|
||||
{
|
||||
"name": "The Netherlands",
|
||||
"leaderName": "William of Orange",
|
||||
"adjective": ["Dutch"],
|
||||
"startBias": ["Grassland"],
|
||||
"preferredVictoryType": "Cultural",
|
||||
|
||||
"startIntroPart1": "Hail stalwart Prince William of Orange, liberator of the Netherlands and hero to the Dutch people. It was your courageous effort in the 1568 rebellion against Spanish dominion that led the Dutch to freedom, and ultimately resulted in the Eighty Years' War. Your undertaking allowed for the creation of one of Europe's first modern republics, the Seven United Provinces. You gave your life to the rebellion, falling at the hands of an assassin in 1584, but your death would only serve to embolden the people's charge, and your legacy as \"Father of the Fatherland\" will stand as a symbol of Dutch independence for all time.",
|
||||
"startIntroPart2": "Brave prince, the people again yearn for the wise stewardship your wisdom afforded them. Can you once again secure the sovereignty of your kingdom and lead your people to greatness? Can you build a civilization that stands the test of time?",
|
||||
"declaringWar": "As much as I despise war, I consider it a, hahaha, contribution to the common cause to erase your existence.",
|
||||
"attacked": "You call yourself an exalted ruler, but I see nothing more than a smartly dressed barbarian!",
|
||||
"introduction": "I am William of Orange, stadtholder of The Netherlands. Did you need anything? I still have a lot to do.",
|
||||
"neutralHello": "Once again, greetings.",
|
||||
"hateHello": "What do you want?",
|
||||
"tradeRequest": "I believe I have something that may be of some importance to you.",
|
||||
"outerColor": [255, 144, 0],
|
||||
"innerColor": [255, 255, 255],
|
||||
"uniqueName": "Dutch East India Company",
|
||||
"uniques": ["Retain [50]% of the happiness from a luxury after the last copy has been traded away"],
|
||||
"cities": ["Amsterdam", "Rotterdam", "Utrecht", "Groningen", "Breda", "Nijmegen", "Den Haag", "Haarlem", "Arnhem", "Zutphen", "Maastricht", "Tilburg", "Eindhoven", "Dordrecht", "Leiden", "Hertogenbosch", "Almere", "Alkmaar", "Brielle", "Vlissingen", "Apeldoorn", "Enschede", "Amersfoort", "Zwolle", "Venlo", "Uden", "Grave", "Delft", "Gouda", "Nieuwstadt", "Weesp", "Coevorden", "Kerkrade"]
|
||||
},
|
||||
/*
|
||||
{
|
||||
"name": "Sweden",
|
||||
|
@ -217,6 +217,16 @@
|
||||
"techRequired": "Construction",
|
||||
"shortcutKey": "F"
|
||||
},
|
||||
{
|
||||
"name": "Polder",
|
||||
"uniqueTo": "The Netherlands",
|
||||
"food": 3,
|
||||
"terrainsCanBeBuiltOn": ["Marsh", "Flood plains"],
|
||||
"turnsToBuild": 7,
|
||||
"uniques": ["[+1 Production, +2 Gold] once [Economics] is discovered"],
|
||||
"techRequired": "Guilds",
|
||||
"shortcutKey": "F"
|
||||
},
|
||||
|
||||
{ "name": "Ancient ruins", "uniques": ["Unpillagable"],
|
||||
"civilopediaText": [{text:"Ancient ruins provide a one-time random bonus when explored"}] },
|
||||
|
@ -801,6 +801,19 @@
|
||||
"promotions": ["Coastal Raider I"],
|
||||
"uniques": ["May capture killed [Water] units"]
|
||||
},
|
||||
{
|
||||
"name": "Sea Beggar",
|
||||
"unitType": "WaterMelee",
|
||||
"replaces": "Privateer",
|
||||
"uniqueTo": "The Netherlands",
|
||||
"movement": 5,
|
||||
"strength": 25,
|
||||
"cost": 150,
|
||||
"requiredTech": "Navigation",
|
||||
"upgradesTo": "Destroyer",
|
||||
"promotions": ["Coastal Raider I", "Coastal Raider II", "Supply"],
|
||||
"uniques": ["May capture killed [Water] units"]
|
||||
},
|
||||
{
|
||||
"name": "Frigate",
|
||||
"unitType": "WaterRanged",
|
||||
|
@ -160,6 +160,9 @@ class CivInfoStats(val civInfo: CivilizationInfo) {
|
||||
for (unique in civInfo.getMatchingUniques("+1 happiness from each type of luxury resource"))
|
||||
happinessPerUniqueLuxury += 1
|
||||
//
|
||||
|
||||
val ownedLuxuries = civInfo.getCivResources().map { it.resource }.filter { it.resourceType == ResourceType.Luxury }
|
||||
|
||||
statMap["Luxury resources"] = civInfo.getCivResources().map { it.resource }
|
||||
.count { it.resourceType === ResourceType.Luxury } * happinessPerUniqueLuxury
|
||||
|
||||
@ -169,10 +172,17 @@ class CivInfoStats(val civInfo: CivilizationInfo) {
|
||||
|
||||
val luxuriesProvidedByCityStates =
|
||||
civInfo.getKnownCivs().filter { it.isCityState() && it.getAllyCiv() == civInfo.civName }
|
||||
.map { it.getCivResources().map { res -> res.resource } }.flatten().count { it.resourceType === ResourceType.Luxury }
|
||||
.map { it.getCivResources().map { res -> res.resource } }.flatten().distinct().count { it.resourceType === ResourceType.Luxury }
|
||||
|
||||
statMap["City-State Luxuries"] = happinessBonusForCityStateProvidedLuxuries * luxuriesProvidedByCityStates * happinessPerUniqueLuxury
|
||||
|
||||
val luxuriesAllOfWhichAreTradedAway = civInfo.detailedCivResources
|
||||
.filter { it.amount < 0 && it.resource.resourceType == ResourceType.Luxury && (it.origin == "Trade" || it.origin == "Trade request")}
|
||||
.map { it.resource }
|
||||
.filter { !ownedLuxuries.contains(it) }
|
||||
|
||||
statMap["Traded Luxuries"] = luxuriesAllOfWhichAreTradedAway.count() * happinessPerUniqueLuxury *
|
||||
civInfo.getMatchingUniques("Retain []% of the happiness from a luxury after the last copy has been traded away").sumBy { it.params[0].toInt() } / 100f
|
||||
|
||||
for (city in civInfo.cities) {
|
||||
// There appears to be a concurrency problem? In concurrent thread in ConstructionsTable.getConstructionButtonDTOs
|
||||
|
@ -75,6 +75,7 @@ Unless otherwise specified, all the following are from [the Noun Project](https:
|
||||
* [Rapier](https://thenounproject.com/search/?q=musketeer&i=819822) By Hamish for Musketeer
|
||||
* [Ship](https://thenounproject.com/term/ship/1293899/) By Orin Zuu for Frigate
|
||||
* [Pirate](https://thenounproject.com/search/?q=pirate&i=2349496) by Berkah Icon for Privateer
|
||||
* [Pirate](https://thenounproject.com/search/?q=frigate&i=3447522) by Smalllike for Sea Beggar*
|
||||
* [Ship](https://thenounproject.com/search/?q=ship&i=800131) By Mungang Kim for Ship of the Line
|
||||
* [Lance](https://thenounproject.com/search/?q=Lance&i=440122) By parkjisun for Lancer
|
||||
* [Sword](https://thenounproject.com/search/?q=saber&i=1174742) By Daniela Baptista for Sipahi
|
||||
@ -512,7 +513,8 @@ Unless otherwise specified, all the following are from [the Noun Project](https:
|
||||
* [Spiral](https://www.shutterstock.com/image-vector/maori-symbol-spiral-shape-based-on-1145645057?id=1145645057) by bc21 for Polynesia
|
||||
* [Dharmachakra](https://thenounproject.com/search/?q=dharmachakra&i=740796) by Parkjisun for Siam
|
||||
* [Sun](https://thenounproject.com/search/?q=inca&i=910770) by Made x Made for Inca
|
||||
* [Sun symbol black](https://en.wikiquote.org/wiki/File:Sun_symbol_black.svg) by Eddo for the Huns
|
||||
* [Sun symbol black](https://en.wikiquote.org/wiki/File:Sun_symbol_black.svg) by Eddo for The Huns
|
||||
* [Lion](https://thenounproject.com/search/?q=lion&i=76154) by Nikki Rodriguez for The Netherlands
|
||||
|
||||
|
||||
## Promotions
|
||||
|