public static WatertownSewer GetTownInstance() { if (_WatertownSewer == null) { _WatertownSewer = new WatertownSewer(); } return(_WatertownSewer); }
public Location LoadSewerLeftEntrance() { Location returnData; bool defeatedSewerRats = Convert.ToBoolean(LocationHandler.GetLocationStateValue(Watertown.LOCATION_STATE_KEY, WatertownSewerLeft.DEFEATED_FIRST_ROOM_RATS)); returnData = new Location(); returnData.Name = "Watertown Sewer Left"; //Actions if (defeatedSewerRats == false) { returnData.Description = "Mud and slime and poopoo. What a nasty place. A vicious pack of sewer rats impeede your progress"; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); List <Mob> sewerRats = new List <Mob>(); sewerRats.Add(new SewerRat()); sewerRats.Add(new SewerRat()); sewerRats.Add(new SewerRat()); sewerRats.Add(new SewerRat()); CombatAction combatAction = new CombatAction("Sewer Rats", sewerRats); combatAction.PostCombat += FirstRoomRats; locationActions.Add(combatAction); returnData.Actions = locationActions; } if (defeatedSewerRats) { returnData.Description = "Mud and slime and poopoo. What a nasty place. A pack of sewer rats lay dead on the floor."; } // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // Town Center LocationDefinition locationDefinition = WatertownSewer.GetTownInstance().GetSewerEntranceFinalDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); if (defeatedSewerRats) { locationDefinition = WatertownSewerLeft.GetTownInstance().GetRoomTwoDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadSewerRightEntrance() { Location returnData; returnData = new Location(); returnData.Name = "Watertown Sewer Right"; returnData.Description = "Mud and slime and poopoo. The floor is littered with dead bodies."; // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); // Town Center LocationDefinition locationDefinition = WatertownSewer.GetTownInstance().GetSewerEntranceFinalDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); locationDefinition = WatertownSewerRight.GetTownInstance().GetRoomTwoDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }
public Location LoadTownCenter() { Location returnData; LocationAction locationAction; returnData = new Location(); returnData.Name = "Watertown Town Center"; returnData.Description = "Welcome to the cozy Watertown Town Center."; // Location Actions List <LocationAction> locationActions = new List <LocationAction>(); locationAction = new DisplayStatsAction(); locationActions.Add(locationAction); locationAction = new DisplayInventoryAction(); locationActions.Add(locationAction); locationAction = new DisplayPotionBagAction(); locationActions.Add(locationAction); locationAction = new DisplayEquippedAction(); locationActions.Add(locationAction); locationAction = new AffixSwapperAction(); locationActions.Add(locationAction); locationAction = new StoreAction(); locationActions.Add(locationAction); locationAction = new MainMenuAction(); locationActions.Add(locationAction); locationAction = new ExitGame(); locationActions.Add(locationAction); returnData.Actions = locationActions; // Adjacent Locations Dictionary <string, LocationDefinition> adjacentLocationDefinitions = new Dictionary <string, LocationDefinition>(); LocationDefinition locationDefinition = GetArenaDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); locationDefinition = GetInnDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); locationDefinition = GetConstableOfficeDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); Accomplishment sewerKingAccomplishment = Watertown.GetWatertownAccomplishments().Find(x => x.Name.Contains("Sewer King")); if (GameState.Hero.Accomplishments.Contains(sewerKingAccomplishment)) { locationDefinition = WatertownSewer.GetTownInstance().GetSewerEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } Accomplishment banditCaptainAccomplishment = Watertown.GetWatertownAccomplishments().Find(x => x.Name.Contains("Bandit Captain")); if (GameState.Hero.Accomplishments.Contains(banditCaptainAccomplishment)) { locationDefinition = WatertownForest.GetTownInstance().GetForestEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } Accomplishment murderRoomAccomplishment = Watertown.GetWatertownAccomplishments().Find(x => x.Name.Contains("Bandit Murder")); if (GameState.Hero.Accomplishments.Contains(murderRoomAccomplishment)) { locationDefinition = WatertownBanditHouse.GetTownInstance().GetEntranceDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } Accomplishment banditKingAccomplishment = Watertown.GetWatertownAccomplishments().Find(x => x.Name.Contains("Bandit God King")); if (GameState.Hero.Accomplishments.Contains(banditKingAccomplishment)) { locationDefinition = Ankou.GetTownInstance().GetTownCenterDefinition(); adjacentLocationDefinitions.Add(locationDefinition.LocationKey, locationDefinition); } returnData.AdjacentLocationDefinitions = adjacentLocationDefinitions; return(returnData); }