diff --git a/src/main/java/cz/jzitnik/game/handlers/events/handlers/mobs/MobMineHandler.java b/src/main/java/cz/jzitnik/game/handlers/events/handlers/mobs/MobMineHandler.java new file mode 100644 index 0000000..4e846af --- /dev/null +++ b/src/main/java/cz/jzitnik/game/handlers/events/handlers/mobs/MobMineHandler.java @@ -0,0 +1,16 @@ +package cz.jzitnik.game.handlers.events.handlers.mobs; + +import cz.jzitnik.game.Game; +import cz.jzitnik.game.annotations.MineEventHandler; +import cz.jzitnik.tui.ScreenRenderer; + +public class MobMineHandler { + @MineEventHandler + public void handle(ScreenRenderer screenRenderer, Game game, int x, int y) { + var world = game.getWorld(); + + var mobs = world[y-1][x].stream().filter(block -> block.isMob() && !block.getBlockId().equals("steve")).toList(); + world[y-1][x].removeAll(mobs); + world[y][x].addAll(mobs); + } +} diff --git a/src/main/java/cz/jzitnik/game/mobs/services/cow/CowLogic.java b/src/main/java/cz/jzitnik/game/mobs/services/cow/CowLogic.java index a4a36ce..b461ae8 100644 --- a/src/main/java/cz/jzitnik/game/mobs/services/cow/CowLogic.java +++ b/src/main/java/cz/jzitnik/game/mobs/services/cow/CowLogic.java @@ -105,7 +105,7 @@ public class CowLogic @Override public void spawn(int playerX, int playerY, Game game, Terminal terminal) { - // Cordinates where player can see + // Coordinates where player can see int[] data = ScreenMovingCalculationProvider.calculate(playerX, playerY, terminal.getHeight(), terminal.getWidth(), game.getWorld()[0].length, game.getWorld().length); var world = game.getWorld();