public static Craft CopperAxe() { var CopperAxe = new Craft() { Name = "Copper Axe", StartMessage = "You put all your copper ore into the furnace", FailureMessages = new List <CraftFailMessage>() { new CraftFailMessage() { Message = "You accidently drop the copper ore inside the furnace.", BreakMaterial = true }, new CraftFailMessage() { Message = "You miss the cast and pour molten hot metal on the floor.", } }, SuccessMessage = "You have forged a copper axe.", Description = "To forge a copper axe you need to be at a furnace", CraftCommand = CraftType.Forge, CraftAppearsInRoom = false, CraftingEmotes = new List <string>() { "The copper ore begins to melt down.", "You take out the melted metal and pour it into a cast.", "The casts begin to cool down.", "The metal in the casts go hard.", "You crack the cast open." }, Materials = new List <CraftMaterials>() { new CraftMaterials() { Name = "Copper Ore", Count = 2 } }, CreatesItem = AxeBasic.CopperAxe(), MoveCost = 20 }; return(CopperAxe); }
public static PlayerSetup.Player MetalMedleyBlacksmith() { #region NPC setup var ferron = new PlayerSetup.Player { NPCId = Guid.NewGuid(), Name = "Ferron", NPCLongName = "Ferron", KnownByName = true, Type = PlayerSetup.Player.PlayerTypes.Mob, Description = "The black smith", Strength = 80, Dexterity = 60, Constitution = 60, Intelligence = 60, Wisdom = 60, Charisma = 60, MaxHitPoints = 2250, HitPoints = 2250, Level = 51, Status = PlayerSetup.Player.PlayerStatus.Standing, Skills = new List <Skill>(), Inventory = new ItemContainer(), Trainer = false, Greet = true, Shop = true, itemsToSell = new List <Item.Item>(), sellerMessage = "Why of course, here is what I can sell you.", GreetMessage = "Hello there!", DialogueTree = new List <DialogTree>() { new DialogTree() { Id = "Ferron1", Message = "Horik Broke his axe again! What has he done this time?", ShowIfOnQuest = "Repair Horik's Axe", PossibleResponse = new List <Responses>() { new Responses() { QuestionId = "Ferron1a", AnswerId = "Ferron1a", Response = "Yes, this is the axe. Is it fixable?", DoEmote = "You show Ferron the broken axe." } }, }, new DialogTree() { Id = "Ferron1a", Message = "Ah, this is an easy fix.", MatchPhrase = "Yes, this is the axe. Is it fixable?", PossibleResponse = new List <Responses>(), GiveItem = Items.MiscEQ.Held.Held.RepairHammer(), GiveItemEmote = "Ferron hands you a hammer. This is a repair hammer, hit the axe here, here and here says ferron jabbing his finger at the axe. <p> Now i've helped you, you can help me. I'm having issues with some of my raw material shipments. I suspect bandits. You should check back again soon incase one goes missing as I will need someone to try and track down these Bandit theieves.</p>" + "<p>Hint: use repair axe to fix the broken axe. Then head back to Horick", GiveSkill = Repair.RepairAb() }, }, Dialogue = new List <Responses>(), }; #endregion #region 4sale for (int i = 0; i < 20; i++) { ferron.itemsToSell.Add(ShortSwordBasic.Saber()); ferron.itemsToSell.Add(LongSwordBasic.BastardSword()); ferron.itemsToSell.Add(SpearBasic.BoarSpear()); ferron.itemsToSell.Add(AxeBasic.DoubleAxe()); ferron.itemsToSell.Add(HammerBasic.GreatHammer()); ferron.itemsToSell.Add(LongSwordBasic.Katana()); ferron.itemsToSell.Add(DaggerBasic.HuntingKnife()); ferron.itemsToSell.Add(DaggerBasic.HiddenBlade()); //armor scale mail ferron.itemsToSell.Add(ScalemailHead.ScalemailHelm()); ferron.itemsToSell.Add(ScalemailBody.ScalemailBreastPlate()); ferron.itemsToSell.Add(ScalemailArms.ScalemailSleeves()); ferron.itemsToSell.Add(ScalemailLegs.ScalemailGreaves()); ferron.itemsToSell.Add(ScalemailHands.ScalemailGauntlets()); ferron.itemsToSell.Add(ScalemailFeet.ScalemailBoots()); //armour bronze - bronze has crappy stats, make better? ferron.itemsToSell.Add(FullPlateHelm.BronzeHelm()); ferron.itemsToSell.Add(FullPlateBody.BronzeBreastPlate()); ferron.itemsToSell.Add(FullPlateSleeves.BronzeSleeves()); ferron.itemsToSell.Add(FullPlateGreaves.BronzeGreaves()); ferron.itemsToSell.Add(FullPlateGauntlet.BronzeGauntlets()); ferron.itemsToSell.Add(FullPlateBoots.BronzeBoots()); ferron.itemsToSell.Add(Materials.CopperOre()); } #endregion #region Dialogue #endregion return(ferron); }
public static PlayerSetup.Player OddsNSodsShopKeeper() { #region NPC setup var Anika = new PlayerSetup.Player { NPCId = Guid.NewGuid(), Name = "Anika", NPCLongName = "Anika", KnownByName = true, Type = PlayerSetup.Player.PlayerTypes.Mob, Description = "The shop keeper", Strength = 15, Dexterity = 16, Constitution = 16, Intelligence = 12, Wisdom = 16, Charisma = 18, MaxHitPoints = 350, HitPoints = 350, Level = 20, Status = PlayerSetup.Player.PlayerStatus.Standing, Skills = new List <Skill>(), Inventory = new List <Item.Item>(), Trainer = false, Greet = true, Shop = true, itemsToSell = new List <Item.Item>(), sellerMessage = "Why of course, here is what I can sell you.", GreetMessage = "Hello there!", DialogueTree = new List <DialogTree>(), Dialogue = new List <Responses>(), Quest = new List <Quest>() }; var backpack = new Item.Item { name = "Leather Backpack", container = true, containerSize = 30, Weight = 1, count = 10, equipable = false, location = Item.Item.ItemLocation.Inventory, canOpen = true, Gold = 25 }; Anika.itemsToSell.Add(ShortSwordBasic.ShortIronSword()); Anika.itemsToSell.Add(DaggerBasic.IronDagger()); Anika.itemsToSell.Add(LongSwordBasic.LongIronSword()); Anika.itemsToSell.Add(StaffBasic.WoodenQuarterstaff()); Anika.itemsToSell.Add(AxeBasic.IronHatchet()); Anika.itemsToSell.Add(MaceBasic.IronMace()); Anika.itemsToSell.Add(PaddedBodyBasic.PaddedBreastPlate()); Anika.itemsToSell.Add(PaddedSleeves.PaddedSleeve()); Anika.itemsToSell.Add(PaddedHandsBasic.PaddedGloves()); Anika.itemsToSell.Add(PaddedLegsBasic.PaddedGreaves()); Anika.itemsToSell.Add(LeatherBootBasic.WornLeatherBoots()); Anika.itemsToSell.Add(Light.WoodenTorch()); Anika.itemsToSell.Add(drink.WaterSkin()); Anika.itemsToSell.Add(Food.Cheese()); Anika.itemsToSell.Add(backpack); #endregion return(Anika); }
/// <summary> /// alice walks from her home to the shop to talk to anika before buying a pie /// she then walks back home and puts the pie o nthe table, before sitting at the table /// and eating the pie. /// She then goes to sleep and repeats /// </summary> /// <returns></returns> public static PlayerSetup.Player HorikNpc() { var horik = new PlayerSetup.Player { NPCId = Guid.NewGuid(), Name = "Horik", NPCLongName = "Horik the lumberjack", KnownByName = true, Type = PlayerSetup.Player.PlayerTypes.Mob, Description = "You see nothing special about him.", Strength = 70, Dexterity = 72, Constitution = 60, Intelligence = 60, Wisdom = 60, Charisma = 60, MaxHitPoints = 722, HitPoints = 722, Level = 23, Status = PlayerSetup.Player.PlayerStatus.Standing, Skills = new List <Skill>(), Inventory = new ItemContainer(), Trainer = false, Greet = true, Shop = false, GreetMessage = "Hello there!", DialogueTree = new List <DialogTree>() { new DialogTree() { Id = "Horik1", Message = "Hi there, do you mind helping me get my Axe repaired?", DontShowIfOnQuest = "Repair Horik's Axe", PossibleResponse = new List <Responses>() { new Responses() { QuestionId = "Horik1a", AnswerId = "Horik1a", Response = "Yes, I can help you." }, new Responses() { QuestionId = "Horik1b", AnswerId = "Horik1b", Response = "Sorry not right now." } }, }, new DialogTree() { Id = "Horik1a", Message = "Thanks, take this broken axe and speak to Ferron he will know what to do. When you come back I can show you how to chop wood as a reward.", MatchPhrase = "Yes, I can help you.", PossibleResponse = new List <Responses>(), GivePrerequisiteItem = true, GiveQuest = true, QuestId = 1, }, new DialogTree() { Id = "Horik1b", Message = "No worries, come back when you have time.", MatchPhrase = "Sorry not right now.", PossibleResponse = new List <Responses>() }, new DialogTree() { Id = "Horik1c", Message = "Have you repaired my axe yet?", ShowIfOnQuest = "Repair Horik's Axe", PossibleResponse = new List <Responses>(), } }, Dialogue = new List <Responses>(), Quest = new List <Quest>() { new Quest() { AlreadyOnQuestMessage = "Do you have the axe just give it to me please.", Description = "Repair Horik's Axe", Id = 1, Name = "Repair Horik's Axe", QuestGiver = "Horik", Type = Quest.QuestType.FindItem, QuestItem = new List <Item.Item>() { new Item.Item() { name = "Horik's Axe", location = Item.Item.ItemLocation.Inventory, QuestItem = true, eqSlot = Item.Item.EqSlot.Held, slot = Item.Item.EqSlot.Held, description = new Description() { look = "The shaft of this axe has broken in half and the blade has many chips along it's once sharp edge." }, equipable = true, weaponType = Item.Item.WeaponType.Axe } }, RewardGold = 100, RewardXp = 1500, RewardDialog = new DialogTree() { Message = "Thank you so much $playerName. To chop wood, just wield an axe and chop the wood. Here you can actually keep the axe, I found my spare axe while you were out. Good luck!" }, PrerequisiteItem = new List <Item.Item>() { new Item.Item() { name = "Horik's Broken Axe", location = Item.Item.ItemLocation.Inventory, QuestItem = true, eqSlot = Item.Item.EqSlot.Held, slot = Item.Item.EqSlot.Held, description = new Description() { look = "The shaft of this axe has broken in half and the blade has many chips along it's once sharp edge." }, equipable = true, weaponType = Item.Item.WeaponType.Axe, Condition = 60 } }, Completed = false, RewardItem = AxeBasic.IronHatchet(), RewardSkill = Chopping.ChoppingAb() } }, Region = "Anker", Area = "Anker", AreaId = 28, ArmorRating = 280, Recall = new Recall() { Region = "Anker", Area = "Anker Farm", AreaId = 12 } }; #region Dialogue #endregion return(horik); }
public static PlayerSetup.Player MetalMedleyBlacksmith() { #region NPC setup var ferron = new PlayerSetup.Player { NPCId = Guid.NewGuid(), Name = "Ferron", KnownByName = true, Type = PlayerSetup.Player.PlayerTypes.Mob, Description = "The black smith", Strength = 15, Dexterity = 16, Constitution = 16, Intelligence = 12, Wisdom = 16, Charisma = 18, MaxHitPoints = 350, HitPoints = 350, Level = 20, Status = PlayerSetup.Player.PlayerStatus.Standing, Skills = new List <Skill>(), Inventory = new List <Item.Item>(), Trainer = false, Greet = true, Shop = true, itemsToSell = new List <Item.Item>(), sellerMessage = "Why of course, here is what I can sell you.", GreetMessage = "Hello there!", DialogueTree = new List <DialogTree>(), Dialogue = new List <Responses>(), Quest = new List <Quest>() }; #endregion ferron.itemsToSell.Add(ShortSwordBasic.Saber()); ferron.itemsToSell.Add(LongSwordBasic.BastardSword()); ferron.itemsToSell.Add(SpearBasic.BoarSpear()); ferron.itemsToSell.Add(AxeBasic.DoubleAxe()); ferron.itemsToSell.Add(HammerBasic.GreatHammer()); ferron.itemsToSell.Add(LongSwordBasic.Katana()); ferron.itemsToSell.Add(DaggerBasic.HuntingKnife()); ferron.itemsToSell.Add(DaggerBasic.HiddenBlade()); //armor scale mail ferron.itemsToSell.Add(ScalemailHead.ScalemailHelm()); ferron.itemsToSell.Add(ScalemailBody.ScalemailBreastPlate()); ferron.itemsToSell.Add(ScalemailArms.ScalemailSleeves()); ferron.itemsToSell.Add(ScalemailLegs.ScalemailGreaves()); ferron.itemsToSell.Add(ScalemailHands.ScalemailGauntlets()); ferron.itemsToSell.Add(ScalemailFeet.ScalemailBoots()); //armour bronze - bronze has crappy stats, make better? ferron.itemsToSell.Add(FullPlateHelm.BronzeHelm()); ferron.itemsToSell.Add(FullPlateBody.BronzeBreastPlate()); ferron.itemsToSell.Add(FullPlateSleeves.BronzeSleeves()); ferron.itemsToSell.Add(FullPlateGreaves.BronzeGreaves()); ferron.itemsToSell.Add(FullPlateGauntlet.BronzeGauntlets()); ferron.itemsToSell.Add(FullPlateBoots.BronzeBoots()); return(ferron); }