Exemplo n.º 1
0
        public static Quest TutorialLeatherQuest()
        {
            var quest = new Quest()
            {
                Name        = "Get Equipped!",
                Description = "<div class='questColor'><p>Loot the goblin camp, there is 6 pieces of leather armour hidden here that you can use.</p>" +
                              "<ul><li>Leather Helmet</li>" +
                              "<li>Leather vest</li>" +
                              "<li>Leather sleeves</li>" +
                              "<li>Leather gloves</li>" +
                              "<li>Leather leggings</li>" +
                              "<li>Leather boots</li></ul>" +
                              "<p>You will need to look and examine to find all these items.</p></div>",
                RewardXp   = 500,
                RewardGold = 20,
                Type       = Quest.QuestType.FindItem,
                QuestItem  = new List <Item.Item>()
                {
                    LeatherHead.LeatherHelmet(),
                LeatherBody.LeatherVest(),
                LeatherLegs.LeatherLeggings(),
                LeatherArms.LeatherSleeves(),
                LeatherFeet.LeatherBoots(),
                LeatherHands.LeatherGloves()
                },
                RewardDialog = new DialogTree()
                {
                    Message = "A curved dagger appears in your inventory...test"
                },
                RewardItem = DaggerBasic.BronzeCurvedDagger()
            };

            return(quest);
        }
Exemplo n.º 2
0
        public static PlayerSetup.Player GoblinWarrior()
        {
            var leatherVest = LeatherBody.LeatherVest();

            leatherVest.location = Item.Item.ItemLocation.Worn;

            var rustedSword = ShortSwordBasic.RustedShortSword();

            rustedSword.location = Item.Item.ItemLocation.Wield;
            rustedSword.stats    = new Stats()
            {
                damMax        = 12,
                damMin        = 2,
                damRoll       = 1,
                minUsageLevel = 1,
                worth         = 1
            };

            var WeakGoblin = new PlayerSetup.Player
            {
                NPCId        = Guid.NewGuid(),
                Name         = "A goblin warrior",
                NPCLongName  = "A strong goblin snarls at you",
                KnownByName  = true,
                Type         = PlayerSetup.Player.PlayerTypes.Mob,
                Description  = "A strong goblin",
                Strength     = 20,
                Dexterity    = 13,
                Constitution = 12,
                Intelligence = 4,
                Wisdom       = 5,
                Charisma     = 2,
                MaxHitPoints = 100,
                HitPoints    = 100,
                Level        = 5,
                Aggro        = true,
                Status       = PlayerSetup.Player.PlayerStatus.Standing,
                Skills       = new List <Skill>(),
                Inventory    = new ItemContainer()
                {
                    leatherVest,
                    rustedSword
                },
                Equipment = new Equipment()
                {
                    Body    = leatherVest.name,
                    Wielded = rustedSword.name
                },
                Trainer      = false,
                DialogueTree = new List <DialogTree>(),
                Dialogue     = new List <Responses>(),
                Quest        = new List <Quest>()
            };



            return(WeakGoblin);
        }
Exemplo n.º 3
0
        public static PlayerSetup.Player WeakGoblin()
        {
            var leatherVest = LeatherBody.LeatherVest();

            leatherVest.location = Item.Item.ItemLocation.Worn;

            var rustedSword = ShortSwordBasic.RustedShortSword();

            rustedSword.location = Item.Item.ItemLocation.Wield;

            var shield = ShieldBasic.WoodenShield();

            shield.location = Item.Item.ItemLocation.Worn;

            var WeakGoblin = new PlayerSetup.Player
            {
                NPCId        = Guid.NewGuid(),
                Name         = "A skinny hunched Goblin",
                NPCLongName  = "A skinny hunched goblin snarls at you",
                KnownByName  = true,
                Type         = PlayerSetup.Player.PlayerTypes.Mob,
                Description  = "A weak goblin",
                Strength     = 25,
                Dexterity    = 25,
                Constitution = 30,
                Intelligence = 30,
                Wisdom       = 30,
                Charisma     = 30,
                MaxHitPoints = 7,
                HitPoints    = 7,
                Level        = 1,
                Status       = PlayerSetup.Player.PlayerStatus.Standing,
                Skills       = new List <Skill>()
                {
                    ShortBlades.ShortBladesAb()
                },
                Inventory = new ItemContainer()
                {
                    leatherVest,
                    rustedSword,
                    shield
                },
                Equipment = new Equipment()
                {
                    Body    = leatherVest.name,
                    Wielded = rustedSword.name,
                    Shield  = shield.name
                },
                Trainer      = false,
                DialogueTree = new List <DialogTree>(),
                Dialogue     = new List <Responses>(),
                Quest        = new List <Quest>()
            };



            return(WeakGoblin);
        }
Exemplo n.º 4
0
        public void SetUp()
        {
            var vest = LeatherBody.LeatherVest();

            vestName = vest.name;

            var sword = ShortSwordBasic.RustedShortSword();

            swordName = sword.name;

            container.Add(vest);
            container.Add(sword);
            container.Add(sword);
        }
Exemplo n.º 5
0
        public static Quest TutorialLeatherQuest()
        {
            var quest = new Quest()
            {
                Name        = "This goblin camp may have some useful items that may help you.",
                Description = "<div class='questColor'>" +
                              "<p>To find them, here are some things that you need to know:</p>" +
                              "<ul><li>Kill &lt;target&gt; - example: kill goblin.</li></ul>" +
                              "<p>After the fight you will want to check the corpse for items:</p>" +
                              "<ul><li>look in &lt;item&gt; - example: look in corpse. To list items on the corpse.</li>" +
                              "<li>get &lt;item&gt; corpse - example: get sword corpse. To get the sword from the corpse.</li></ul>" +
                              "<p>Some items may be inside containers that need opening:</p>" +
                              "<ul><li>open &lt;container&gt; - example: open chest. Will now allow to view items inside the chest when you look in to it.</li></ul>" +
                              "<p>For hidden items you should read the room description carefully and examine objects you see in the description, doing so may reveal a hidden item.</p>" +
                              "<ul><li>examine &lt;keyword&gt; - example: examine desk. May give you a more detailed description of what's on the table that's not shown in the room description.</li></ul>" +
                              "<p>If you need help on commands use the help command to get a list of them. </p>" +
                              "<p>Also you may with to <a href='https://discord.gg/nuf7FVq' target='_blank'>join the discord community</a> and give your feedback. </p>" +
                              "<p>ArchaicQuest is in development and your input and feedback will really help make this game better for everyone.</p>" +
                              "<p>Good luck.</p></div>"
                ,


                RewardXp   = 500,
                RewardGold = 20,
                Type       = Quest.QuestType.FindItem,
                QuestItem  = new List <Item.Item>()
                {
                    LeatherHead.LeatherHelmet(),
                LeatherBody.LeatherVest(),
                LeatherLegs.LeatherLeggings(),
                LeatherArms.LeatherSleeves(),
                LeatherFeet.LeatherBoots(),
                LeatherHands.LeatherGloves()
                },
                RewardDialog = new DialogTree()
                {
                    Message = "Well done, a curved dagger appears in your inventory."
                },
                RewardItem = DaggerBasic.BronzeCurvedDagger()
            };

            return(quest);
        }
Exemplo n.º 6
0
        public static Room.Room TutorialGoblinCampTentNorth()
        {
            var room = new Room.Room
            {
                region       = "Tutorial",
                area         = "Tutorial",
                areaId       = 4,
                title        = "A tent in the goblin camp",
                description  = "<p>A small bed and wooden chest has been set up against the side of the tent, filling most of the space. A small cluttered desk sits on the other side leaving just about enough room to enter and leave.</p>",
                InstantRePop = true,
                //Defaults
                exits    = new List <Exit>(),
                items    = new List <Item.Item>(),
                mobs     = new List <PlayerSetup.Player>(),
                terrain  = Room.Room.Terrain.Field,
                keywords = new List <RoomObject>()
                {
                    new RoomObject()
                    {
                        name = "gold coins"
                    },
                    new RoomObject()
                    {
                        name = "small candle"
                    },
                    new RoomObject()
                    {
                        name = "bread crumbs"
                    }
                },
                corpses       = new List <PlayerSetup.Player>(),
                players       = new List <PlayerSetup.Player>(),
                fighting      = new List <string>(),
                clean         = true,
                updateMessage = "A loud screech echos through the forest."
            };

            var bed = new RoomObject
            {
                name    = "Bed",
                look    = "The bed is unmade and the sheets are covered in stains.",
                examine = "Under the pillow you see what looks like a pair of leather gloves poking out slightly."
            };

            var desk = new RoomObject
            {
                name    = "Desk",
                look    = "Pieces of paper, gold coins and bread crumbs lay scattered across the desk. A small candle placed on top of what looks like a map illuminates the tent with an orange glow.",
                examine = "Pieces of paper, gold coins and bread crumbs lay scattered across the desk. A small candle placed on top of what looks like a map illuminates the tent with an orange glow.",
            };

            var paper = new RoomObject
            {
                name    = "paper",
                look    = "You don't see anything worth taking except for what looks like a map.",
                examine = "You don't see anything worth taking except for what looks like a map."
            };



            var map =
                "<pre>Hideout" +
                "  o-o-o o-o-o-o\r\n" +
                "      | |   |\r\n" +
                "      o-o   o-o-x</pre>";

            var HideoutMap = new RoomObject
            {
                name    = "map",
                look    = map,
                examine = map
            };

            var mapToGoblinCave = new Item.Item
            {
                description = new Description()
                {
                    look = "<pre>" + map + "<pre>",
                    exam = "<pre>" + map + "<pre>",
                },
                location = Item.Item.ItemLocation.Room,

                type           = Item.Item.ItemType.note,
                name           = "A basic map to a Goblin hideout",
                Weight         = 0,
                equipable      = false,
                isHiddenInRoom = true
            };


            room.keywords.Add(HideoutMap);
            room.keywords.Add(paper);
            room.keywords.Add(desk);
            room.keywords.Add(bed);

            var west = new Exit
            {
                name     = "South",
                area     = "Tutorial",
                region   = "Tutorial",
                areaId   = 3,
                keywords = new List <string>(),
                hidden   = false,
                locked   = false,
                canLock  = true,
                canOpen  = true,
                open     = true,
                doorName = null
            };


            var chest = new Item.Item
            {
                name          = "Basic looking wooden chest",
                stuck         = true,
                type          = Item.Item.ItemType.Container,
                open          = false,
                canOpen       = true,
                container     = true,
                containerSize = 5,
                location      = Item.Item.ItemLocation.Room,
                description   = new Description()
                {
                    exam =
                        "A small poorly crafted wooden chest sits on the floor at the foot of the bed. There is no visible lock.",
                    look = "A small poorly crafted wooden chest sits on the floor at the foot of the bed."
                },
                keywords = new List <string>()
                {
                    "Chest",
                    "Wooden",
                    "Wooden Chest"
                },
                containerItems = new ItemContainer()
                {
                    LeatherBody.LeatherVest()
                }
            };

            var bedContainer = new Item.Item
            {
                name           = "bed",
                stuck          = true,
                type           = Item.Item.ItemType.Container,
                open           = true,
                canOpen        = false,
                container      = true,
                containerSize  = 5,
                location       = Item.Item.ItemLocation.Room,
                description    = new Description(),
                keywords       = new List <string>(),
                isHiddenInRoom = true,
                containerItems = new ItemContainer()
                {
                    LeatherHands.LeatherGloves()
                }
            };

            var deskContainer = new Item.Item
            {
                name           = "desk",
                stuck          = true,
                type           = Item.Item.ItemType.Container,
                open           = true,
                canOpen        = false,
                container      = true,
                containerSize  = 5,
                location       = Item.Item.ItemLocation.Room,
                description    = new Description(),
                keywords       = new List <string>(),
                isHiddenInRoom = true,
                containerItems = new ItemContainer()
                {
                    LeatherLegs.LeatherLeggings()
                }
            };

            deskContainer.containerItems.Add(mapToGoblinCave);
            deskContainer.containerItems.Add(new Item.Item()
            {
                name     = "some gold coins",
                Gold     = 5,
                count    = 5,
                type     = Item.Item.ItemType.Gold,
                location = Item.Item.ItemLocation.Room
            });
            room.items.Add(chest);
            room.items.Add(bedContainer);
            room.items.Add(deskContainer);

            var goblin = Goblin.WeakGoblin();

            goblin.Recall = new Recall()
            {
                Region = "Tutorial",
                Area   = "Tutorial",
                AreaId = 4
            };
            room.mobs.Add(goblin);


            room.Emotes.Add("You hear a howl in the distance.");

            room.exits.Add(west);

            return(room);
        }