public Location LoadRoomTwo() { Location returnData; returnData = new Location(); returnData.Name = "Eating Room"; bool defeatedMobs = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTowerFloorTwo.DEFEATED_ROOM_TWO_GROUP)); //Actions if (!defeatedMobs) { returnData.Description = "A room filled with tables for eating. There is a group of necromancers and bandits eating"; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> mobs = new List <Mob>(); mobs.Add(new Bandit()); mobs.Add(new Bandit()); mobs.Add(new Necromancer()); mobs.Add(new Necromancer()); CombatAction combatAction = new CombatAction("Bandits and Necromancers", mobs); combatAction.PostCombat += RoomTwoGroup; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A room with dead bodies strewn about the floor."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The floor below LocationDefinition locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomOneDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Room Two if (defeatedMobs) { locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomThreeDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomFourDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomFiveDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public static WatertownForestTowerFloorTwo GetTownInstance() { if (_WaterForestCabin == null) { _WaterForestCabin = new WatertownForestTowerFloorTwo(); } return(_WaterForestCabin); }
public Location LoadTowerFloorTwoEntrance() { Location returnData; returnData = new Location(); returnData.Name = "Bandit Tower Floor Two Entrance"; bool defeatedSkeletons = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTowerFloorTwo.DEFEATED_ENTRANCE_SKELETONS)); //Actions if (!defeatedSkeletons) { returnData.Description = "A room with dead bodies strewn about the floor and skeletons wondering around"; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> skeletons = new List <Mob>(); skeletons.Add(new Skeleton()); skeletons.Add(new Skeleton()); skeletons.Add(new Skeleton()); skeletons.Add(new Skeleton()); skeletons.Add(new Skeleton()); CombatAction combatAction = new CombatAction("Skeletons", skeletons); combatAction.PostCombat += EntranceSkeletons; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A room with dead bodies strewn about the floor."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The floor below LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetLargeHallDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Room One if (defeatedSkeletons) { locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomOneDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadRoomFour() { Location returnData; returnData = new Location(); returnData.Name = "Guard Room"; bool defeatedMobs = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTowerFloorTwo.DEFEATED_ROOM_FOUR_BANDITS)); //Actions if (!defeatedMobs) { returnData.Description = "A guard room. There is a door on the other signed guarded by four very grim men."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> mobs = new List <Mob>(); mobs.Add(new Guard()); mobs.Add(new Guard()); mobs.Add(new Guard()); mobs.Add(new Guard()); CombatAction combatAction = new CombatAction("Guards", mobs); combatAction.PostCombat += RoomFourGuards; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A guard room with four failures of guards laying dead on the ground"; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The floor below LocationDefinition locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomTwoDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Room Two if (defeatedMobs) { locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetGrandRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadGrandRoom() { Location returnData; returnData = new Location(); returnData.Name = "Grand Room"; bool defeatedMobs = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTowerFloorTwo.DEFEATED_BANDIT_KING)); //Actions if (!defeatedMobs) { returnData.Description = "A large grand room. The Bandit King is sitting on his throne."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> mobs = new List <Mob>(); mobs.Add(new BanditKing()); CombatAction combatAction = new CombatAction("Bandit King", mobs); combatAction.PostCombat += BanditKing; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A large grand room. The Bandit King lays dead at the foot of his throne."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The floor below LocationDefinition locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomFourDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); if (defeatedMobs) { locationDefinition = Watertown.GetTownInstance().GetTownCenterDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadRoomFive() { Location returnData; returnData = new Location(); returnData.Name = "Necromancer Lounge"; bool defeatedMobs = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTowerFloorTwo.DEFEATED_ROOM_FIVE_NECRO)); //Actions if (!defeatedMobs) { returnData.Description = "A small lounge area for necromancers. There are two necromancers sitting on a couch relaxing."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> mobs = new List <Mob>(); mobs.Add(new Necromancer()); mobs.Add(new Necromancer()); CombatAction combatAction = new CombatAction("Necromancers", mobs); combatAction.PostCombat += RoomFiveNecro; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A small lounge area for necromancers."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The floor below LocationDefinition locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomTwoDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadRoomThree() { Location returnData; returnData = new Location(); returnData.Name = "Empty Room"; returnData.Description = "A bare and empty room."; //Actions // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The floor below LocationDefinition locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetRoomTwoDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadLargeHall() { Location returnData; returnData = new Location(); returnData.Name = "Large Hall"; bool defeatedBanditsOne = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_LARGE_HALL_BANDITS_ONE)); bool defeatedBanditsTwo = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_LARGE_HALL_BANDITS_TWO)); bool defeatedNecroEnvoy = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_NECRO_ENVOY)); bool defeatedBanditScholar = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_BANDIT_SCHOLAR)); bool defeatedCrazedOutlawLeader = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_CRAZED_OUTLAW_LEADER)); if (!defeatedBanditsOne) { returnData.Description = "A large hall with two groups of bandits wondering about."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> bandits = new List <Mob>(); bandits.Add(new Bandit()); bandits.Add(new Bandit()); bandits.Add(new Bandit()); bandits.Add(new Bandit()); bandits.Add(new Bandit()); CombatAction combatAction = new CombatAction("Bandits", bandits); combatAction.PostCombat += LargeHallBanditsOne; locationActions.Add(combatAction); returnData.Actions = locationActions; } if (!defeatedBanditsTwo && defeatedBanditsOne) { returnData.Description = "A large hall with one group of bandits wondering about."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> bandits = new List <Mob>(); bandits.Add(new Bandit()); bandits.Add(new Bandit()); bandits.Add(new Bandit()); bandits.Add(new Bandit()); bandits.Add(new Bandit()); CombatAction combatAction = new CombatAction("Bandits", bandits); combatAction.PostCombat += LargeHallBanditsTwo; locationActions.Add(combatAction); returnData.Actions = locationActions; } if (defeatedBanditsTwo && defeatedBanditsOne) { returnData.Description = "The hall is now empty except for the bandit bodies strewn across it."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Clearing on the outside of this tower. LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Different wings here if (defeatedBanditsOne && defeatedBanditsTwo) { //West Wing locationDefinition = WatertownForestTower.GetTownInstance().GetWestWingRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Center Wing locationDefinition = WatertownForestTower.GetTownInstance().GetCenterWingRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //East Wing locationDefinition = WatertownForestTower.GetTownInstance().GetEastWingRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } if (defeatedBanditScholar && defeatedCrazedOutlawLeader && defeatedNecroEnvoy) { //Floor two locationDefinition = WatertownForestTowerFloorTwo.GetTownInstance().GetEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } //Floor Two Entrance here.... Need to also check to make sure the player has all of the keys returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }