public Game() { maze = new Maze(Width, Height, StartX, StartY); player = new Player(maze[new Point(StartX, StartY)]); AddCharacters(); Murderer = NPCS.Find(npc => npc is MurdererNPC) as MurdererNPC; ObjectDefinitions.AddItems(maze); }
private MurdererNPC CreateWeakMurderer() { MurdererNPC npc = new MurdererNPC("constable_barney", "", 1, 10, 5, new Weapon("Strong weapon", 10, "desc")); Room r = new Room("", new Point(0, 0)); npc.CurrentRoom = r; r.NPCsInRoom.Add(npc); return(npc); }
public void MurdererCanKillNoOneIfRoomIsEmpty() { Game game = new Game(); MurdererNPC murderer = CreateMurderer(); murderer.CurrentRoom.NPCsInRoom.Clear(); murderer.KillRandomNPCInSameRoom(game); Assert.IsTrue(murderer.CurrentRoom.NPCsInRoom.Count == 0); }
public void DropWeaponTest() { MurdererNPC murderer = CreateMurderer(); murderer.EquippedWeapon = new Zork.Objects.Weapon("Blade", 10, "a powerfull blade"); if (murderer.EquippedWeapon != null) { murderer.DropWeapon(); } Assert.IsTrue(murderer.EquippedWeapon == null); }
public void MurdererCanKillTest() { Game game = new Game(); MurdererNPC murderer = CreateMurderer(); MurdererNPC npc = CreateMurderer(); murderer.CurrentRoom.NPCsInRoom.Add(npc); npc.CurrentRoom = murderer.CurrentRoom; int countNpcsInRoom = murderer.CurrentRoom.NPCsInRoom.Count; murderer.KillRandomNPCInSameRoom(game); Assert.IsTrue(countNpcsInRoom > murderer.CurrentRoom.NPCsInRoom.Count); }
public void DropAllItemsTest() { MurdererNPC murderer = CreateMurderer(); murderer.Inventory.Add(new HealthPickup("drink", 100, "a nice drink")); murderer.Inventory.Add(new HealthPickup("drink", 100, "a nice drink")); murderer.Inventory.Add(new HealthPickup("drink", 100, "a nice drink")); murderer.Inventory.Add(new HealthPickup("drink", 100, "a nice drink")); if (murderer.Inventory.Count >= 4) { murderer.DropAllItems(); } Assert.IsTrue(murderer.Inventory.Count == 0); }
public void MurdererTriesToKillEveryXTurns() { Game game = new Game(); Maze m = new Maze(1, 1, 0, 0); MurdererNPC murderer = CreateMurderer(); murderer.Maze = m; murderer.CurrentRoom = m.Rooms[0, 0]; NPC victim = CharacterTests.CreateNPC(); victim.CurrentRoom = murderer.CurrentRoom; murderer.CurrentRoom.NPCsInRoom.Add(victim); murderer.CurrentRoom.NPCsInRoom.Add(murderer); int totalNpcs = CountNPCs(m); for (int i = 0; i < murderer.KillEveryXPlayerSteps; ++i) { murderer.PossiblyKillSomeone(game); } int totalnpcsAfterKill = CountNPCs(m); Assert.IsTrue(totalnpcsAfterKill < totalNpcs); }