Commit Graph

2692 Commits

Author SHA1 Message Date
5553be0d67 Minimap no longer adds city indicator on every update, leading to lower framerate over time 2020-10-05 11:45:55 +03:00
523ed10e68 Specialist names are taken from the json files 2020-10-04 16:25:07 +03:00
58d651bfe2 MODDABLE SPECIALISTS ARE GO! 2020-10-04 16:16:42 +03:00
a24dc7cc69 Completely removed usages of the old getMaxSpecialists 2020-10-04 15:47:57 +03:00
fd6956507d Merge tag '3.11.0-patch1' 2020-10-04 15:20:48 +03:00
be2dd5c068 3.11.0-patch1
Solved some errors that occured as a result of the recent changes assuming the specialists exist, which is not true in revamp mods
2020-10-04 15:18:26 +03:00
2d6c322856 Connect Resource Quest implemented (#3209)
* Removed superfluous filters in getResourceForQuest
2020-10-04 15:01:57 +03:00
67efd6c957 Problem: Some promotions in CIV 5 have multiple effects, but Unciv promotions only allow for one effect (#3219)
Solution: This PR adds "uniques" field to allow for multiple effects, while keeping "effect" field so that rulesets prior to this PR can still work.
2020-10-04 10:55:42 +03:00
3e98e0c00f 3.11.0 2020-10-03 20:48:34 +03:00
bddded04f5 Patch of the promotion exploit (#3214) 2020-10-03 20:24:19 +03:00
300c7179e7 Various Quest relted (#3206)
* Renamed some quests to better ones (Kill Camp -> Clear Barbarian Camp and Kill City State -> Conquer City State)
* Quests names are hardcoded in a enum class
* Quests.json translations automated
2020-10-01 21:08:26 +03:00
a4d1232403 Final conversion of existing specialists to the new format 2020-10-01 17:06:34 +03:00
fab8242c6a "[] units gain the [] promotion" (#3204) 2020-10-01 09:51:24 +03:00
bfa9c65700 Modding - Buildings can be rendered obsolete (unbuildable) by techs 2020-09-30 23:17:09 +03:00
aa2486c896 Great person points come from the json! The only things that still happen directly to the specialists stats is the assign/unassign, this is as close as we'll get without changing the rest of it! 2020-09-30 20:18:52 +03:00
e39d3e89da All specialist colors come from the json now :) 2020-09-30 19:42:47 +03:00
5677fb494a Added helper function colorFromRGB(List<Int>) 2020-09-30 19:26:20 +03:00
43f5799578 Specialist information is now hybrid 2020-09-30 18:03:26 +03:00
9f9d89af9d resourceIsVisible to be checked before getting tile resource (#3201) 2020-09-30 17:28:05 +03:00
e983be0325 Started converting specialists to by-json and by-name 2020-09-30 13:10:02 +03:00
f411089b8d Better improvement on tile checks 2020-09-30 11:06:51 +03:00
f50a757069 Unified "improvement on tile" checks 2020-09-30 10:51:22 +03:00
adaee7e7ab City State quests (#3183)
* City State quests

* Flag to log two civ ever been friends
* Utility functions in GameInfo
* Created Diplomacy Action for notifications
* Utility functions for map
* Can be specified a custom color for surroundWithCircle
* Translation placeholder utility
* Added Quest model
* Utility function: number of researched technologies

* Image atlas rebuilt

* Localization

* Updated DiplomaticFlags and added EverBeenFriends

Slightly reworked nextTurnFlags() for code clarity and introduced the new flag EverBeenFriends that is set as soon as two civilizations are at least friends. It never expires.

* Removed quests not implemented yet from json
2020-09-29 23:26:50 +03:00
9b3dd5058f Better checking for unloadable scenarios 2020-09-29 14:15:00 +03:00
6662944f32 Resolved #3085 - reconquering our cities while they were still in resistance leads to them not having resistance against us 2020-09-29 11:48:21 +03:00
56dbd5459e "No Maintenance costs for improvements in []" generic unique. Compatibility for Incan unique without having to edit the nations.json file. (#3194) 2020-09-28 23:34:36 +03:00
30396239c1 Cannot open multiple gold selection popups in trade table 2020-09-28 23:06:46 +03:00
e1819eb748 Scenarios that can't be loaded not displayed to users 2020-09-26 21:24:54 +03:00
0f97c5eb59 parameterized few uniques, fixed "Mass Media" tech in mods (#3184)
* parameterized "Culture cost of adopting new Policies reduced by [10]%" and "Each city founded increases culture cost of policies [33]% less than normal"

* removed old fix for abcense of "Mass Media" tech so mods can have this tech
2020-09-26 20:59:22 +03:00
33270baea2 Resolved #3186 - Diplomacy overview displays war/peace status and not relationship level. 2020-09-26 20:40:51 +03:00
43bef4d88d Better trade cancellation when all cities are offered (also includes player-to-player cases, not only AI) 2020-09-25 15:33:12 +03:00
009c59b77c Fixed modded images not loading properly 2020-09-25 13:50:02 +03:00
98a79f8fb4 Removed edge case option where the AI can trade you all of their cities 2020-09-25 13:42:13 +03:00
1f52a8ad88 Hide Unit or Building as Unique (#3181)
* This allows for unique unit or building not to be displayed as a unique on the nation select screen and nation civilopedia entry.

The primary usage of this to allow modders to avoid having their dummy unit/building that is used to disallow a nation from making the unit/building it replaces, from
appearing as a unique to the player. In other words, it won't show the comparison stats/etc.

In conjunction with this PR https://github.com/yairm210/Unciv/pull/3180 it allows modders to cleanly disallow nations from making certain units/buildings.

This would also be useful for Venice from the Brave New World expansion as it cannot build Settlers. https://civilization.fandom.com/wiki/Venetian_(Civ5)

Here is a mod to test this PR:
https://cdn.discordapp.com/attachments/670547794951405584/758550228126793759/Test_Hide_As_Unique.zip

This mod disallows Babylon from making Scout and Horseman and also doesn't show the dummy replacement unit/building on Babylon's nation info.
It also makes Babylon have a unique Monument replacement that it can build, but is still not shown as a unique on Babylon's nation info.
It also adds an example Venice nation that can't build Settlers.

* "Will not be displayed in Civilopedia" unique prevents a unit or building from being shown in Civilopedia or shown as a unique
2020-09-25 12:37:23 +03:00
4ee3dae134 * tweaked some buildings (#3172)
Windmill provides "+[10]% Production when constructing [Buildings]" (only regular buildings) instead of 10% to everything
Oxford University does not provide 50% science boost - it was a copying error from National College
* tweaked techs
Implemented "Reveals the entire map" unique ("Satellites" tech)
discovering a tech can trigger unique
"Remove Marsh" unlocked with "Masonry"
2020-09-22 15:17:04 +03:00
53a836201d This allows mods to override unique text for nations. This is useful for using uniques but phrasing them differently when shown to the player. (#3166)
The attribute in the nation json to change this is "uniqueText"

A mod to test this is here, it changes Babylon's unique text to "Test Babylon Unique Text"
https://cdn.discordapp.com/attachments/670547794951405584/757393404924526672/Test_Custom_Nation_Unique_Text.zip
2020-09-21 21:45:49 +03:00
f721f59734 Added national wonders, fixed some minor issues (#3163)
* fixed translation of "Owned: [amountOwned] = " line

* Tweaked culture from killing
Aztecs get melee strength of the unit killed in culture and honor opener does the same thing.
They stack. So you get culture equal to 200% of the dead unit's strength (not ranged strength).

* removed hurryCostModifier from units that should not have it

Default value of HurryCostModifier is 0
List of units with non-default HurryCostModifier:

Settler (20)
SS parts (-1) (cannot be hurried)

Frigate (20)
Ship of the Line (20)
Caravel (30)
Turtle Ship (30)

Catapult (20)
Ballista (20)

Horseman (20)
Companion Cavalry (20)

Swordsman (20)
Mohawk Warrior (20)
Legion (20)
Berserker (20)

* added missing definitions from vanilla (commented out)
added missing obsolete tech tags, etc

* tweaked hurryCostModifier, added missing vanilla buildings (commented out)

* added promotions and parametrized uniques
Morale (+[15]% Combat Strength)
Great Generals I ([Great General] is earned [50]% faster)
Great Generals II ([Great General] is earned [100]% faster)
Quick Study ([50]% Bonus XP gain)
Unretired Mass Media icon

Added Heroic Epic, National Epic and National Treasury national wonders
Heroic Epic has unique "All newly-trained [non-air] units in this city receive the [Morale] promotion" - "non-air" is valid param now

[Raising The Flag on Iwo Jima silhouette, Marine Corps War Memorial Raising the Flag on Iwo Jima Battle of Iwo Jima Washington, D.C., memorial free png](https://www.pngfuel.com/free-png/opgid) for Heroic Epic and Morale promotion
[Arc de Triomphe](https://thenounproject.com/search/?q=Arc%20de%20Triomphe&i=2936011) by iconfield for National Epic
[Bank](https://thenounproject.com/term/bank/213472/) by By P Thanga Vignesh for National Treasury
reused general icon for Great Generals and Quick Study promotions

* implemented "Cost increases by [30] per owned city of cities" unique
All vanilla national wonders that require something in all cities have it

* added uniques
"Nuclear weapon" - Game option "nuclearWeaponsEnabled" enables units with this unique
"Requires [building]" - Apollo Program, Manhattan Project etc
"Requires adopted [policy]" - in expansions Statue of Zeus will require "Honor", Prora - "Autocracy", Landsknecht - "Mercenary Army".

* merged "Requires adopted [policy]" with "Requires [Wonder]"

* Separated unique.params[0] to val filter

* Changed National Epic image
2020-09-21 21:44:52 +03:00
205b5ccfea Implement custom save locations for Android and Desktop (#3160)
* Implement custom save locations for Android and Desktop

* Request write permission to save to external storage

* Fix race condition for custom saves/loads caused by autosaves

* Remove unnecessary WRITE_EXTERNAL_STORAGE permission for saving files

* Fix padding for custom save/load location buttons

* Use nullability checks as defined in coding style guide

* Use nullability checks as defined in coding style guide

* Use early return for readability

* Rename save/load completion callbacks for custom locations and implement error handling
2020-09-20 23:22:07 +03:00
fded66b523 Trade table options are now mousewheel-scrollable - the problem was there was a scrollpane within a scrollpane - #2824 2020-09-20 22:20:33 +03:00
ef181a4f4c Adds "Start with [] technology" unique (#3150)
* Adds "Start with [] technology" unique, useful for mods and Hunnic civilization from official CIV 5 DLC Gods and Kings. This unique can be tested with this mod https://cdn.discordapp.com/attachments/670547794951405584/756223352930304140/Test_Start_Technology_Nation_Unique.zip which lets Babylon start with Pottery.

* assigning the start technology unique parameter value to variable, changing the unique syntax to 'Starts with []'
2020-09-20 20:29:04 +03:00
eb7aac0959 Added 'back button' functionality to victory screen (#2824) 2020-09-18 13:58:17 +03:00
8db955b851 3.10.10 2020-09-18 11:27:11 +03:00
9f4607635b UI Upgrade (#3149)
* UI Update

* Replace ScrollPane with Table in Minimap
2020-09-18 10:59:18 +03:00
a0d18889e0 Generified "[X] free [] units"
Barbarians don't try to attack with civilian units (classic Mod)
2020-09-16 20:46:34 +03:00
1ceb3548dd Resolved #3130 - "All policies adopted" shown in policy picker screen when relevant 2020-09-16 19:17:25 +03:00
1f4d5f5573 Multiselect applies to civilian units and from city overlays 2020-09-14 21:48:46 +03:00
044d04ab28 implement fun isHill() = baseTerrain == Constants.hill (#3128)
fixed isAdjacentToFreshwater - should also check for river on tile
use fitsUniqueFilter instead of checking baseTerrain, terrainFeature and some other filters separately
changes nothing but makes hill PR a lot more readable
2020-09-12 21:34:23 +03:00
7a7028e3a5 Can now move multiple units to nearby tiles at the same turn 2020-09-11 17:56:23 +03:00
5a44d7e098 Multiple selected units are more obvious on-map 2020-09-11 17:09:50 +03:00
f63005ad3c Multiselect & move works! Currently very restricted and not all selected units are visible to user 2020-09-11 16:55:35 +03:00