public Location LoadTowerEntrance() { Location returnData; returnData = new Location(); returnData.Name = "Bandit Tower Entrance"; returnData.Description = "A room lined with skulls along the wall."; //Actions // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Clearing on the outside of this tower. LocationDefinition locationDefinition = WatertownForestClearingBeforeTower.GetTownInstance().GetClearingDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Large Hall locationDefinition = WatertownForestTower.GetTownInstance().GetLargeHallDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public static WatertownForestTower GetTownInstance() { if (_WaterForestCabin == null) { _WaterForestCabin = new WatertownForestTower(); } 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 LoadEastWingRoom() { Location returnData; returnData = new Location(); returnData.Name = "East Wing Room"; bool defeatedOutlaws = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_EAST_WING_OUTLAWS)); if (!defeatedOutlaws) { returnData.Description = "A small room with four crazed outlaws running around within"; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> crazedOutlaws = new List <Mob>(); crazedOutlaws.Add(new CrazedOutlaw()); crazedOutlaws.Add(new CrazedOutlaw()); crazedOutlaws.Add(new CrazedOutlaw()); crazedOutlaws.Add(new CrazedOutlaw()); CombatAction combatAction = new CombatAction("Crazed Outlaws", crazedOutlaws); combatAction.PostCombat += EastWingCrazedOutlaws; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A small room overcrowded by the dead outlaw bodies on the floor."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Large Hall LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetLargeHallDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Bandit Study here if (defeatedOutlaws) { locationDefinition = WatertownForestTower.GetTownInstance().GetCushionedRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadWestWingRoom() { Location returnData; returnData = new Location(); returnData.Name = "West Wing Room"; bool defeatedSkeletons = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_WEST_WING_ROOM_SKELETONS)); if (!defeatedSkeletons) { returnData.Description = "A medium sized room with three skeletons wondering about it."; // 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()); CombatAction combatAction = new CombatAction("Skeletons", skeletons); combatAction.PostCombat += WestWingSkeletons; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { 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().GetLargeHallDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Large Room here if (defeatedSkeletons) { locationDefinition = WatertownForestTower.GetTownInstance().GetLargeRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadCenterWingRoom() { Location returnData; returnData = new Location(); returnData.Name = "Center Wing Room"; bool defeatedBandits = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_CENTER_WING_BANDITS)); if (!defeatedBandits) { returnData.Description = "A medium sized room with two bandits roaming about it"; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> bandits = new List <Mob>(); bandits.Add(new Bandit()); bandits.Add(new Bandit()); CombatAction combatAction = new CombatAction("Bandits", bandits); combatAction.PostCombat += CenterWingBandits; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A medium sized room with two dead bandit bodies strewn across the floor."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Large Hall LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetLargeHallDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Bandit Study here if (defeatedBandits) { locationDefinition = WatertownForestTower.GetTownInstance().GetBanditStudyDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadCushionedRoom() { Location returnData; returnData = new Location(); returnData.Name = "Cushioned Room"; bool defeatedCrazedOutlawLeader = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_CRAZED_OUTLAW_LEADER)); if (!defeatedCrazedOutlawLeader) { returnData.Description = "A small room that's completely cushioned. There is a man jumping around laughing with a crazed look inside."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> crazedOutlawLeasder = new List <Mob>(); crazedOutlawLeasder.Add(new CrazedOutlawLeader()); CombatAction combatAction = new CombatAction("Crazed Outlaw Leader", crazedOutlawLeasder); combatAction.PostCombat += CrazedOutlawLeader; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A small room that's completely cushioned."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Clearing on the outside of this tower. LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetEastWingRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadBanditStudy() { Location returnData; returnData = new Location(); returnData.Name = "Large Room"; bool defeatedBanditScholar = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_BANDIT_SCHOLAR)); if (!defeatedBanditScholar) { returnData.Description = "A small room lined with bookshelves and a desk overflowing with parchments. A scholar is sitting in a chair pouring over various documents."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> banditScholar = new List <Mob>(); banditScholar.Add(new BanditScholar()); CombatAction combatAction = new CombatAction("Bandit Scholar", banditScholar); combatAction.PostCombat += BanditScholar; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "A small room lined with bookshelves and a desk overflowing with parchments."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Clearing on the outside of this tower. LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetCenterWingRoomDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadLargeRoom() { Location returnData; returnData = new Location(); returnData.Name = "Large Room"; bool defeatedNecroEnvoy = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestTower.DEFEATED_NECRO_ENVOY)); if (!defeatedNecroEnvoy) { returnData.Description = "A large room with the necromancer's envoy standing in the middle of it."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> necroEnvoy = new List <Mob>(); necroEnvoy.Add(new NecroEnvoy()); CombatAction combatAction = new CombatAction("Necromancer Envoy", necroEnvoy); combatAction.PostCombat += NecroEnvoy; locationActions.Add(combatAction); returnData.Actions = locationActions; } else { returnData.Description = "The room is blackened with dark magic from some great struggle."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // The Clearing on the outside of this tower. LocationDefinition locationDefinition = WatertownForestTower.GetTownInstance().GetWestWingRoomDefinition(); 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); }
public Location LoadClearing() { Location returnData; returnData = new Location(); returnData.Name = "Large Circular Clearing"; bool defeatedBanditsOne = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestClearingBeforeTower.DEFEATED_CLEARING_SKELETONS_GROUP_ONE)); bool defeatedBanditsTwo = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownForestClearingBeforeTower.DEFEATED_CLEARING_SKELETONS_GROUP_TWO)); //Actions if (!defeatedBanditsOne) { returnData.Description = "The clearing is rather large with two groups of bandits roaming about. There is a tower in the middle of the clearing."; // 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 += ClearingBanditsOne; locationActions.Add(combatAction); returnData.Actions = locationActions; } if (!defeatedBanditsTwo && defeatedBanditsOne) { returnData.Description = "The clearing is rather large with one group of bandits roaming about. There is a tower in the middle of the clearing."; // 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 += ClearingBanditsTwo; locationActions.Add(combatAction); returnData.Actions = locationActions; } if (defeatedBanditsTwo && defeatedBanditsOne) { returnData.Description = "The clearing is rather large with several dead bodies of bandits strewn across the ground. There is a tower in the middle of the clearing."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // Town Center LocationDefinition locationDefinition = WatertownForestClearingBeforeTower.GetTownInstance().GetEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); //Add the tower here if (defeatedBanditsTwo && defeatedBanditsOne) { locationDefinition = WatertownForestTower.GetTownInstance().GetEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }