* Add the ability to lock states, provinces, cultures, and religions (#902)
* Add the basis for locking everything, code and test the culture locking
* Got the religion generator working, but not the tree. There are cycles being generated
* Religions work now, including the tree view
* Got the states and provinces working as well, all good and ready
* Refresh the province editor when regenerating
* Implement the versioning steps
* Fix the state naming and color changing even when locked
* The fix did not work with loaded maps, fix that too
* Fix a few more bugs and address the PR feedback
* Fix the state expanding event when they're locked bug
* Implement some logic to ignore state being locked when regenerating provinces directly.
* refactor(#902): start with states regenertion
* refactor(#902): locked states cells to be assigned on start
* refactor(#902): lock state - keep label
* refactor(#902): lock provinces
* refactor(#902): regenerate states - update provinces
* refactor(#902): regenerate cultures
* refactor(#902): regenerate religions
Co-authored-by: Guillaume St-Pierre <gstpierre01@gmail.com>
Co-authored-by: Azgaar <maxganiev@yandex.com>
Grammar policing. Also slight modifications to sofronaspe's sacred tree places (idk what they are called collectively lol) to be slightly more grammatically correct, extending it to sacred peaks, Hot Spring variants, and maybe some other stuff I've forgotten. I have some more ideas for markers as I personally find them super interesting and great for adding depth to a world, just need to gather my thoughts and maybe actully learn how to code.
* A bit variety of points of interest added
* live-server now running, can actually bash things out
* some typos and mirage
* suggestions
* Rarity changes and capitalisation
* Jousts only ever spawn one per map
Co-authored-by: Andrew Rose <andrew.rosed@gmail.com>
Co-authored-by: Azgaar <maxganiev@yandex.ru>
Markers added by procedural generation have custom notes depending on
the type of marker (e.g. dungeons have a procedurally generated map);
however, the notes for markers manually added by the user are empty.
This patch separates the cell selection logic from the legend and name
generation logic in markers-generator.js, so that the latter can be
shared with manually added markers. There is some additional
simplifications such as storing the dx/dy/px/min/each values directly in
the markers table to simplify the writing of the generic "list and add"
loop in `generateTypes()`.
Currently, the legend is only generated when adding a marker of the same
type as an existing marker, and only when a legend generation function
is available for that type. To generate a marker of a type that is not
currently present on the map, one must first change the type field of an
existing marker (which will not get a procedural note), then use "Add
additional marker of that type". The UI for this can be improved later.
Co-authored-by: Basile Clement <basile-github@clement.pm>