* Added more unit tests for uniques; added missing implementations
* This of course shouldn't go here as there is another function for it
* Stylistic changes
* This generates better unique examples
* Reviews
* Reordered for efficiency
* Reverted improvement percentage bonuses applying to tiles
* Great General UniqueTyped and improved moddability - draft
* Great General UniqueTyped and improved moddability - reviews
* Great General UniqueTyped and improved moddability - no reason not to cache another
* Integration with JackRainy's solution
* Integration with JackRainy's solution - part 2
* Revert of maxGreatGeneralBonusRadius logic
* Minor refactoring
* Code review: minor refactoring
* Keep the warning for the modders about the obsolete unique
* Code review: Better wording for the unique
Co-authored-by: SomeTroglodyte <63000004+SomeTroglodyte@users.noreply.github.com>
* Great improvements can again be constructed on forest
This PR fixes a bug where great improvements couldn't be build on
forests/marshes/jungles/etc. It does so by creating a unique which
specifically allows for removing features, and checking for that.
Additionally, we only remove these features when we have the tech to
remove them. For example, you can no longer plonk an Academy down over a
forest without having researched mining.
* Missed the file for vanilla
* Reviews
* Fixed logic
* Replacements for existing UniqueTypes
* More typed uniques are added
* Migration to the typed uniques
* Minor optimization
* More general approach on UniqueType usage
* Better wording for the UniqueType
* Renamed tile.hasUnique, deprecated `Indestructable`, unique for citadels
Also refactored the consumption of (great) people out of UnitActions.
* Reworked when improvements can be build somewhere for more clarity
* Made resources improvable by multiple improvements; Offshore Platform
* Fix compatability
* WIP
* Fixed the tests, but better
* I suppose I might as well update this now that we're a version later
* Comments to 'link' implementation (matchFilter) to UniqueParameterType
* Comments to 'link' UniqueParameterType to implementation (matchFilter)
* Fix two mistakes in UniqueParameterType
* Make "and" filter logic for MapUnit and BaseUnit modular, fix mistake
* Make UnitMovementMemory immutable and without lateinit
* Keep UniqueType comment promise that instances can override parameter types
* Reorg UniqueDocsWriter so UniqueParameterType-specific text is moved to the enum
Also some minor improvements - e.g. abbreviations sorted & consistent punctuation, less memory allocations, a/b/c type params get an example,...
* New abilities for UniqueDocsWriter concerning UniqueTarget and inheritsFrom (initially deactivated)
* Actually implement the wish for distinction between absolute and relative amounts
* Change UniqueParameterType.UnitName.docExample to Xander's choice
* Fixed the links in the docs
* Fixed broken tables
Tables without a line break above are not treated as valid tables
* Removed redundant table of contents and formatted some bulleted lists
* The image in Regions.md is now properly displayed
* Standardized list indentation, line spacing, table header rows, and JSON code blocks
* Standardized headers
* Fixed remaining broken links, edited pseudo-footnotes
* Allow TranslationFileWriter to follow several superclass levels (fixes PolicyBranch names)
* Bring German and template up to par as baseline
* Framework to feed TranslationFileWriter from UniqueParameterType, also fixes Fountain of Youth
* TranslationFileWriter legacy guessing now _much_ simpler
* Fix "chance to be destroyed by nukes" case
* Fix tests (allTranslationsHaveCorrectPlaceholders goes cross-language)
* Generalized trade route percent bonuses
* Unified two uniques using populationFilter; deprecated a deprecated uniq
* Made some renamings to improve clarity & fixed tests
* Fixed tests again
* Fixed typo
* Unique units abilities that should be inherited by upgrades
* Unique units abilities that should be inherited by upgrades - xlt
* Unique units abilities that should be inherited by upgrades - wiki