public static List <Room> ListOfRooms() { var areas = new List <Room> { Ambush.TutorialRoom1(), Ambush.TutorialRoom2(), Ambush.TutorialLostInTheWoods(), Ambush.TutorialLostInTheWoods2(), Ambush.TutorialLostInTheWoods3(), Ambush.TutorialLostInTheWoods4(), Ambush.TutorialLostInTheWoods5(), Ambush.TutorialLostInTheWoods6(), Ambush.TutorialGoblinCamp(), Ambush.TutorialGoblinCampTentNorth(), Ambush.TutorialGoblinCampTentSouth(), Awakening.TempleOfTyr(), Anker.Anker.VillageSquare(), Anker.Anker.SquareWalkOutsideTavern(), Anker.Anker.SquareWalkOutsideStables(), Anker.Anker.RedLionStables(), Anker.Anker.SquareWalkCommerceCorner(), Anker.Anker.SquareWalkEastOfCentre(), Anker.Anker.SquareWalkEntrance(), Anker.Anker.SquareWalkSouthWestOfCentre(), Anker.Anker.SquareWalkWestOfCentre(), Anker.Anker.SquareWalkSouthOfCentre(), Anker.Anker.DrunkenSailor(), Anker.Anker.GeneralStore(), Anker.Anker.MetalMedley(), Anker.Anker.VillageHall(), Anker.Anker.VillageHallEntrance(), Anker.Anker.VillageHallEldersRoom(), Anker.Anker.TempleRoad(), Anker.Anker.TempleRoad2(), Anker.Anker.TempleRoad3(), Anker.Anker.TempleEntrance(), Anker.Anker.TempleOfTyr(), Anker.Anker.TempleRoad4(), Anker.Anker.TempleGraveyard(), Anker.Anker.TempleGraveyard1(), Anker.Anker.TempleGraveyard2(), Anker.Anker.TempleGraveyard3(), Anker.Anker.TempleGraveyard4(), Anker.Anker.TempleGraveyard5(), Anker.Anker.TempleGraveyard6(), Anker.Anker.PathToTheSquare(), Anker.Anker.AnkerLane(), Anker.Anker.AnkerLaneWest21(), Anker.Anker.AnkerLaneWest25(), Anker.Anker.AnkerLaneWest37(), Anker.Anker.AnkerLaneEast22(), Anker.Anker.AnkerLaneEast23(), Anker.Anker.AnkerLaneEast24(), Anker.Anker.AnkerHome(), Anker.Anker.AnkerHome2(), Anker.Anker.AnkerHome3(), Anker.Anker.AnkerHome4(), Anker.Anker.AnkerHome5(), Anker.Anker.AnkerHome6(), Anker.Anker.AnkerHome31(), Anker.Anker.AnkerHome32(), Anker.Anker.AnkerHome33(), Anker.Anker.AnkerHome34(), Anker.Anker.AnkerHome35(), Anker.Anker.AnkerHome36(), Anker.Anker.AnkerLaneEast40(), Anker.Anker.AnkerLaneGate(), Anker.AnkerFarm.AnkerRoad(), Anker.AnkerFarm.RoadThroughFarm(), Anker.AnkerFarm.Farm(), Anker.AnkerFarm.Windmill(), Anker.AnkerFarm.CropFields(), Anker.AnkerFarm.CropFields1(), Anker.AnkerFarm.CropFields2(), Anker.AnkerFarm.CropFields3(), Anker.AnkerFarm.AnkerRoad1(), Anker.AnkerFarm.AnkerRoad2(), Anker.AnkerFarm.AnkerRoad3(), Anker.AnkerFarm.RiverBank(), Anker.AnkerFarm.SawMill(), Anker.AnkerFarm.Pasture(), Anker.AnkerFarm.TheBridge(), Anker.AnkerFarm.PalusRiver(), Anker.AnkerFarm.PalusRiver0(), Anker.AnkerFarm.PalusRiver1(), Anker.AnkerFarm.PalusRiver2(), Anker.AnkerFarm.PalusRiver3(), Anker.AnkerFarm.HermitsHome(), }; return(areas); }
// Load the monster.txt drop file. private void LoadDropFile(bool edit) { var lines = (edit == false) ? File.ReadAllLines(GetPathOfSelectedItem()) : textBoxDropList.Lines; for (int i = 0; i < lines.Length; i++) { if (lines[i].StartsWith(";Gold")) { if (lines[i + 1].StartsWith("1/")) { var workingLine = lines[i + 1].Split(' '); GoldOdds = workingLine[0].Remove(0, 2); Gold = workingLine[2]; break; } else { GoldOdds = "0"; Gold = "0"; } } } string[] Headers = new string[37] { ";Weapons", ";Armours", ";Helmets", ";Necklaces", ";Bracelets", ";Rings", ";Amulets", ";Belts", ";Boots", ";Stones", ";Torches", ";Potions", ";Ores", ";Meat", ";Crafting Materials", ";Scrolls", ";Gems", ";Mount", ";Books", ";Nothing", ";Script", ";Reins", ";Bells", ";Saddle", ";Ribbon", ";Mask", ";Food", ";Hook", ";Float", ";Bait", ";Finder", ";Reel", ";Fish", ";Quest", ";Awakening", ";Pets", ";Transform" }; for (int i = 0; i < Headers.Length; i++) { for (int j = 0; j < lines.Length; j++) { if (lines[j].StartsWith(Headers[i])) { for (int k = j + 1; k < lines.Length; k++) { if (lines[k].StartsWith(";")) { break; } var workingLine = lines[k].Split(' '); if (workingLine.Length < 2) { continue; } var quest = ""; if (workingLine.Length > 2 && workingLine[2] == "Q") { quest = workingLine[2]; } DropItem newDropItem = new DropItem { Odds = workingLine[0], Name = workingLine[1], Quest = quest }; switch (i) { case 0: Weapon.Add(newDropItem); break; case 1: Armour.Add(newDropItem); break; case 2: Helmet.Add(newDropItem); break; case 3: Necklace.Add(newDropItem); break; case 4: Bracelet.Add(newDropItem); break; case 5: Ring.Add(newDropItem); break; case 6: Amulet.Add(newDropItem); break; case 7: Belt.Add(newDropItem); break; case 8: Boot.Add(newDropItem); break; case 9: Stone.Add(newDropItem); break; case 10: Torch.Add(newDropItem); break; case 11: Potion.Add(newDropItem); break; case 12: Ore.Add(newDropItem); break; case 13: Meat.Add(newDropItem); break; case 14: CraftingMaterial.Add(newDropItem); break; case 15: Scrolls.Add(newDropItem); break; case 16: Gem.Add(newDropItem); break; case 17: Mount.Add(newDropItem); break; case 18: Book.Add(newDropItem); break; case 19: Nothing.Add(newDropItem); break; case 20: Script.Add(newDropItem); break; case 21: Reins.Add(newDropItem); break; case 22: Bells.Add(newDropItem); break; case 23: Saddle.Add(newDropItem); break; case 24: Ribbon.Add(newDropItem); break; case 25: Mask.Add(newDropItem); break; case 26: Food.Add(newDropItem); break; case 27: Hook.Add(newDropItem); break; case 28: Float.Add(newDropItem); break; case 29: Bait.Add(newDropItem); break; case 30: Finder.Add(newDropItem); break; case 31: Reel.Add(newDropItem); break; case 32: Fish.Add(newDropItem); break; case 33: Quest.Add(newDropItem); break; case 34: Awakening.Add(newDropItem); break; case 35: Pets.Add(newDropItem); break; case 36: Transform.Add(newDropItem); break; default: break; } } } } } }
static void Main(string[] args) { //TODO: Clean up :) using (var db = new LiteDatabase(@"C:\MyData.db")) { var col = db.GetCollection <Room>("Room"); Console.WriteLine("Cleaning DB"); db.DropCollection("Room"); Console.WriteLine("Compiling Areas."); var areaSpeed = new Stopwatch(); areaSpeed.Start(); var areas = new List <Room> { Ambush.TutorialRoom1(), Ambush.TutorialRoom2(), Ambush.TutorialLostInTheWoods(), Ambush.TutorialLostInTheWoods2(), Ambush.TutorialLostInTheWoods3(), Ambush.TutorialLostInTheWoods4(), Ambush.TutorialLostInTheWoods5(), Ambush.TutorialLostInTheWoods6(), Ambush.TutorialGoblinCamp(), Ambush.TutorialGoblinCampTentNorth(), Ambush.TutorialGoblinCampTentSouth(), Awakening.TempleOfTyr(), Anker.VillageSquare(), Anker.SquareWalkOutsideTavern(), Anker.SquareWalkOutsideStables(), Anker.RedLionStables(), Anker.SquareWalkCommerceCorner(), Anker.SquareWalkEastOfCentre(), Anker.SquareWalkEntrance(), Anker.SquareWalkSouthWestOfCentre(), Anker.SquareWalkWestOfCentre(), Anker.SquareWalkSouthOfCentre(), Anker.DrunkenSailor(), Anker.GeneralStore(), Anker.MetalMedley(), Anker.VillageHall(), Anker.VillageHallEntrance(), Anker.VillageHallEldersRoom(), Anker.TempleRoad(), Anker.TempleRoad2(), Anker.TempleRoad3(), Anker.TempleEntrance(), Anker.PathToTheSquare(), Anker.AnkerLane(), Anker.AnkerLaneWest21(), Anker.AnkerLaneWest25(), Anker.AnkerLaneWest37(), Anker.AnkerLaneEast22(), Anker.AnkerLaneEast23(), Anker.AnkerLaneEast24(), Anker.AnkerHome(), Anker.AnkerHome2(), Anker.AnkerHome3(), Anker.AnkerHome4(), Anker.AnkerHome5(), Anker.AnkerHome6(), Anker.AnkerHome31(), Anker.AnkerHome32(), Anker.AnkerHome33(), Anker.AnkerHome34(), Anker.AnkerHome35(), Anker.AnkerHome36(), }; areaSpeed.Stop(); Console.WriteLine("Compiling Areas Completed in {0}ms.", areaSpeed.Elapsed.Milliseconds); //check areas for duplicate ids Console.WriteLine("Adding Area's to Database"); var addSpeed = new Stopwatch(); addSpeed.Start(); foreach (var area in areas) { Console.WriteLine("Added {0}", area.title); col.Insert(Guid.NewGuid(), area); } addSpeed.Stop(); Console.WriteLine("Adding Area's to Database Completed in {0}ms.", addSpeed.Elapsed.Milliseconds); Console.WriteLine("{0} Areas added", areas.Count); Console.ReadLine(); } }
// Add the item to the drop list private void buttonAdd_Click(object sender, EventArgs e) { int dropChance; int.TryParse(textBoxItemOdds.Text, out dropChance); if (dropChance < 1) { dropChance = 1; } string quest = QuestOnlyCheckBox.Checked ? "Q" : ""; try { switch (tabControlSeperateItems.SelectedTab.Tag.ToString()) { case "Weapon": Weapon.Add(new DropItem { Name = listBoxWeapon.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Armour": Armour.Add(new DropItem { Name = listBoxArmour.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Helmet": Helmet.Add(new DropItem { Name = listBoxHelmet.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Necklace": Necklace.Add(new DropItem { Name = listBoxNecklace.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Bracelet": Bracelet.Add(new DropItem { Name = listBoxBracelet.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Ring": Ring.Add(new DropItem { Name = listBoxRing.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Amulet": Amulet.Add(new DropItem { Name = listBoxAmulet.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Belt": Belt.Add(new DropItem { Name = listBoxBelt.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Boots": Boot.Add(new DropItem { Name = listBoxBoot.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Stone": Stone.Add(new DropItem { Name = listBoxStone.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Torch": Torch.Add(new DropItem { Name = listBoxTorch.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Potion": Potion.Add(new DropItem { Name = listBoxPotion.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Ore": Ore.Add(new DropItem { Name = listBoxOre.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Meat": Meat.Add(new DropItem { Name = listBoxMeat.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "CraftingMaterial": CraftingMaterial.Add(new DropItem { Name = listBoxCraftingMaterial.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}" }); break; case "Scroll": Scrolls.Add(new DropItem { Name = listBoxScroll.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Gem": Gem.Add(new DropItem { Name = listBoxGem.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Mount": Mount.Add(new DropItem { Name = listBoxMount.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Book": Book.Add(new DropItem { Name = listBoxBook.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Nothing": Nothing.Add(new DropItem { Name = listBoxNothing.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Script": Script.Add(new DropItem { Name = listBoxScript.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Reins": Reins.Add(new DropItem { Name = listBoxReins.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Bells": Bells.Add(new DropItem { Name = listBoxBells.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Saddle": Saddle.Add(new DropItem { Name = listBoxSaddle.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Ribbon": Ribbon.Add(new DropItem { Name = listBoxRibbon.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Mask": Mask.Add(new DropItem { Name = listBoxMask.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Food": Food.Add(new DropItem { Name = listBoxFood.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Hook": Hook.Add(new DropItem { Name = listBoxHook.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Float": Float.Add(new DropItem { Name = listBoxFloat.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Bait": Bait.Add(new DropItem { Name = listBoxBait.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Finder": Finder.Add(new DropItem { Name = listBoxFinder.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Reel": Reel.Add(new DropItem { Name = listBoxReel.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Fish": Fish.Add(new DropItem { Name = listBoxFish.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Quest": Quest.Add(new DropItem { Name = listBoxQuest.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Awakening": Awakening.Add(new DropItem { Name = listBoxAwakening.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Pets": Pets.Add(new DropItem { Name = listBoxPets.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; case "Transform": Transform.Add(new DropItem { Name = listBoxTransform.SelectedItem.ToString().Replace(" ", string.Empty), Odds = $"1/{dropChance}", Quest = quest }); break; } UpdateDropFile(); } catch { //No item selected when trying to add an item to the drop } }
static void Main(string[] args) { //TODO: Clean up :) const string ConnectionString = "mongodb://*****:*****@ds052968.mlab.com:52968/mimdb"; // Create a MongoClient object by using the connection string var client = new MongoClient(ConnectionString); //Use the MongoClient to access the server var database = client.GetDatabase("mimdb"); var roomCollection = database.GetCollection <Room>("Room"); Console.WriteLine("Cleaning DB"); database.DropCollection("Room"); Console.WriteLine("Compiling Areas."); var areaSpeed = new Stopwatch(); areaSpeed.Start(); var areas = new List <Room> { Ambush.TutorialRoom1(), Ambush.TutorialRoom2(), Awakening.TempleOfTyr(), Anker.VillageSquare(), Anker.SquareWalkOutsideTavern(), Anker.SquareWalkOutsideStables(), Anker.RedLionStables(), Anker.SquareWalkCommerceCorner(), Anker.SquareWalkEastOfCentre(), Anker.SquareWalkEntrance(), Anker.SquareWalkSouthWestOfCentre(), Anker.SquareWalkWestOfCentre(), Anker.SquareWalkSouthOfCentre(), Anker.DrunkenSailor(), Anker.GeneralStore(), Anker.MetalMedley(), Anker.VillageHall(), Anker.VillageHallEntrance(), Anker.VillageHallEldersRoom(), Anker.TempleRoad(), Anker.TempleRoad2(), Anker.TempleEntrance(), Anker.PathToTheSquare(), Anker.AnkerLane(), Anker.AnkerLaneWest21(), Anker.AnkerLaneWest25(), Anker.AnkerLaneWest37(), Anker.AnkerLaneEast22(), Anker.AnkerLaneEast23(), Anker.AnkerLaneEast24(), Anker.AnkerHome(), Anker.AnkerHome2(), Anker.AnkerHome3(), Anker.AnkerHome4(), Anker.AnkerHome5(), Anker.AnkerHome6(), Anker.AnkerHome31(), Anker.AnkerHome32(), Anker.AnkerHome33(), Anker.AnkerHome34(), Anker.AnkerHome35(), Anker.AnkerHome36(), }; areaSpeed.Stop(); Console.WriteLine("Compiling Areas Completed in {0}ms.", areaSpeed.Elapsed.Milliseconds); //check areas for duplicate ids Console.WriteLine("Adding Area's to Database"); var addSpeed = new Stopwatch(); addSpeed.Start(); foreach (var area in areas) { Console.WriteLine("Added {0}", area.title); roomCollection.InsertOne(area); } addSpeed.Stop(); Console.WriteLine("Adding Area's to Database Completed in {0}ms.", addSpeed.Elapsed.Milliseconds); Console.WriteLine("{0} Areas added", areas.Count); Console.ReadLine(); }