* Simplified tileFilter predicate
* Use only own harbors
* Allow city connections via open borders only
* Basic unit tests
* Advanced unit tests
* The maps and the legend for the tests
* CR changes: barbarians will not let the trades happen
* CR changes: get rid of question signs, "let" "Elvis" pass away
* Formatting
* Fix minimap actor leak
The minimap update method tried to update borders only on tiles that changed owners, which is fine if that was what it did. But only the "remove old borders" part was in the "changed owners" branch, not "add new borders", so what actually happened was that each update all borders where the tile owner didn't change got added again, which is basically all borders.
This caused a huge slowdown the more actions you do on the world map in a single turn (i.e. move a lot of units). When a new turn starts, the minimap gets completely thrown away and rebuilt, so then it's fine again.
This changes the minimap to properly add/remove borders when something actually changes.
* Refactor: Split classes up into separate files
Also, split up the Minimap.init method into smaller methods to make it a bit more readable
* Finish up comment
* Fixed `provides [amount] [resource]` not accepting conditionals
This was due to it still using `getLocalMatchingUniques` without
providing a `StateForConditionals`, and then manually filtering them if
they didn't provide conditionals. This of course doesn't work anymore,
as `getLocalMatchingUniques` then assumes that all conditionals aren't
satisfied.
Also refactored a loop over `uniqueObjects` with `isOfType()` to just
use `getMatchingUniques()`.
* Only initialize StateForConditionals once
* Actually this is more moddable
* Implemented most easy things from comments on moddable victory PR
Also added religious victory condition
* Fixed tests
* Fixed compile problems & missing string
* Fixed typo
* Use both icon and roundIcon properties
* Studio-generated Android Icon
* Studio-generated Android Icon to fastlane
Co-authored-by: JackRainy <JackRainy@users.noreply.github.com>
* Update Hosting-a-Multiplayer-server.md
Added a section for explaining that Android does not like unencrypted traffic to a self-hosted server and that you need to setup a reverse proxy to do that.
* Added hint for MultiplayerFiles folder
* Fixed issue #6649 by checking for internet connection before starting the game if "online multiplayer" is selected
Many thanks to SomeTroglodyte for most of the code and for explanations
* check for internet before starting a mp game to avoid freeze
Fixed issue #6649 by checking for internet connection before starting the game if "online multiplayer" is selected.
Many thanks to SomeTroglodyte for most of the code and for explanations. A slight modification has been done to the code to catch an error caused by InetAddress
* Revert "Merge remote-tracking branch 'origin/master-noInternet' into master-noInternet"
This reverts commit bd6474b50d, reversing
changes made to f52ad60b51.
* Readability overloads for `getComplexRuleset`
* Enable loading maps containing missing ruleset objects with fix and message
* Fix bungled `noMapsAvailable` and follow minor criticism
This would only occur if the plane was damaged and looking for a spot to
heal, and had no tile to go to with >0 healing. It would then try to
head towards the nearest city, regardless of whether it could enter
that. As it's an air unit, 'head towards' means 'fly there directly this
turn', which obviously caused crashes if the unit couldn't enter that
tile.
* Correct contribution to the Settler production
* Correct indicator of the food usage during Settler production
* More precise calculation of the food to production conversion
* Revert of starvation avoidance during Settler production
* Minor tweaks
* More info for Resources in Civilopedia
* Remove duplicates for Resource requirements in Civilopedia
* Resource overview link resource label to Civilopedia
* Resource overview stay if clicking can't notify (resources not existing on map)
* Resource overview display of resources produced by buildings
* Changed milestone build globally text to make it more understandable
* Actually this is probably just as clear, gramatically more correct and
more imperative like the other milestones
* Fixed tests
* Reworded again