diff --git a/src/main/java/com/comandante/creeper/command/commands/KillCommand.java b/src/main/java/com/comandante/creeper/command/commands/KillCommand.java index cd0fb1564d26f678868d4e086378da7e6297aa18..5fe27ed156dc7494627f0c8b1faf995b769f82f1 100644 --- a/src/main/java/com/comandante/creeper/command/commands/KillCommand.java +++ b/src/main/java/com/comandante/creeper/command/commands/KillCommand.java @@ -35,8 +35,11 @@ public class KillCommand extends Command { @Override public void run() { - Player player = getGameManager().getPlayerManager().getPlayer(getPlayerId()); + if (FightManager.isActiveFight(creeperSession)) { + commandWrite("You are already in a fight!"); + return; + } ArrayList<String> originalMessageParts = getOriginalMessageParts(); if (originalMessageParts.size() == 1) { commandWrite("You need to specify who you want to kill."); diff --git a/src/main/java/com/comandante/creeper/fight/FightRun.java b/src/main/java/com/comandante/creeper/fight/FightRun.java index 80ab89987b10de8d71419d3e9d19ce40bb555961..8b59b2730bc02d009726a84f7e6585af8b57bcb1 100644 --- a/src/main/java/com/comandante/creeper/fight/FightRun.java +++ b/src/main/java/com/comandante/creeper/fight/FightRun.java @@ -36,18 +36,21 @@ public class FightRun implements Callable<FightResults> { gameManager.getPlayerManager().savePlayerMetadata(playerMetadata); + FightResults fightResults = new FightResultsBuilder().setNpcWon(false).setPlayerWon(false).createFightResults();; + if (playerStats.getCurrentHealth() <= 0) { gameManager.getChannelUtils().write(player.getPlayerId(), "You died."); gameManager.getChannelUtils().writeToRoom(player.getPlayerId(), player.getPlayerName() + " is now dead."); - return new FightResultsBuilder().setNpcWon(true).setPlayerWon(false).createFightResults(); + fightResults = new FightResultsBuilder().setNpcWon(true).setPlayerWon(false).createFightResults(); } if (npcStats.getCurrentHealth() <= 0) { gameManager.getChannelUtils().writeNoPrompt(player.getPlayerId(), "You killed " + npc.getName()); gameManager.getChannelUtils().writeToRoom(player.getPlayerId(), npc.getDieMessage()); gameManager.getEntityManager().deleteNpcEntity(npc.getEntityId()); - return new FightResultsBuilder().setNpcWon(false).setPlayerWon(true).createFightResults(); + fightResults = new FightResultsBuilder().setNpcWon(false).setPlayerWon(true).createFightResults(); } - return new FightResultsBuilder().setNpcWon(false).setPlayerWon(false).createFightResults(); + gameManager.getChannelUtils().writeOnlyPrompt(player.getPlayerId()); + return fightResults; } } diff --git a/src/main/java/com/comandante/creeper/player/Player.java b/src/main/java/com/comandante/creeper/player/Player.java index ef7dcd9d3acad0a8eed7c7f1fb62d939708c9350..c666598549d1da2344dbf2767ccc70051489dd6f 100644 --- a/src/main/java/com/comandante/creeper/player/Player.java +++ b/src/main/java/com/comandante/creeper/player/Player.java @@ -53,7 +53,6 @@ public class Player extends CreeperEntity { if (gameManager.getPlayerManager().getPlayerMetadata(Main.createPlayerId(playerName)).getStats().getCurrentHealth() < 100) { gameManager.getPlayerManager().updatePlayerHealth(Main.createPlayerId(playerName), 10); - gameManager.getChannelUtils().writeNoPrompt(Main.createPlayerId(playerName), "Health healed by 10."); } }