Migrate FightSystem modes and countdowns to GameCore

- Move shared arena-mode abstractions into GameCore
- Adapt fight countdowns and APIs to the shared model
- Add SteamWar issue audit workflow and SQL language settings
This commit is contained in:
2026-07-24 12:18:49 +02:00
parent badff1c70f
commit 867ca6f5dc
133 changed files with 2155 additions and 1076 deletions
@@ -39,8 +39,8 @@ public class LastRemainingWincondition extends WinCondition {
TowerRunGame.PLAYERS_ALIVE.remove(tPlayer);
TowerRunGame.PLAYERS_ESCAPED.remove(tPlayer);
tPlayer.player().setGameMode(GameMode.SPECTATOR);
if (TowerRunGame.PLAYERS_ALIVE.size() == 1 && TowerRunGame.PLAYERS_ESCAPED.isEmpty()) {
TowerRunGame.win(TowerRunGame.PLAYERS_ALIVE.get(0));
if (TowerRunGame.PLAYERS_ESCAPED.isEmpty() && TowerRunGame.PLAYERS_ALIVE.size() == 1) {
TowerRunGame.complete(de.steamwar.gamecore.wincondition.WinConditions.lastRemaining(TowerRunGame.PLAYERS_ALIVE));
}
}
@@ -50,8 +50,8 @@ public class LastRemainingWincondition extends WinCondition {
if (TowerRunGame.isAlive(tPlayer)) {
TowerRunGame.PLAYERS_ALIVE.remove(tPlayer);
TowerRunGame.PLAYERS_ESCAPED.remove(tPlayer);
if (TowerRunGame.PLAYERS_ALIVE.size() == 1 && TowerRunGame.PLAYERS_ESCAPED.isEmpty()) {
TowerRunGame.win(TowerRunGame.PLAYERS_ALIVE.get(0));
if (TowerRunGame.PLAYERS_ESCAPED.isEmpty() && TowerRunGame.PLAYERS_ALIVE.size() == 1) {
TowerRunGame.complete(de.steamwar.gamecore.wincondition.WinConditions.lastRemaining(TowerRunGame.PLAYERS_ALIVE));
}
}
}