private static void PopulateLocations() { // Create each location Location home = new Location(LOCATION_ID_HOME, "Casa", "O teu quarto está muito desarrumado..."); Location townSquare = new Location(LOCATION_ID_TOWN_SQUARE, "Praça da cidade", "Vês uma fonte de água."); Vendor hobbitWares = new Engine.Vendor("Hobbit mercante", 50); hobbitWares.AddItemToInventory(ItemByID(ITEM_ID_PIECE_OF_FUR), 5); hobbitWares.AddItemToInventory(ItemByID(ITEM_ID_RAT_TAIL), 3); hobbitWares.AddItemToInventory(ItemByID(ITEM_ID_CLUB), 1); hobbitWares.AddItemToInventory(ItemByID(ITEM_ID_RUSTY_SWORD), 1); townSquare.VendorWorkingHere = hobbitWares; Location alchemistHut = new Location(LOCATION_ID_ALCHEMIST_HUT, "Cabana do Alquimista", "Tem umas plantas estranhas nas prateleiras."); alchemistHut.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_ALCHEMIST_GARDEN); Location alchemistsGarden = new Location(LOCATION_ID_ALCHEMISTS_GARDEN, "Jardim do Alquimista", "Muitas flores e frutos crescem aqui."); alchemistsGarden.AddMonster(MONSTER_ID_RAT, 100); Location farmhouse = new Location(LOCATION_ID_FARMHOUSE, "Rancho", "Uma casa na quinta. O agricultor parece ocupado."); farmhouse.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_FARMERS_FIELD); Location farmersField = new Location(LOCATION_ID_FARM_FIELD, "Campo do Agricultor", "Linhas de vegetais crescem aqui."); farmersField.AddMonster(MONSTER_ID_SNAKE_BLACK, 70); farmersField.AddMonster(MONSTER_ID_SNAKE_COPPERHEAD, 30); Location guardPost = new Location(LOCATION_ID_GUARD_POST, "Posto de Guarda", "O guarda é intimidante.", ItemByID(ITEM_ID_ADVENTURER_PASS)); Location bridge = new Location(LOCATION_ID_BRIDGE, "Ponte", "Uma ponte de pedra sobre um rio largo."); Location spiderField = new Location(LOCATION_ID_SPIDER_FIELD, "Floresta Obscura", "Teias de aranhas cobrem as árvores nesta floresta."); spiderField.AddMonster(MONSTER_ID_GIANT_SPIDER, 100); // Link the locations together home.LocationToNorth = townSquare; townSquare.LocationToNorth = alchemistHut; townSquare.LocationToSouth = home; townSquare.LocationToEast = guardPost; townSquare.LocationToWest = farmhouse; farmhouse.LocationToEast = townSquare; farmhouse.LocationToWest = farmersField; farmersField.LocationToEast = farmhouse; alchemistHut.LocationToSouth = townSquare; alchemistHut.LocationToNorth = alchemistsGarden; alchemistsGarden.LocationToSouth = alchemistHut; guardPost.LocationToEast = bridge; guardPost.LocationToWest = townSquare; bridge.LocationToWest = guardPost; bridge.LocationToEast = spiderField; spiderField.LocationToWest = bridge; // Add the locations to the static list _locations.Add(home); _locations.Add(townSquare); _locations.Add(guardPost); _locations.Add(alchemistHut); _locations.Add(alchemistsGarden); _locations.Add(farmhouse); _locations.Add(farmersField); _locations.Add(bridge); _locations.Add(spiderField); }
private static void PopulateLocations() { // Create each location Location home = new Location(LOCATION_ID_HOME, "Home", "Your house. You really need to clean up the place."); Location townSquare = new Location(LOCATION_ID_TOWN_SQUARE, "Town square", "You see a fountain."); Vendor bobTheRatCatcher = new Vendor("Bob the Rat-Catcher"); bobTheRatCatcher.AddItemToInventory(ItemByID(ITEM_ID_RUSTY_SWORD), 1); bobTheRatCatcher.AddItemToInventory(ItemByID(ITEM_ID_PIECE_OF_FUR), 5); bobTheRatCatcher.AddItemToInventory(ItemByID(ITEM_ID_RAT_TAIL), 3); townSquare.VendorWorkingHere = bobTheRatCatcher; Location alchemistHut = new Location(LOCATION_ID_ALCHEMIST_HUT, "Alchemist's hut", "There are many strange plants on the shelves."); alchemistHut.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_ALCHEMIST_GARDEN); Location alchemistsGarden = new Location(LOCATION_ID_ALCHEMISTS_GARDEN, "Alchemist's garden", "Many plants are growing here."); alchemistsGarden.AddMonster(MONSTER_ID_RAT, 100); Location farmhouse = new Location(LOCATION_ID_FARMHOUSE, "Farmhouse", "There is a small farmhouse, with a farmer in front."); farmhouse.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_FARMERS_FIELD); Location farmersField = new Location(LOCATION_ID_FARM_FIELD, "Farmer's field", "You see rows of vegetables growing here."); farmersField.AddMonster(MONSTER_ID_SNAKE, 100); Location guardPost = new Location(LOCATION_ID_GUARD_POST, "Guard post", "There is a large, tough-looking guard here.", ItemByID(ITEM_ID_ADVENTURER_PASS)); Location bridge = new Location(LOCATION_ID_BRIDGE, "Bridge", "A stone bridge crosses a wide river."); bridge.AddMonster(MONSTER_ID_BANDIT, 100); Location spiderField = new Location(LOCATION_ID_SPIDER_FIELD, "Forest", "You see spider webs covering covering the trees in this forest."); spiderField.AddMonster(MONSTER_ID_GIANT_SPIDER, 100); // Link the locations together home.LocationToNorth = townSquare; townSquare.LocationToNorth = alchemistHut; townSquare.LocationToSouth = home; townSquare.LocationToEast = guardPost; townSquare.LocationToWest = farmhouse; farmhouse.LocationToEast = townSquare; farmhouse.LocationToWest = farmersField; farmersField.LocationToEast = farmhouse; alchemistHut.LocationToSouth = townSquare; alchemistHut.LocationToNorth = alchemistsGarden; alchemistsGarden.LocationToSouth = alchemistHut; guardPost.LocationToEast = bridge; guardPost.LocationToWest = townSquare; bridge.LocationToWest = guardPost; bridge.LocationToEast = spiderField; spiderField.LocationToWest = bridge; // Add the locations to the static list _locations.Add(home); _locations.Add(townSquare); _locations.Add(guardPost); _locations.Add(alchemistHut); _locations.Add(alchemistsGarden); _locations.Add(farmhouse); _locations.Add(farmersField); _locations.Add(bridge); _locations.Add(spiderField); }
public bool LoadWorld() { try { XmlDocument worldData = new XmlDocument(); worldData.LoadXml(this._xmlWorld); RaiseMessage(MessageTypes.LoadingItems); #region Populate Items _items = new List <Item>(); foreach (XmlNode node in worldData.SelectNodes("/World/items/item")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; string NamePlural = node.SelectSingleNode("NamePlural").InnerText; int Price = Convert.ToInt32(node.SelectSingleNode("Price").InnerText); _items.Add(new Item(Id, Name, NamePlural, Price)); } #endregion #region Populate Weapons foreach (XmlNode node in worldData.SelectNodes("/World/items/weapon")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; string NamePlural = node.SelectSingleNode("NamePlural").InnerText; int Price = Convert.ToInt32(node.SelectSingleNode("Price").InnerText); int MinimumDamage = Convert.ToInt32(node.SelectSingleNode("MinimumDamage").InnerText); int MaximumDamage = Convert.ToInt32(node.SelectSingleNode("MaximumDamage").InnerText); _items.Add(new Weapon(Id, Name, NamePlural, MinimumDamage, MaximumDamage, Price)); } #endregion #region Populate Healing Potions foreach (XmlNode node in worldData.SelectNodes("/World/items/healingPotion")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; string NamePlural = node.SelectSingleNode("NamePlural").InnerText; int Price = Convert.ToInt32(node.SelectSingleNode("Price").InnerText); int AmountToHeal = Convert.ToInt32(node.SelectSingleNode("AmountToHeal").InnerText); _items.Add(new HealingPotion(Id, Name, NamePlural, AmountToHeal, Price)); } #endregion RaiseMessage(MessageTypes.LoadingMonsters); #region Populate Monsters _monsters = new List <Monster>(); foreach (XmlNode node in worldData.SelectNodes("/World/Monsters/Monster")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; int MaximumDamage = Convert.ToInt32(node.SelectSingleNode("MaximumDamage").InnerText); int RewardExperiencePoints = Convert.ToInt32(node.SelectSingleNode("RewardExperiencePoints").InnerText); int RewardGold = Convert.ToInt32(node.SelectSingleNode("RewardGold").InnerText); int CurrentHitPoints = Convert.ToInt32(node.SelectSingleNode("CurrentHitPoints").InnerText); int MaximumHitPoints = Convert.ToInt32(node.SelectSingleNode("MaximumHitPoints").InnerText); Monster monster = new Monster(Id, Name, MaximumDamage, RewardExperiencePoints, RewardGold, CurrentHitPoints, MaximumHitPoints); foreach (XmlNode nodechild in node.SelectNodes("LootTable/LootItem")) { int IdItem = Convert.ToInt32(nodechild.SelectSingleNode("IdItem").InnerText); int DropPercentage = Convert.ToInt32(nodechild.SelectSingleNode("DropPercentage").InnerText); bool IsDefaultItem = Convert.ToBoolean(nodechild.SelectSingleNode("IsDefaultItem").InnerText); monster.LootTable.Add(new LootItem(ItemByID(IdItem), DropPercentage, IsDefaultItem)); } _monsters.Add(monster); } #endregion RaiseMessage(MessageTypes.LoadingQuests); #region Populate Quests _quests = new List <Quest>(); foreach (XmlNode node in worldData.SelectNodes("/World/Quests/Quest")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; string Description = node.SelectSingleNode("Description").InnerText; int RewardExperiencePoints = Convert.ToInt32(node.SelectSingleNode("RewardExperiencePoints").InnerText); int RewardGold = Convert.ToInt32(node.SelectSingleNode("RewardGold").InnerText); Quest quest = new Quest(Id, Name, Description, RewardExperiencePoints, RewardGold); foreach (XmlNode nodechild in node.SelectNodes("QuestCompletionItems/QuestCompletionItem")) { int IdItem = Convert.ToInt32(nodechild.SelectSingleNode("IdItem").InnerText); int Quantity = Convert.ToInt32(nodechild.SelectSingleNode("Quantity").InnerText); quest.QuestCompletionItems.Add(new QuestCompletionItem(ItemByID(IdItem), Quantity)); } int RewardItemId = Convert.ToInt32(node.SelectSingleNode("RewardItem/IdItem").InnerText); quest.RewardItem = ItemByID(RewardItemId); _quests.Add(quest); } #endregion RaiseMessage(MessageTypes.LoadingVendors); #region Populate Vendors _vendors = new List <Vendor>(); foreach (XmlNode node in worldData.SelectNodes("/World/Vendors/Vendor")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; Vendor vendor = new Vendor(Id, Name); foreach (XmlNode nodechild in node.SelectNodes("Inventory/Item")) { int IdItem = Convert.ToInt32(nodechild.SelectSingleNode("IdItem").InnerText); int Quantity = Convert.ToInt32(nodechild.SelectSingleNode("Quantity").InnerText); vendor.AddItemToInventory(ItemByID(IdItem), Quantity); } _vendors.Add(vendor); } #endregion RaiseMessage(MessageTypes.LoadingLocations); #region Populate Locations _locations = new List <Location>(); foreach (XmlNode node in worldData.SelectNodes("/World/Locations/Location")) { int Id = Convert.ToInt32(node.SelectSingleNode("Id").InnerText); string Name = node.SelectSingleNode("Name").InnerText; string Description = node.SelectSingleNode("Description").InnerText; Location location = new Location(Id, Name, Description); if (node.SelectSingleNode("Picture") != null) { string Picture = node.SelectSingleNode("Picture").InnerText; location.Picture = Picture; } if (node.SelectSingleNode("ItemRequiredToEnter") != null) { location.ItemRequiredToEnter = ItemByID(Convert.ToInt32(node.SelectSingleNode("ItemRequiredToEnter").InnerText)); } if (node.SelectSingleNode("QuestAvailableHere") != null) { location.QuestAvailableHere = QuestByID(Convert.ToInt32(node.SelectSingleNode("QuestAvailableHere").InnerText)); } if (node.SelectSingleNode("VendorWorkingHere") != null) { location.VendorWorkingHere = VendorByID(Convert.ToInt32(node.SelectSingleNode("VendorWorkingHere").InnerText)); } if (node.SelectSingleNode("Monsters") != null) { foreach (XmlNode nodechild in node.SelectNodes("Monsters/Monster")) { int IdMonster = Convert.ToInt32(nodechild.SelectSingleNode("IdMonster").InnerText); int PercentageOfAppearance = Convert.ToInt32(nodechild.SelectSingleNode("PercentageOfAppearance").InnerText); location.AddMonster(IdMonster, PercentageOfAppearance); } } _locations.Add(location); } #endregion #region Populate Neighborhood foreach (XmlNode node in worldData.SelectNodes("/World/Neighborhood/Neighbor")) { int IdLocation = Convert.ToInt32(node.SelectSingleNode("IdLocation").InnerText); Location location = LocationByID(IdLocation); if (node.SelectSingleNode("North") != null) { location.LocationToNorth = LocationByID(Convert.ToInt32(node.SelectSingleNode("North").InnerText)); } if (node.SelectSingleNode("South") != null) { location.LocationToSouth = LocationByID(Convert.ToInt32(node.SelectSingleNode("South").InnerText)); } if (node.SelectSingleNode("East") != null) { location.LocationToEast = LocationByID(Convert.ToInt32(node.SelectSingleNode("East").InnerText)); } if (node.SelectSingleNode("West") != null) { location.LocationToWest = LocationByID(Convert.ToInt32(node.SelectSingleNode("West").InnerText)); } } #endregion return(true); } catch (Exception ex) { //throw new Exception("Error mientras se estaba " + pasos, ex); return(false); } }
private static void PopulateLocations() { // Create each location var home = new Location(LOCATION_ID_HOME, "Дом", "Ваш дом. Вы сожалеете, что снова оказались здесь."); var shepherdsHouse = new Location(LOCATION_ID_SHEPHERDS_HOUSE, "Лачуга пастуха", "Вы видите пастуха. У него беспокойный вид."); shepherdsHouse.QuestsAvailableHere.Add(QuestByID(QUEST_ID_BRING_A_SHOVEL)); shepherdsHouse.QuestsAvailableHere.Add(QuestByID(QUEST_ID_HELP_WITH_SNAKES)); var skiff = new Location(LOCATION_ID_SKIFF, "Предлесок", "Пугающий вой пронизывает вас насквозь. Кровь застывает в жилах. Вы чувствуете, что вы попали в окружение волков."); skiff.AddMonster(MONSTER_ID_WOLF, 85); skiff.AddMonster(MONSTER_ID_BEAR, 15); var forestersHut = new Location(LOCATION_ID_FORESTERS_HUT, "Хата лесника", "Вы видите необычного лесника. У вас складывается ощущение, что он сыграет важную роль в вашем приключении."); forestersHut.QuestsAvailableHere.Add(QuestByID(QUEST_ID_PURGE_THE_WOLVES)); forestersHut.QuestsAvailableHere.Add(QuestByID(QUEST_ID_PURGE_THE_BEARS)); forestersHut.QuestsAvailableHere.Add(QuestByID(QUEST_ID_PURGE_THE_DANGER_OF_THE_ANCIENT_FOREST)); var village = new Location(LOCATION_ID_VILLAGE, "Деревня", "Вы приходите в деревню. Лица жители максимально отстранены. Кажется вам есть чем тут заняться."); village.QuestsAvailableHere.Add(QuestByID(QUEST_ID_HELP_SHEPHERD_WITH_SNAKES)); var field = new Location(LOCATION_ID_FIELD, "Поле", "Вы пришли на заросшее поле, похоже этот год тоже будет голодным..."); var forest = new Location(LOCATION_ID_FOREST, "Лес", "По мере вашего приближения количество окружающих Вас ягод и пчелиных ульев увеличивалось. Вы уже поняли кого вы здесь встретите."); forest.AddMonster(MONSTER_ID_WOLF, 10); forest.AddMonster(MONSTER_ID_BEAR, 85); forest.AddMonster(MONSTER_ID_TRENT, 5); var ancientForest = new Location(LOCATION_ID_ANCIENT_FOREST, "Древний лес", "Вы входите в глубокий лес, деревья здесь совершенно необычайной формы. Похоже, что именно здесь и началось заражение леса. Пора остановить порчу."); ancientForest.AddMonster(MONSTER_ID_WOLF, 5); ancientForest.AddMonster(MONSTER_ID_BEAR, 10); ancientForest.AddMonster(MONSTER_ID_TRENT, 85); var roadToTheCity = new Location(LOCATION_ID_ROAD_TO_THE_CITY, "Дорога в город", "Сельские стражники согласны пускать селян в город только по письменному заверению старосты."); var swarmOfPoisonousSnakes = new Location(LOCATION_ID_SWARM_OF_POISONOUS_SNAKES, "Рой ядовитых змей", "Шипение множествав змей застилает ужасом ваш разум."); swarmOfPoisonousSnakes.AddMonster(MONSTER_ID_SNAKE, 95); swarmOfPoisonousSnakes.AddMonster(MONSTER_ID_GIANT_SNAKE, 5); var scaryCave = new Location(LOCATION_ID_SCARY_CAVE, "Страшная пещера", "Вы чувствуете, что что-то смотрит на Вас.\"Движение - смерть\" - слышите Вы в своей голове"); scaryCave.AddMonster(MONSTER_ID_SNAKE, 30); scaryCave.AddMonster(MONSTER_ID_GIANT_SNAKE, 70); var hydrasLair = new Location(LOCATION_ID_HYDRAS_LAIR, "Логово гидры", "Отсюда можно выйти либо победителем, либо фаршем."); hydrasLair.AddMonster(MONSTER_ID_HYDRA, 90); hydrasLair.AddMonster(MONSTER_ID_GIANT_SNAKE, 10); var outskirts = new Location(LOCATION_ID_OUTSKIRTS, "Окраины города", "Бедное население бродит вдоль улочек. Незнакомцы поздываю к себе.", ItemByID(ITEM_ID_HEADMAN_PERMISSION_PASS)); outskirts.AddMonster(MONSTER_ID_ROUGE, 75); outskirts.AddMonster(MONSTER_ID_ROUGE_LEADER, 25); var prison = new Location(LOCATION_ID_PRISON, "Тюрьма", "Вы проходите в тюрьму. Здесь стоит всего несколько стражников на бесконечные залы клеток с заключёнными. Похоже здесь действительно безопасно гулять."); prison.QuestsAvailableHere.Add(QuestByID(QUEST_ID_SEARCH_FOR_A_BEST_FRIEND)); var sewage = new Location(LOCATION_ID_SEWAGE, "Канализационные стоки", "Миф Голливуда стоит перед вами.", ItemByID(ITEM_ID_SEWAGE_KEY)); sewage.AddMonster(MONSTER_ID_CROCODILE, 100); var trollCave = new Location(LOCATION_ID_TROLL_CAVE, "Пещера троллей", "Куча разбросанных ботинок привела вас в пещеру трёх троллей. Их зовут ОГГ, ПОГГ И РОГГ."); trollCave.AddMonster(MONSTER_ID_TROLL, 100); var townSquare = new Location(LOCATION_ID_TOWN_SQUARE, "Городская площадь", "На площади достаточно людно. Сложно представить почему центр настолько разительно отличается от закоулок, в которых Вы недавно были."); var gate = new Location(LOCATION_ID_GATE, "Ворота", "Похоже здесь стоит почти вся стража города. Стражники отчётливо дают вам понять, что для того чтобы пройти дальше, вам нужно личное разрешение Короля Давида Сказачного."); var hordeOfZombies = new Location(LOCATION_ID_HORDE_OF_ZOMBIES, "Орда зомби", "Похоже, что всё былое население мира предстало здесь перед вами в виде оживших мертвецов, пройти куда-то дальше получится только смекалкой."); hordeOfZombies.AddMonster(MONSTER_ID_ZOMBIE, 100); var graveyardOfBones = new Location(LOCATION_ID_GRAVEYARD_OF_BONES, "Кладбище костей", "Вам в детстве говорили, что живых драконов не бывает. Это оказалось правдой лишь отчасти. Находящийся здесь дракон жив, хотя и состоит лишь из костей. Вам очень повезло, что мимо него можно тихо пройти."); graveyardOfBones.AddMonster(MONSTER_ID_BONE_DRAGON, 100); var kingsPalace = new Location(LOCATION_ID_KINGS_PALACE, "Дворец короля", "Двроец Давида Сказачного. Смотря на него Вам становится не по себе."); kingsPalace.QuestsAvailableHere.Add(QuestByID(QUEST_ID_REMOVE_THE_CURSE_FROM_THE_KING)); kingsPalace.QuestsAvailableHere.Add(QuestByID(QUEST_ID_BRING_BACK_THE_HOLY_CORE)); kingsPalace.QuestsAvailableHere.Add(QuestByID(QUEST_ID_PUNISH_THE_TROLLS)); kingsPalace.QuestsAvailableHere.Add(QuestByID(QUEST_ID_DISASSEMBLE_THE_DRAGON_ON_THE_BONES)); kingsPalace.QuestsAvailableHere.Add(QuestByID(QUEST_ID_FINISH_THIS_STORY)); kingsPalace.QuestsAvailableHere.Add(QuestByID(QUEST_ID_TAKE_YOUR_DESTINY)); var familyCrypt = new Location(LOCATION_ID_FAMILY_CRYPT, "Семейный склеп", "Семейный склеп Давида Сказачного. Пора успокоить взбунтовавшихся призраков."); familyCrypt.AddMonster(MONSTER_ID_GHOST, 100); var moundOfDeath = new Location(LOCATION_ID_MOUND_OF_DEATH, "Курган смерти", "Пора остановить производство зомби. Проблему с существующими это хоть и не решит, но новым лучше всё-таки не появляться.", ItemByID(ITEM_ID_QUINTESSENCE_OF_PURITY)); moundOfDeath.AddMonster(MONSTER_ID_ZOMBIE, 75); moundOfDeath.AddMonster(MONSTER_ID_FLESH_GATHERER, 25); var scaryNecromancerCastle = new Location(LOCATION_ID_SCARY_NECROMANCER_CASTLE, "Замок страшного некроманта", "Все Ваши десткие и студенческие страхи воплотились перед Вами. \n ПОБЕДА ИЛИ СМЕРТЬ! \n ЛОК'ТАР ОГАР, ДРУГ!"); scaryNecromancerCastle.AddMonster(MONSTER_ID_NECROMANCER, 100); // Vendors, working in locations var bigBob = new Vendor("Большой Боб"); bigBob.AddItemToInventory(ItemByID(ITEM_ID_SHOVEL), 5); bigBob.AddItemToInventory(ItemByID(ITEM_ID_SIMPLE_HEALING_POTION), 50); bigBob.AddItemToInventory(ItemByID(ITEM_ID_HEALING_POTION), 10); village.VendorWorkingHere = bigBob; var traderJim = new Vendor("Торговец Джим"); traderJim.AddItemToInventory(ItemByID(ITEM_ID_HEALING_POTION), 5); traderJim.AddItemToInventory(ItemByID(ITEM_ID_BIG_HEALING_POTION), 50); traderJim.AddItemToInventory(ItemByID(ITEM_ID_GREAT_HEALING_POTION), 10); traderJim.AddItemToInventory(ItemByID(ITEM_ID_POISON_DAGGER), 10); traderJim.AddItemToInventory(ItemByID(ITEM_ID_POTION_OF_ETERNAL_LIFE), 10); townSquare.VendorWorkingHere = traderJim; // Link the locations together home.LocationToSouth = shepherdsHouse; home.LocationToEast = village; shepherdsHouse.LocationToNorth = home; shepherdsHouse.LocationToEast = field; shepherdsHouse.LocationToSouth = skiff; skiff.LocationToNorth = shepherdsHouse; skiff.LocationToEast = forest; skiff.LocationToSouth = forestersHut; forestersHut.LocationToNorth = skiff; village.LocationToWest = home; village.LocationToEast = roadToTheCity; village.LocationToSouth = field; field.LocationToNorth = village; field.LocationToEast = swarmOfPoisonousSnakes; field.LocationToSouth = forest; field.LocationToWest = shepherdsHouse; forest.LocationToNorth = field; forest.LocationToSouth = ancientForest; forest.LocationToWest = skiff; ancientForest.LocationToNorth = forest; roadToTheCity.LocationToEast = outskirts; roadToTheCity.LocationToWest = village; swarmOfPoisonousSnakes.LocationToSouth = scaryCave; swarmOfPoisonousSnakes.LocationToWest = field; scaryCave.LocationToNorth = swarmOfPoisonousSnakes; scaryCave.LocationToSouth = hydrasLair; hydrasLair.LocationToNorth = scaryCave; outskirts.LocationToEast = townSquare; outskirts.LocationToSouth = prison; outskirts.LocationToWest = roadToTheCity; prison.LocationToNorth = outskirts; prison.LocationToSouth = sewage; sewage.LocationToNorth = prison; trollCave.LocationToEast = graveyardOfBones; townSquare.LocationToEast = kingsPalace; townSquare.LocationToSouth = gate; townSquare.LocationToWest = outskirts; gate.LocationToNorth = townSquare; gate.LocationToSouth = hordeOfZombies; hordeOfZombies.LocationToNorth = gate; hordeOfZombies.LocationToEast = moundOfDeath; hordeOfZombies.LocationToSouth = graveyardOfBones; graveyardOfBones.LocationToNorth = hordeOfZombies; graveyardOfBones.LocationToEast = scaryNecromancerCastle; graveyardOfBones.LocationToWest = trollCave; kingsPalace.LocationToSouth = familyCrypt; kingsPalace.LocationToWest = townSquare; familyCrypt.LocationToNorth = kingsPalace; moundOfDeath.LocationToWest = hordeOfZombies; scaryNecromancerCastle.LocationToWest = graveyardOfBones; // Add the locations to the static list _locations.Add(home); _locations.Add(shepherdsHouse); _locations.Add(skiff); _locations.Add(forestersHut); _locations.Add(village); _locations.Add(field); _locations.Add(forest); _locations.Add(ancientForest); _locations.Add(roadToTheCity); _locations.Add(swarmOfPoisonousSnakes); _locations.Add(scaryCave); _locations.Add(hydrasLair); _locations.Add(outskirts); _locations.Add(prison); _locations.Add(sewage); _locations.Add(trollCave); _locations.Add(townSquare); _locations.Add(gate); _locations.Add(hordeOfZombies); _locations.Add(graveyardOfBones); _locations.Add(kingsPalace); _locations.Add(familyCrypt); _locations.Add(moundOfDeath); _locations.Add(scaryNecromancerCastle); }
private static void PopulateLocations() { // Create each location Location home = new Location(LOCATION_ID_HOME, "Home", "Your eyes shoot open as mutter to yourself.... Damn that was strange....."); Location pathToTown = new Location(LOCATION_ID_PATH_TO_TOWN, "Path to town", "You step out of your door and see the path heading north toward town"); Location townSquare = new Location(LOCATION_ID_TOWN_SQUARE, "Town square", "Circling the fountian as you enter, you see paths leading in all directions."); Location alchemistHut = new Location(LOCATION_ID_ALCHEMIST_HUT, "Alchemist's hut", "There are many strange plants on the shelves."); alchemistHut.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_ALCHEMIST_GARDEN); Location alchemistsGarden = new Location(LOCATION_ID_ALCHEMISTS_GARDEN, "Alchemist's garden", "Many plants are growing here."); alchemistsGarden.AddMonster(MONSTER_ID_RAT, 80); alchemistsGarden.AddMonster(MONSTER_ID_SNAKE, 20); Location farmhouse = new Location(LOCATION_ID_FARMHOUSE, "Farmhouse", "There is a small farmhouse, with a farmer in front."); farmhouse.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_FARMERS_FIELD); Location farmersField = new Location(LOCATION_ID_FARM_FIELD, "Farmer's field", "You see rows of vegetables growing here."); farmersField.AddMonster(MONSTER_ID_SNAKE, 100); Location guardPost = new Location(LOCATION_ID_GUARD_POST, "Guard post", "There is a large, tough-looking guard here.", ItemByID(ITEM_ID_ADVENTURER_PASS)); Location bridge = new Location(LOCATION_ID_BRIDGE, "Bridge", "A stone bridge crosses a wide river."); Location spiderField = new Location(LOCATION_ID_SPIDER_FIELD, "Forest", "You see spider webs covering covering the trees in this forest."); spiderField.AddMonster(MONSTER_ID_GIANT_SPIDER, 100); Vendor townMerchant = new Vendor("Alwyin: General Goods"); townMerchant.AddItemToInventory(ItemByID(ITEM_ID_PIECE_OF_FUR), 5); townMerchant.AddItemToInventory(ItemByID(ITEM_ID_RAT_TAIL), 3); townMerchant.AddItemToInventory(ItemByID(ITEM_ID_SPIDER_KILLER), 1); townSquare.VendorWorkingHere = townMerchant; // Link the locations together home.LocationToNorth = pathToTown; pathToTown.LocationToNorth = townSquare; pathToTown.LocationToSouth = home; townSquare.LocationToNorth = alchemistHut; townSquare.LocationToSouth = pathToTown; townSquare.LocationToEast = guardPost; townSquare.LocationToWest = farmhouse; farmhouse.LocationToEast = townSquare; farmhouse.LocationToWest = farmersField; farmersField.LocationToEast = farmhouse; alchemistHut.LocationToSouth = townSquare; alchemistHut.LocationToNorth = alchemistsGarden; alchemistsGarden.LocationToSouth = alchemistHut; guardPost.LocationToEast = bridge; guardPost.LocationToWest = townSquare; bridge.LocationToWest = guardPost; bridge.LocationToEast = spiderField; spiderField.LocationToWest = bridge; // Add the locations to the static list _locations.Add(home); _locations.Add(pathToTown); _locations.Add(townSquare); _locations.Add(guardPost); _locations.Add(alchemistHut); _locations.Add(alchemistsGarden); _locations.Add(farmhouse); _locations.Add(farmersField); _locations.Add(bridge); _locations.Add(spiderField); }
private static void PopulateLocation() { //odds y<0 evens y>0 Location Camp = new Location(Location_ID_Camp, "Camp", "The makeshift place you call home... cozy", false); // Location Forest = new Location(Location_ID_Forst, "Forest", "The entrance to the forest from the pasture of your camp.", false); Forest.NewInstanceOfMonsterLivingHere(); Forest.AddMonster(Monster_ID_Bandit, 20); Forest.AddMonster(Monster_ID_Arcobot, 20); Forest.AddMonster(Monster_ID_Ent, 1); Forest.MonsterAppearanceChance = 50; Location f1 = new Location(Location_ID_Forst, "Forest", "The entrance to the forest from the pasture of your camp.", false);//0,1 f1.NewInstanceOfMonsterLivingHere(); f1.AddMonster(Monster_ID_Bandit, 20); f1.AddMonster(Monster_ID_Arcobot, 20); f1.AddMonster(Monster_ID_Ent, 1); f1.MonsterAppearanceChance = 50; Location f2 = new Location(Location_ID_Forst, "Forest", "The entrance to the forest from the pasture of your camp.", false); f2.NewInstanceOfMonsterLivingHere(); f2.AddMonster(Monster_ID_Bandit, 20); f2.AddMonster(Monster_ID_Arcobot, 20); f2.AddMonster(Monster_ID_Ent, 1); f2.MonsterAppearanceChance = 50; Location f3 = new Location(Location_ID_Forst, "Forest", "You notice a clearing of the trees, and see a cave; also seeing something enter the cave.", false); f3.NewInstanceOfMonsterLivingHere(); f3.AddMonster(Monster_ID_Bandit, 20); f3.AddMonster(Monster_ID_Arcobot, 20); f3.AddMonster(Monster_ID_Ent, 5); f3.MonsterAppearanceChance = 50; Location f4 = new Location(Location_ID_Forst, "Forest", "seems like some of the trees, are gone.", false); f4.NewInstanceOfMonsterLivingHere(); f4.AddMonster(Monster_ID_Bandit, 20); f4.AddMonster(Monster_ID_Arcobot, 20); f4.AddMonster(Monster_ID_Ent, 5); f4.MonsterAppearanceChance = 50; Location f5 = new Location(Location_ID_Forst, "Forest", "The plant life is more alive than usual.", false); f5.NewInstanceOfMonsterLivingHere(); f5.AddMonster(Monster_ID_Bandit, 20); f5.AddMonster(Monster_ID_Arcobot, 20); f5.AddMonster(Monster_ID_Ent, 5); f5.MonsterAppearanceChance = 50; Location f6 = new Location(Location_ID_Forst, "Forest", "Tall trees stand in your way, These trees are so big a weagon can fit though one.", false); f6.NewInstanceOfMonsterLivingHere(); f6.AddMonster(Monster_ID_Bandit, 20); f6.AddMonster(Monster_ID_Arcobot, 20); f6.MonsterAppearanceChance = 50; Location f7 = new Location(Location_ID_Forst, "Forest", "Tall trees stand in your way, These trees are so big a weagon can fit though one.", false); f7.NewInstanceOfMonsterLivingHere(); f7.AddMonster(Monster_ID_Bandit, 20); f7.AddMonster(Monster_ID_Arcobot, 20); f7.AddMonster(Monster_ID_Ent, 10); f7.MonsterAppearanceChance = 50; Location f8 = new Location(Location_ID_Forst, "Forest", "There are hunting traps around the area, noting humans are around this area; hopfully friendly.", false); f8.NewInstanceOfMonsterLivingHere(); f8.AddMonster(Monster_ID_Bandit, 20); f8.AddMonster(Monster_ID_Arcobot, 20); f8.MonsterAppearanceChance = 50; Location f10 = new Location(Location_ID_Forst, "Forest", "There are hunting traps around the area, noting humans are around this area; hopfully friendly.", false); f10.NewInstanceOfMonsterLivingHere(); f10.AddMonster(Monster_ID_Bandit, 20); f10.AddMonster(Monster_ID_Arcobot, 20); f10.MonsterAppearanceChance = 50; Location f10a = new Location(Location_ID_Forst, "Forest", "Tall trees stand in your way, These trees are so big a weagon can fit though one.", false); f10a.NewInstanceOfMonsterLivingHere(); f10a.AddMonster(Monster_ID_Bandit, 20); f10a.AddMonster(Monster_ID_Arcobot, 20); f10a.MonsterAppearanceChance = 50; Location f6a = new Location(Location_ID_Forst, "Forest", "There are hunting traps around the area, noting humans are around this area; hopfully friendly.", false); f6a.NewInstanceOfMonsterLivingHere(); f6a.AddMonster(Monster_ID_Bandit, 20); f6a.AddMonster(Monster_ID_Arcobot, 20); f6a.MonsterAppearanceChance = 50; Location f01 = new Location(Location_ID_Forst, "Forest", "Tall trees stand in your way, These trees are so big a weagon can fit though one.", false); f01.NewInstanceOfMonsterLivingHere(); f01.AddMonster(Monster_ID_Bandit, 20); f01.AddMonster(Monster_ID_Arcobot, 20); f01.MonsterAppearanceChance = 50; Location f02 = new Location(Location_ID_Forst, "Forest", "Tall trees stand in your way, These trees are so big a weagon can fit though one.", false); f02.NewInstanceOfMonsterLivingHere(); f02.AddMonster(Monster_ID_Bandit, 20); f02.AddMonster(Monster_ID_Arcobot, 20); f02.MonsterAppearanceChance = 50; Location f03 = new Location(Location_ID_Forst, "Forest", "Tall trees stand, but also large plants; noticing more bones around the forest", false); f03.NewInstanceOfMonsterLivingHere(); f03.AddMonster(Monster_ID_Bandit, 20); f03.AddMonster(Monster_ID_Arcobot, 20); f03.AddMonster(Monster_ID_Ent, 10); f03.AddMonster(Monster_ID_Man_Eater, 5); f03.MonsterAppearanceChance = 50; // Location Jungle = new Location(Location_ID_Jungle, "Jungle", "Vines hang from the tree tops, barely little light come from the canopy; don't travel at night here.", false); // Location Mountain = new Location(Location_ID_Mountain, "Mountain", "Far pass the town and jungle is mountains it going to take a while to get their; and it looks cold bring a coat.", false); // Location Town = new Location(Location_ID_Town, "Lost Town", "Before the Jungle stand a small hut town, peaceful and calm without bandits atleast.", false); Location t8a = new Location(Location_ID_Town, "Lost Town", "The Town seems pleasant, with its stalls for its little shops", false); Location t8b = new Location(Location_ID_Town, "Lost Town", "More people are going around the place, going from to where.", false); Location t8c = new Location(Location_ID_Town, "Lost Town", "Before you stands a large building, probally a court house.", false); Location Jail = new Location(Location_ID_Town, "Jail", "No one seems to be locked up yet.", false); Jail.MonsterAppearanceChance = 1; Jail.AddMonster(Monster_ID_BORIS, 1); Location GuildHall = new Location(Location_ID_Town, "Guild Hall", "Looks like some random jobs can be found here, look like you'll need more gold.", false); GuildHall.QuestAvailableHere = QuestByID(Quest_ID_Clear_retreive_5_Chucks_of_lether); Location Med = new Location(Location_ID_Town, "Clinic", "Rest here, if you feeling a bit down", false); Med.QuestAvailableHere = QuestByID(Quest_ID_Clear_Kill_5_arcobot); Location Shop = new Location(Location_ID_LostsSHOP, "Shop", "Welecome to the Shop", false); // Change later Vendortron9000 Vendy = new Vendortron9000("Vendy"); Vendy.Additemtoinventory(ItemByID(Item_ID_Chunks_of_leather), 999); Vendy.Additemtoinventory(ItemByID(Item_ID_hedgeapple), 999); Vendy.Additemtoinventory(ItemByID(Item_ID_Sword), 99); Vendy.Additemtoinventory(ItemByID(Item_ID_Staff), 99); Vendy.Additemtoinventory(ItemByID(Item_ID_arcobot_Fang), 99); Vendy.Additemtoinventory(ItemByID(Item_ID_Bow), 99); Shop.Vending = Vendy; Location Bar = new Location(Location_ID_LostsBar, "Bar", "You Enter the Bar, a few people are sitting down drink their booze.", false); // Location BanditEncampment = new Location(Location_ID_Bandit_Encampment, "Bandit Encampment", "Bandits stand gaurd, The wall that surrounds them makes it only one way in one way out.", false); // Location Pasture = new Location(Location_ID_Pasture, "Pasture", "You stand in the pasture, where your camps lays.", false); Location p1 = new Location(Location_ID_Pasture, "Pasture", "The open green field stands before you.", false); Location p2 = new Location(Location_ID_Pasture, "Pasture", "The open green field stands before you.", false); // Location Cave = new Location(Location_ID_Cave, "Cave Entrance", "There seems to be a cave wonders of what could be in the bellows of it.", false); // Cave.NewInstanceOfMonsterLivingHere(); Cave.AddMonster(Monster_ID_2BearsHighFiving, 20); Cave.MonsterAppearanceChance = 80; Location DeepCave = new Location(Location_ID_DeepCave, "Deep Cave", "The further you go the darker it gets.", false); // Location Beach = new Location(Location_ID_Beach, "Beach", "Pearly white sand on a sunny day, to bad theres creatures here.", false); // Location Water = new Location(Location_ID_Water, "Water", "The water is cool and deep, if you enter it might just rip you ashreds.", false); // Camp.LocationToNorth = Pasture; Pasture.LocationToEast = p1; Pasture.LocationToWest = p2; //OG LINE Pasture.LocationToNorth = Forest; Pasture.LocationToSouth = Camp; p2.LocationToEast = Pasture; //0,1 TOP ROW p2.LocationToNorth = f2; p1.LocationToWest = Pasture; p1.LocationToNorth = f1; //0,-1 BOTTOM ROW //FOREST AREA Forest.LocationToNorth = f01; //1,0 OG LINE Forest.LocationToEast = f1; Forest.LocationToWest = f2; Forest.LocationToSouth = Pasture; f2.LocationToEast = Forest;//1,1 // top f2.LocationToNorth = f4; f2.LocationToSouth = p2; f1.LocationToNorth = f3;//1,-1 f1.LocationToSouth = p1; f1.LocationToWest = Forest; f01.LocationToNorth = f02;//2,0 OG LINE f01.LocationToEast = f3; f01.LocationToSouth = Forest; f01.LocationToWest = f4; f4.LocationToNorth = f6;//2,1 f4.LocationToEast = f01; f4.LocationToSouth = f2; f3.LocationToNorth = f5;//2.-1 f3.LocationToWest = f01; f3.LocationToSouth = f1; f3.LocationToEast = Cave; f02.LocationToNorth = f03; //3,0 f02.LocationToEast = f5; f02.LocationToWest = f6; f02.LocationToSouth = f01; f6.LocationToNorth = f8; //3,1 f6.LocationToWest = f6a; f6.LocationToSouth = f4; f6.LocationToEast = f02; f5.LocationToNorth = f7; //3,-1 f5.LocationToSouth = f3; f5.LocationToWest = f02; f6a.LocationToNorth = Town;//3,2 f6a.LocationToEast = f6; f03.LocationToEast = f7; //4,0 f03.LocationToSouth = f02; f03.LocationToWest = f8; f7.LocationToWest = f03; //4,-1 f7.LocationToSouth = f5; f8.LocationToWest = Town; //4,1 f8.LocationToEast = f03; f8.LocationToNorth = f10; f8.LocationToSouth = f6; f10.LocationToSouth = f8;//5,1 f10.LocationToWest = f10a; f10a.LocationToEast = f10;//5,2 f10a.LocationToSouth = Town; //Town Town.LocationToSouth = f6a; //4,2 OR ENTRANCE OF TOWN Town.LocationToNorth = f10a; Town.LocationToEast = f8; Town.LocationToWest = t8a; t8a.LocationToWest = t8b; //4,3 t8a.LocationToEast = Town; t8a.LocationToSouth = Jail; // Jailhouse at 3,3 t8b.LocationToEast = t8a; // 4,4 t8b.LocationToNorth = Bar; //Bar t8b.LocationToSouth = GuildHall; //Guild Hall t8b.LocationToWest = t8c; t8c.LocationToEast = t8b; //4,5 t8c.LocationToSouth = Med; //Med t8c.LocationToNorth = Shop; //Shop Med.LocationToNorth = t8c; //Med 3,5 Shop.LocationToSouth = t8c; //Shop 5,5 GuildHall.LocationToNorth = t8b; //Guild Hall 3,4 Bar.LocationToSouth = t8b; //Bar 5,4 Jail.LocationToNorth = t8a; //Jail 3,3 //Cave Cave.LocationToWest = f3; //BREAKER _locations.Add(Camp); _locations.Add(Town); _locations.Add(Forest); _locations.Add(Cave); _locations.Add(Pasture); _locations.Add(Shop); }
private static void PopulateLocations() { //vendors Vendor bobTheRatCatcher = new Vendor("Bob the Rat-Catcher"); bobTheRatCatcher.AddItemToInventory(ItemByID(ITEM_ID_PIECE_OF_FUR), 5); bobTheRatCatcher.AddItemToInventory(ItemByID(ITEM_ID_RAT_TAIL), 3); bobTheRatCatcher.AddItemToInventory(ItemByID(ITEM_ID_HEALING_POTION), 1); //Creats each location Location home = new Location(LOCATION_ID_HOME, "Home:", narrative.HomeDetail); Location townSquare = new Location(LOCATION_ID_TOWN_SQUARE, "Town square:", narrative.TownSqrDetail); Location alchemistHut = new Location(LOCATION_ID_ALCHEMIST_HUT, "Alchemist's hut:", narrative.AlchemistHutDetail); Location alchemistsGarden = new Location(LOCATION_ID_ALCHEMISTS_GARDEN, "Alchemist's garden:", narrative.AlchemistGardenDetail); Location farmhouse = new Location(LOCATION_ID_FARMHOUSE, "Farmhouse:", narrative.FarmhouseDetail); Location farmersField = new Location(LOCATION_ID_FARM_FIELD, "Farmer's field:", narrative.FarmerFieldDetail); Location guardPost = new Location(LOCATION_ID_GUARD_POST, "Guard post:", narrative.GaurdPostDetail, ItemByID(ITEM_ID_ADVENTURER_PASS)); Location bridge = new Location(LOCATION_ID_BRIDGE, "Bridge:", narrative.BridgeDetail); Location spiderField = new Location(LOCATION_ID_SPIDER_FIELD, "Forest:", narrative.ForrestDetail); //Adds Quests to loactaions alchemistHut.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_ALCHEMIST_GARDEN); farmhouse.QuestAvailableHere = QuestByID(QUEST_ID_CLEAR_FARMERS_FIELD); //Adds Monsters (NAME, % chance of appearing) alchemistsGarden.AddMonster(MONSTER_ID_RAT, 34); alchemistsGarden.AddMonster(MONSTER_ID_SNAKE, 33); alchemistsGarden.AddMonster(MONSTER_ID_GIANT_SPIDER, 33); farmersField.AddMonster(MONSTER_ID_SNAKE, 75); spiderField.AddMonster(MONSTER_ID_GIANT_SPIDER, 75); // Link the locations together home.LocationToNorth = townSquare; townSquare.LocationToNorth = alchemistHut; townSquare.LocationToSouth = home; townSquare.LocationToEast = guardPost; townSquare.LocationToWest = farmhouse; townSquare.VendorWorkingHere = bobTheRatCatcher; //vendor farmhouse.LocationToEast = townSquare; farmhouse.LocationToWest = farmersField; farmersField.LocationToEast = farmhouse; alchemistHut.LocationToSouth = townSquare; alchemistHut.LocationToNorth = alchemistsGarden; alchemistsGarden.LocationToSouth = alchemistHut; guardPost.LocationToEast = bridge; guardPost.LocationToWest = townSquare; bridge.LocationToWest = guardPost; bridge.LocationToEast = spiderField; bridge.VendorWorkingHere = bobTheRatCatcher; //vendor spiderField.LocationToWest = bridge; // Add the locations to the list _locations.Add(home); _locations.Add(townSquare); _locations.Add(guardPost); _locations.Add(alchemistHut); _locations.Add(alchemistsGarden); _locations.Add(farmhouse); _locations.Add(farmersField); _locations.Add(bridge); _locations.Add(spiderField); }