diff --git a/src/main/java/com/comandante/creeper/Main.java b/src/main/java/com/comandante/creeper/Main.java index 71c4306a599f2253c24efc87e7ddfe68bdc9e045..13a9692c2fd9b5586352473d5762ad688d5898de 100644 --- a/src/main/java/com/comandante/creeper/Main.java +++ b/src/main/java/com/comandante/creeper/Main.java @@ -4,8 +4,8 @@ import com.comandante.creeper.managers.GameManager; import com.comandante.creeper.managers.PlayerManager; import com.comandante.creeper.managers.PlayerManagerMapDB; import com.comandante.creeper.managers.RoomManager; -import com.comandante.creeper.model.Npc; -import com.comandante.creeper.model.NpcType; +import com.comandante.creeper.model.npc.Npc; +import com.comandante.creeper.model.npc.NpcType; import com.comandante.creeper.model.Player; import com.comandante.creeper.model.PlayerMetadata; import com.comandante.creeper.model.Room; @@ -55,7 +55,15 @@ public class Main { Npc derper1 = new Npc(NpcType.DERPER); gameManager.getNpcManager().saveNpc(derper1); - roomManager.getRoom(1).addPresentNpc(derper1.getNpcId()); + roomManager.getRoom(lobby.getRoomId()).addPresentNpc(derper1.getNpcId()); + Npc derper2 = new Npc(NpcType.DERPER); + gameManager.getNpcManager().saveNpc(derper2); + roomManager.getRoom(lobby.getRoomId()).addPresentNpc(derper2.getNpcId()); + + Npc derper3 = new Npc(NpcType.DERPER); + gameManager.getNpcManager().saveNpc(derper3); + roomManager.getRoom(janitorialCloset.getRoomId()).addPresentNpc(derper3.getNpcId()); + CreeperServer creeperServer = new CreeperServer(8080, db); creeperServer.run(gameManager); diff --git a/src/main/java/com/comandante/creeper/managers/GameManager.java b/src/main/java/com/comandante/creeper/managers/GameManager.java index 21d7343a1e1ac327ce3929cec1d7d18a62fb8b3a..2aafed3fd2fa00f6a3341290227c4f229322da40 100644 --- a/src/main/java/com/comandante/creeper/managers/GameManager.java +++ b/src/main/java/com/comandante/creeper/managers/GameManager.java @@ -3,8 +3,8 @@ package com.comandante.creeper.managers; import com.comandante.creeper.command.DefaultCommandType; import com.comandante.creeper.model.Movement; -import com.comandante.creeper.model.Npc; -import com.comandante.creeper.model.NpcType; +import com.comandante.creeper.model.npc.Npc; +import com.comandante.creeper.model.npc.NpcType; import com.comandante.creeper.model.Player; import com.comandante.creeper.model.Room; import com.comandante.creeper.server.CreeperSession; @@ -31,7 +31,7 @@ public class GameManager { "╚██████╗██║ ██║███████╗███████╗██║ ███████╗██║ ██║\r\n" + " ╚â•â•â•â•â•â•╚â•╠╚â•â•╚â•â•â•â•â•â•â•╚â•â•â•â•â•â•â•╚â•╠╚â•â•â•â•â•â•â•╚â•╠╚â•â•"; - public static String VERSION = "1.0-SNAPSHOT"; + public static String VERSION = "0.1-SNAPSHOT"; private final RoomManager roomManager; private final PlayerManager playerManager; @@ -83,8 +83,6 @@ public class GameManager { return Optional.absent(); } - - public void who(Player player) { Set<Player> allPlayers = getAllPlayers(); StringBuilder stringBuilder = new StringBuilder(); @@ -259,6 +257,7 @@ public class GameManager { final Room playerCurrentRoom = getPlayerCurrentRoom(player).get(); StringBuilder sb = new StringBuilder(); sb.append(playerCurrentRoom.getRoomDescription()).append("\r\n"); + sb.append(getExits(playerCurrentRoom)); for (String searchPlayerId : playerCurrentRoom.getPresentPlayerIds()) { if (searchPlayerId.equals(player.getPlayerId())) { continue; @@ -271,7 +270,6 @@ public class GameManager { NpcType npcType = npc.getNpcType(); sb.append("A ").append(npcType.getNpcName()).append(" is here.\r\n"); } - sb.append(getExits(playerCurrentRoom)); player.getChannel().write(sb.toString()); } diff --git a/src/main/java/com/comandante/creeper/managers/NPCManager.java b/src/main/java/com/comandante/creeper/managers/NPCManager.java index fe978792f244aaabd2abfb254cc1f4ca5f707d62..89b61dcf7c2f6a15eb89fe28a80b8298db4a9518 100644 --- a/src/main/java/com/comandante/creeper/managers/NPCManager.java +++ b/src/main/java/com/comandante/creeper/managers/NPCManager.java @@ -1,7 +1,7 @@ package com.comandante.creeper.managers; -import com.comandante.creeper.model.Npc; -import com.comandante.creeper.model.NpcType; +import com.comandante.creeper.model.npc.Npc; +import com.comandante.creeper.model.npc.NpcType; import com.comandante.creeper.model.Player; import com.comandante.creeper.model.Room; import com.google.common.base.Optional; diff --git a/src/main/java/com/comandante/creeper/model/npc/Derper.java b/src/main/java/com/comandante/creeper/model/npc/Derper.java new file mode 100644 index 0000000000000000000000000000000000000000..96764fd0dbfc9bfcb447d153f9d5234dbb7ce886 --- /dev/null +++ b/src/main/java/com/comandante/creeper/model/npc/Derper.java @@ -0,0 +1,21 @@ +package com.comandante.creeper.model.npc; + + +import java.util.Arrays; +import java.util.List; + +public class Derper { + + public static List<String> PHRASES = Arrays.asList( + "Zug, zug.", + "Don't provoke me.", + "Tough guy, eh?", + "I will end you.", + "This is not a drill, I will eliminate your existence.", + "This is smash talk, I will derp you.", + "Have ever been derped by a derper? I will hurt you.", + "I was taught to provoke.", + "Oh hey I will fight you.", + "WORDS OF THREATENING NATURE!" + ); +} diff --git a/src/main/java/com/comandante/creeper/model/Npc.java b/src/main/java/com/comandante/creeper/model/npc/Npc.java similarity index 93% rename from src/main/java/com/comandante/creeper/model/Npc.java rename to src/main/java/com/comandante/creeper/model/npc/Npc.java index 00bebb6a60626e8c2a4a28e2528da06b1450d9ab..5841f6b67a5860205e75eb611642663bb4582210 100644 --- a/src/main/java/com/comandante/creeper/model/Npc.java +++ b/src/main/java/com/comandante/creeper/model/npc/Npc.java @@ -1,4 +1,4 @@ -package com.comandante.creeper.model; +package com.comandante.creeper.model.npc; import java.util.UUID; diff --git a/src/main/java/com/comandante/creeper/model/NpcType.java b/src/main/java/com/comandante/creeper/model/npc/NpcType.java similarity index 67% rename from src/main/java/com/comandante/creeper/model/NpcType.java rename to src/main/java/com/comandante/creeper/model/npc/NpcType.java index d87d1239ce42dda1b38976e558b3a73ec3c8276b..a57e5376daf0d46ec2245ca55b46de0f1f5f5537 100644 --- a/src/main/java/com/comandante/creeper/model/NpcType.java +++ b/src/main/java/com/comandante/creeper/model/npc/NpcType.java @@ -1,16 +1,13 @@ -package com.comandante.creeper.model; +package com.comandante.creeper.model.npc; import org.fusesource.jansi.Ansi; -import java.util.Arrays; import java.util.List; public enum NpcType { - DERPER(Arrays.asList( - "Zug zug.", - "Don't provoke me."), 300000, new StringBuilder().append(new Ansi().fg(Ansi.Color.RED).toString()).append("derper").append(new Ansi().reset().toString()).toString()); + DERPER(Derper.PHRASES, 30000, new StringBuilder().append(new Ansi().fg(Ansi.Color.RED).toString()).append("derper").append(new Ansi().reset().toString()).toString()); private final List<String> phrases; private final long phrasesIntervalMs;