refactor to enum
typing and many other fixes
fix tests
attempt to fix some typescript
more typescript fixes
more typescript test fixes
revert all API changes
update to pydcs
mypy fixes
Use properties to check if player is blue/red/neutral
update requirements.txt
black -_-
bump pydcs and fix mypy
add opponent property
bump pydcs
* fix airwing config not properly saving or loading
* add helper message to save function
* bugfixes
* remove unnecessary import used during testing
* yet another forgotten import
* change raise error to log warning
This allows unique identification across saves. The front-end needs to
be able to differentiate the first carrier in game A and the first
carrier in game B, but because carriers (and other non-airfield CPs) are
assigned IDs sequentially, collisions were to be expected. The front-end
can't tell the difference between a reloaded game and a new turn, so we
need to ensure different IDs across games.
This is a handy cleanup anyway, since callers constructing CPs no longer
need to manually track the CP ID counter.
Fixes https://github.com/dcs-liberation/dcs_liberation/issues/2078.