Доказать прохождение поздних уровней ботами

This commit is contained in:
2026-08-18 02:06:58 +03:00
parent 1ebad500f3
commit a8f5ddc0a9
5 changed files with 396 additions and 2 deletions
@@ -82,6 +82,24 @@ public final class LevelCatalogTest {
assertFalse(finale.doors.isEmpty());
}
@Test
public void levelSixFreezerKillsOnTheFloorButNotOnTopOfItsFrozenBlock() {
LevelDefinition level = LevelCatalog.get(5);
LevelDefinition.Hazard freezer = null;
for (LevelDefinition.Hazard hazard : level.hazards) {
if (hazard.type == LevelDefinition.HazardType.FREEZER) freezer = hazard;
}
assertTrue("Level 6 must contain its freezer", freezer != null);
float frozenBlockTop = 880f - 104f;
assertTrue("A floor-running volunteer must still hit the freezer",
GameMath.intersects(688f, 780f, 62f, 100f,
freezer.box.x, freezer.box.y, freezer.box.width, freezer.box.height));
assertFalse("A volunteer standing on the frozen block must clear the freezer",
GameMath.intersects(688f, frozenBlockTop - 100f, 62f, 100f,
freezer.box.x, freezer.box.y, freezer.box.width, freezer.box.height));
}
@Test
public void everyDoorAndControlledPlatformHasADeclaredSignalSource() {
for (LevelDefinition level : LevelCatalog.all()) {