fix: 10 bug fixes — healing dead players, kick bypass, gate race, swimming ghost, regression config, dead code cleanup, gate zone detection
This commit is contained in:
parent
b666f1b0fa
commit
d2b174b94c
35 changed files with 587 additions and 773 deletions
|
|
@ -78,6 +78,15 @@ public class EndgamePhase implements Phase {
|
|||
gateManager = session.getGateManager();
|
||||
}
|
||||
|
||||
// Если ворота уже открыты — игра завершилась по таймеру эндгейма,
|
||||
// показываем результаты сразу
|
||||
if (gateManager != null && gateManager.getOpenGateCount() > 0) {
|
||||
this.complete = true;
|
||||
announceEndgameEnd(session);
|
||||
teleportAllToLobby(session);
|
||||
return;
|
||||
}
|
||||
|
||||
// Set up sidebar
|
||||
sidebar = new Sidebar();
|
||||
for (BasePlayer bp : session.getPlayers().values()) {
|
||||
|
|
@ -101,7 +110,6 @@ public class EndgamePhase implements Phase {
|
|||
}
|
||||
}
|
||||
|
||||
updateGates(session);
|
||||
updateHatch(session);
|
||||
checkWinConditions(session);
|
||||
}
|
||||
|
|
@ -123,6 +131,10 @@ public class EndgamePhase implements Phase {
|
|||
hatch.reset();
|
||||
}
|
||||
|
||||
if (gateManager != null) {
|
||||
gateManager.resetAll();
|
||||
}
|
||||
|
||||
// exit() НЕ вызывает session.stop() — это делает transitionToNextPhase()
|
||||
// Телепорт и результаты уже обработаны в enter() или будут в teleportAllToLobby
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue