Commit Graph

5970 Commits

Author SHA1 Message Date
4a7f65f281 4.6.12 2023-05-14 22:03:40 +03:00
3879f18288 Version rollout (#9388)
* Bump version and create initial changelog entry

* Update Italian.properties (#9381)

* Update Italian.properties

* Update Italian.properties

* Update French.properties (#9378)

* Update Polish.properties (#9377)

* Updated Brazilian_Portuguese.properties (#9376)

* Update German translation (#9373)

---------

Co-authored-by: yairm210 <yairm210@users.noreply.github.com>
Co-authored-by: Giuseppe D'Addio <41149920+Smashfanful@users.noreply.github.com>
Co-authored-by: Ouaz <Ouaz@users.noreply.github.com>
Co-authored-by: Lesiakower <125187776+Lesiakower@users.noreply.github.com>
Co-authored-by: Vitor Gabriel <59321138+Ranbut@users.noreply.github.com>
Co-authored-by: mape6 <mape6@posteo.de>
2023-05-14 21:55:54 +03:00
841a1aa564 ci: improved detekt configuration and ci (#9380)
* ci: improved detekt configuration

it still needs some work but it's getting there

* detekt: separated errors from warnings

Detekt doesn't currently have a mechanism for failing only on specific issues

workaround suggested by the maintainer of Detekt

* rebased on master

* fix: resolve ExplicitItLambdaParameter

* fix: fix last star import
2023-05-14 21:55:36 +03:00
ae13f32f72 Animate battle damage numbers (#9387)
* Animated battle damage numbers 001

* Animated battle damage numbers 002

* Animated battle damage numbers 003

* Animated battle damage numbers 004
2023-05-14 21:52:15 +03:00
e6135fa486 Display map ruleset when picking map, don't show unloadable maps 2023-05-14 21:51:19 +03:00
5bbd8bce53 Allow mods to contain a "preview.png" file for visual indication 2023-05-14 14:36:46 +03:00
48bd416347 Multi-server preparations: Save server info in game, save server functionality in specific class (#9379)
* Save server info in game

* Moved server functionality into server class

* Fix Android multiplayer update
2023-05-13 21:51:44 +03:00
97769b89b6 Combat java.util.star-import (#9382) 2023-05-13 21:50:55 +03:00
d2eaae0922 4.6.11-patch1 (#9375)
* Convert 'camps' vectorhashmap to 'encampments' arraylist

* Solve camps For Real This Time
Previous solution was only taking the first item of the class, not all of it

* 4.6.11-patch1
2023-05-11 16:54:37 +03:00
dde3732383 Convert 'camps' vectorhashmap to 'encampments' arraylist (#9374) 2023-05-11 16:51:29 +03:00
9a0ba7dcd8 4.6.11 2023-05-11 13:53:12 +03:00
3f2dd3614f Version rollout (#9372)
* Bump version and create initial changelog entry

* Update Indonesian.properties (#9371)

* Update Brazilian_Portuguese.properties (#9352)

* Update Russian.properties (#9351)

There was a letter missing in the word

---------

Co-authored-by: yairm210 <yairm210@users.noreply.github.com>
Co-authored-by: t <73392607+tsaqibfs@users.noreply.github.com>
Co-authored-by: Vitor Gabriel <59321138+Ranbut@users.noreply.github.com>
Co-authored-by: iliademid21 <132929464+iliademid21@users.noreply.github.com>
2023-05-11 13:50:21 +03:00
2ef5ed14e1 Fix 4.6.10 no longer loading older games (#9370)
* Fix 4.6.10 no longer loading older games

* Save games with correct current version info
2023-05-11 13:01:00 +03:00
3e4ba83bcc Added a fix for #7380 to complete a game turn and set upToDate for last human player (#9366) 2023-05-10 22:18:26 +03:00
d4af4e1053 Policy images in red text, policy branch icons in pedia (#9365) 2023-05-10 14:36:50 +03:00
f3e80a4021 Fixed a couple warnings reported by code analysis (#9364)
* fix: resolve EmptyCatchBlock warnings

* fix: resolve PrintStackTrace warnings

* fix: resolve SwallowedException warnings

* fix: resolve ThrowingExceptionsWithoutMessageOrCause warnings

* fix: resolve ConstructorParameterNaming warnings

* fix: resolve FunctionParameterNaming warnings

* fix: resolve InvalidPackageDeclaration warnings

* fix: resolve ForEachOnRange warnings

* fix: resolve ImplicitDefaultLocale warnings

* fix: resolve MayBeConst warnings

* fix: resolve NewLineAtEndOfFile warnings

* fix: resolve UnusedParameter warnings

* fix: resolve UtilityClassWithPublicConstructor warnings

* fix: resolve WildcardImport warnings
2023-05-10 11:43:53 +03:00
1df7ee46ac Prevent some state changing actions during next-turn (#9327)
* Prevent some state changing actions during next-turn

* Direct canChangeState
2023-05-10 11:39:48 +03:00
341c290ce4 Resolved #9357 - update UI after founding city when breaking promise 2023-05-10 10:34:44 +03:00
be20c917cc 4.6.10-patch2
Resolved #9363 #9356 - solved font crash exception
2023-05-10 10:28:44 +03:00
a3ef6fa314 Add May not annex cities unique (#9314)
* Add `May not annex cities` unique, following same behaviour as Civ5 Venice. Hopefully this time I won't need to re-install windows.

* Add `May not annex cities` unique, following same behaviour as Civ5 Venice. Hopefully this time I won't need to re-install windows.

* Fix raze button being unavailable in city screen

* Fixed raze button being available in city screen, as per civ5

* Corrected indentation

* mayAnnex instead of canAnnex, hasUnique rather than getMatchingUniques

* AI will follow rules

* Replaced getMatchingUniques with hasUnique, for real this time
2023-05-09 23:02:19 +03:00
203477eca1 4.6.10-patch1 2023-05-08 21:01:23 +03:00
ed2c294c6f Version rollout (#9350)
* Bump version and create initial changelog entry

* Update Italian.properties (#9347)

* Update Italian.properties

* Update Italian.properties

* Update German translation (#9345)

* Update German translation

* Update German translation

* Update Spanish.properties (#9344)

* update Simplified_Chinese (#9339)

* Update French.properties (#9336)

* Update French.properties

* Update French.properties

Better translation for the Kremlin quote.

* Update Polish.properties (#9335)

---------

Co-authored-by: yairm210 <yairm210@users.noreply.github.com>
Co-authored-by: Giuseppe D'Addio <41149920+Smashfanful@users.noreply.github.com>
Co-authored-by: mape6 <mape6@posteo.de>
Co-authored-by: Caballero Arepa <78449553+Caballero-Arepa@users.noreply.github.com>
Co-authored-by: chr_56 <30681738+chr56@users.noreply.github.com>
Co-authored-by: Ouaz <Ouaz@users.noreply.github.com>
Co-authored-by: Lesiakower <125187776+Lesiakower@users.noreply.github.com>
2023-05-08 18:45:27 +03:00
02e6785969 Resolved #9332 - Solved rare concurrency bug for explored tiles 2023-05-08 18:37:44 +03:00
f8b4b202e7 Automated workers no longer stay on unimprovable tile if another tile is improvable 2023-05-08 18:29:34 +03:00
ea64f941a6 Resolved #9340 - fixed 'enhance religion' crash 2023-05-08 18:02:11 +03:00
ade3af7729 4.6.9-patch2 2023-05-07 09:57:19 +03:00
7b5ed07805 Resolved #9333 - Improperly configured mod conditionals do not cause crash 2023-05-07 09:52:59 +03:00
32041d5b49 4.6.9-patch1 2023-05-07 09:43:25 +03:00
cf4419912d 4.6.9 2023-05-06 21:25:13 +03:00
c895771b3a Bump version and create initial changelog entry (#9334)
Co-authored-by: yairm210 <yairm210@users.noreply.github.com>
2023-05-06 21:21:50 +03:00
299aa06d94 Close the friend selection popup in NewGameScreen by click outside or ESC/BACK key (#9329) 2023-05-06 21:13:19 +03:00
100f4ede64 Fix memory leak from repeatedly resetting the font (#9326)
* Fix memory leak from repeatedly resetting the font

* Reduce ruleset recompilation by MainMenuScreen background changes
2023-05-05 15:20:30 +03:00
4b9c7171d3 Resolved #9242 - Hide buildings requiring multiple cities in one city challenge 2023-05-04 11:22:03 +03:00
fab32e8c8a Resolved #9304 - Added Policy icons and solved 'icons from Image' reflection :) 2023-05-04 11:07:54 +03:00
ec65b7e189 Resolved #9211 - Show Strategic resources you have by trade even if you have not researched tech for it yet 2023-05-04 10:49:40 +03:00
13a530ba11 Resolved #9294 - solved "get vanilla ruleset" errors after downloading mods 2023-05-04 10:39:42 +03:00
f6f0c7a050 Resolve #9262 - scale down unit overlays on zoom in to allow selecting bombard target above city 2023-05-04 10:28:30 +03:00
b0876935f5 Show a preview of custom maps on new game screen (#9234)
* Show a preview of custom maps on new game screen

* Show a preview of custom maps on new game screen - step 2

* Show a preview of custom maps on new game screen V2
2023-05-04 09:31:43 +03:00
43b044740c Allow closing a Popup by clicking outside its area (#9306)
* Allow closing a Popup by clicking outside its area

* Allow closing a Popup by clicking outside its area - upd1
2023-05-04 09:25:14 +03:00
817764ec38 Probably resolved #9320 - AI 'found religion' crash 2023-05-04 09:20:00 +03:00
0252416e23 Version rollout (#9313)
* Bump version and create initial changelog entry

* Update Ukrainian.properties (#9311)

* Update Polish.properties (#9309)

* Update Indonesian.properties (#9307)

Improve some translations

* Update French.properties (#9303)

* Update Catalan.properties (#9299)

* Update German.properties (#9297)

Fixed mistakes from the last pull request and made a few corrections.

Co-authored-by: Birk Birkner <birkner@bbirkner.de>

---------

Co-authored-by: yairm210 <yairm210@users.noreply.github.com>
Co-authored-by: Gualdimar <Gualdimar@users.noreply.github.com>
Co-authored-by: Lesiakower <125187776+Lesiakower@users.noreply.github.com>
Co-authored-by: kensvin <kensvin28@gmail.com>
Co-authored-by: Ouaz <Ouaz@users.noreply.github.com>
Co-authored-by: Joan Josep <juanjo.ng.83@gmail.com>
Co-authored-by: Knirps1 <52383078+Knirps1@users.noreply.github.com>
Co-authored-by: Birk Birkner <birkner@bbirkner.de>
2023-05-03 00:06:53 +03:00
159ae86960 Reduce a few memory allocations (#9312) 2023-05-02 23:26:39 +03:00
fadeaafc75 Various performance improvements (#9296)
* Move caches for passThrough and movementCost into the parent method.

* Reuse path calculated for reaching enemy city if still far away instead of recalculating it for the "landing tile".

* Cache getDistanceToTilesWithinTurn by removing tilesToIgnore from the call and doing that filtering later. Also simplify caller side with some transformations around differences for the first iteration and subsequent iterations.

* Check whether a player is spectator by comparing their civName directly with the Constant rather than going through the lazily initialized property of the nation. This is significantly faster (10x ?) and we're calling this method a lot (tens of millions of times).

Also check whether a tile is explored directly on the tile, not the other way round.

* Revert "Cache getDistanceToTilesWithinTurn by removing tilesToIgnore from the call and doing that filtering later. Also simplify caller side with some transformations around differences for the first iteration and subsequent iterations."

This reverts commit f75ce00d83.

* Simplify UnitMovement.getShortestPath
2023-05-01 07:35:41 +03:00
271e88ad03 Version rollout (#9292)
* Bump version and create initial changelog entry

* update Simplified_Chinese translation (#9289)

Co-authored-by: chr_56 <_>

* update Japanese.properties (#9286)

* Update Japanese.properties

* Update Japanese.properties

* Update Spanish.properties (#9285)

* Update Indonesian.properties (#9283)

* Update Brazilian_Portuguese.properties (#9277)

* Update Polish.properties (#9276)

* Update French.properties (#9274)

Small translation improvements:
- Remove a few past tenses which are unnecessary in French (in the context, past participle alone is enough, especially in notifications)
- More precise translation for "the defence of [cityName]", to refer to the unit garrisoned in the attacked city ("la défense" doesn't sound well)

---------

Co-authored-by: yairm210 <yairm210@users.noreply.github.com>
Co-authored-by: chr_56 <30681738+chr56@users.noreply.github.com>
Co-authored-by: namazulake <130637228+namazulake@users.noreply.github.com>
Co-authored-by: Caballero Arepa <78449553+Caballero-Arepa@users.noreply.github.com>
Co-authored-by: t <73392607+tsaqibfs@users.noreply.github.com>
Co-authored-by: Vitor Gabriel <59321138+Ranbut@users.noreply.github.com>
Co-authored-by: Lesiakower <125187776+Lesiakower@users.noreply.github.com>
Co-authored-by: Ouaz <Ouaz@users.noreply.github.com>
2023-04-26 22:08:34 +03:00
b8bd1fc2c2 Performance improvements (#9271)
* Speed up WorkerAutomation.findTileToWork - apparently tileCanBeImproved is quite expensive

* Add cache for rankTileForCityWork in CityPopulationManager.autoAssignPopulation

* Optimize NextTurnAutomation.declareWar by moving expensive BFSs to the end and potentially short-circuiting evaluation if result won't be promising anyways.

* No need to throw if atLeast is negative.

* Revert changes to CityPopulationManager.kt

* Revert changes to CityPopulationManager.kt

* Speed up WorkerAutomation.findTileToWork - apparently tileCanBeImproved is quite expensive

* Add cache for rankTileForCityWork in CityPopulationManager.autoAssignPopulation

* Optimize NextTurnAutomation.declareWar by moving expensive BFSs to the end and potentially short-circuiting evaluation if result won't be promising anyways.

* No need to throw if atLeast is negative.

* Revert changes to CityPopulationManager.kt

* Revert changes to CityPopulationManager.kt
2023-04-26 18:47:07 +03:00
03ffa84bd3 Allow to reveal explored resources from a city's demanding resources in CityOverviewTab (#9287)
* allow to locate explored resources from a city's demanding resources in `CityOverviewTab`

* better code of `updateCities` in `CityOverviewTab`
2023-04-26 15:43:13 +03:00
cccaa88456 Cache civ uniques while refreshing world map tiles. (#9284)
* Cache civ uniques while refreshing world map tiles.

This should have a pretty significant performance improvement of about 10% next rount time.

* Forgot to add stateForConditionals to cache key.

* Make cache keys depend on function

* Restrict LocalUniqueCache API to avoid using it the wrong way.

* Use default values instead of two methods
2023-04-26 10:17:58 +03:00
cb626861df docs: better unique parameter documentation 2023-04-25 17:45:40 +03:00
079c237547 terrainFilter now accommodates nationFilter for owner 2023-04-25 17:45:40 +03:00
2b57bd44ab Visual clue a load game from clipboard is underway (#9278) 2023-04-25 17:24:05 +03:00