From 6cb30195f93604250af26f4c0703144f889f39e4 Mon Sep 17 00:00:00 2001 From: Chris Kearney <chris.kearney@urbanairship.com> Date: Fri, 29 Aug 2014 22:27:31 -0700 Subject: [PATCH] its a decent start to a combat system --- .../comandante/creeper/command/commands/KillCommand.java | 5 ++++- src/main/java/com/comandante/creeper/fight/FightRun.java | 9 ++++++--- src/main/java/com/comandante/creeper/player/Player.java | 1 - 3 files changed, 10 insertions(+), 5 deletions(-) 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 cd0fb156..5fe27ed1 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 80ab8998..8b59b273 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 ef7dcd9d..c6665985 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."); } } -- GitLab