protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            var headEquipmentExceptCloth = Api.FindProtoEntities <IProtoItemEquipmentHead>()
                                           .Where(i => !(i is ItemClothHat))
                                           .ToList();

            var chestEquipmentExceptCloth = Api.FindProtoEntities <IProtoItemEquipmentChest>()
                                            .Where(i => !(i is ItemClothShirt))
                                            .ToList();

            var legsEquipmentExceptCloth = Api.FindProtoEntities <IProtoItemEquipmentLegs>()
                                           .Where(i => !(i is ItemClothPants))
                                           .ToList();

            requirements
            .Add(RequirementBuildStructure.Require <ObjectArmorerWorkbench>())
            // suggest wood helmet but require any head item except the cloth one
            .Add(RequirementHaveItemEquipped.Require(
                     headEquipmentExceptCloth,
                     string.Format(RequirementHaveItemEquipped.DescriptionFormat,
                                   Api.GetProtoEntity <ItemWoodHelmet>().Name)))
            // suggest wood chestplate but require any chest item except the cloth one
            .Add(RequirementHaveItemEquipped.Require(
                     chestEquipmentExceptCloth,
                     string.Format(RequirementHaveItemEquipped.DescriptionFormat,
                                   Api.GetProtoEntity <ItemWoodChestplate>().Name)))
            // suggest wood pants but require any legs item except the cloth one
            .Add(RequirementHaveItemEquipped.Require(
                     legsEquipmentExceptCloth,
                     string.Format(RequirementHaveItemEquipped.DescriptionFormat,
                                   Api.GetProtoEntity <ItemWoodPants>().Name)));

            prerequisites
            .Add <QuestExploreBiomes1>();
        }
예제 #2
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks.Add(TaskDestroy.Require <ObjectMineralGiantPragmiumSource>(count: 1));;

            prerequisites
            .Add <QuestMinePragmiumSource>();
        }
예제 #3
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            var recipeMusket          = Api.GetProtoEntity <RecipeMusket>();
            var recipeFlintlockPistol = Api.GetProtoEntity <RecipeFlintlockPistol>();

            tasks
            .Add(TaskBuildStructure.Require <ObjectWeaponWorkbench>())
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeAmmoPaperCartridge>(
                     description: CraftPaperCartridge))
            .Add(TaskCraftRecipe.RequireStationRecipe(
                     new List <Recipe.RecipeForStationCrafting>()
            {
                recipeMusket,
                recipeFlintlockPistol
            },
                     description: CraftMusketOrFlintlockPistol)
                 .WithIcon(ClientItemIconHelper.CreateComposedIcon(this.ShortId,
                                                                   recipeFlintlockPistol.Icon,
                                                                   recipeMusket.Icon)))
            .Add(TaskUseItem.Require <IProtoItemWeaponRanged>(
                     description: FireTheWeapon));

            prerequisites
            .Add <QuestUseCrowbarAndDeconstructBuilding>();
        }
예제 #4
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementCraftRecipe.RequireHandRecipe <RecipeToolboxT1>());

            prerequisites
            .Add <QuestPerformBasicActions>();
        }
예제 #5
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskKill.Require <MobColdBear>(count: 1));

            prerequisites
            .Add <QuestKillAngryPangolins>();
        }
예제 #6
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementDestroy.Require <IProtoObjectTree>(count: 3, description: this.Name));

            prerequisites
            .Add <QuestCraftAnAxe>();
        }
예제 #7
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementVisitTile.Require <TileRuins>());

            prerequisites
            .Add <QuestCompleteTier1Technologies>();
        }
예제 #8
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementBuildStructure.Require <ObjectBedroll>());

            prerequisites
            .Add <QuestLearnBasicBuilding>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskKill.Require <MobAngryPangolin>(count: 10));

            prerequisites
            .Add <QuestMasterHunter6>();
        }
예제 #10
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementBuildStructure.Require <ObjectCampfire>());

            prerequisites
            .Add <QuestCraftAToolbox>();
        }
예제 #11
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskDestroy.Require <IProtoObjectTree>(count: 3, description: this.Name));

            prerequisites
            .Add <QuestCraftAnAxe>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks.Add(TaskDestroy.Require <ObjectMineralPragmiumSource>(count: 5));;

            prerequisites
            .Add <QuestMineMoreMineralsStage3>()
            .Add <QuestAcquirePragmium>();
        }
예제 #13
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectCampfire>());

            prerequisites
            .Add <QuestCraftAToolbox>();
        }
예제 #14
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskCraftRecipe.RequireHandRecipe <RecipePickaxeStone>());

            prerequisites
            .Add <QuestChopDownATree>();
        }
예제 #15
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementCraftRecipe.RequireHandRecipe <RecipePickaxeStone>());

            prerequisites
            .Add <QuestChopDownATree>();
        }
예제 #16
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementGather.Require <ObjectBushWaterbulb>(count: 5, TaskGatherWaterbulbFruit))
            .Add(RequirementUseItem.Require <ItemWaterbulb>());

            prerequisites
            .Add <QuestCookAnyFood>();
        }
예제 #17
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskGather.Require <ObjectBushWaterbulb>(count: 3, TaskGatherWaterbulbFruit))
            .Add(TaskUseItem.Require <ItemWaterbulb>());

            prerequisites
            .Add <QuestCookAnyFood>();
        }
예제 #18
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementDestroy.Require <IProtoObjectMineral>(count: 5, description: this.Name))
            .Add(RequirementDestroy.Require <ObjectMineralStone>(count: 3, description: TaskMineStone));

            prerequisites
            .Add <QuestCraftAPickaxe>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementSortItemsContainer.Require)
            .Add(RequirementRun.Require);

            prerequisites
            .Add <QuestChopDownATree>();
        }
예제 #20
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementHaveItem.Require <ItemHerbGreen>(count: 1, isReversible: false))
            .Add(RequirementUseItem.Require <ItemHerbGreen>(count: 1));

            prerequisites
            .Add <QuestCraftAKnifeAndKillAnyCreature>();
        }
예제 #21
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectBedroll>(isSharedWithPartyAndFactionMembers: false));

            prerequisites
            .Add <QuestCraftATorch>()
            .Add <QuestSecureBasicWaterSource>();
        }
예제 #22
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementCraftRecipe.RequireHandRecipe <RecipeRope>())
            .Add(RequirementCraftRecipe.RequireHandRecipe <RecipeAxeStone>());

            prerequisites
            .Add <QuestGatherResources>();
        }
예제 #23
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementHaveTechNode.Require <TechNodeBasicBuilding>());

            prerequisites
            .Add <QuestBuildACampfire>()
            .Add <QuestMineAnyMineral>();
        }
예제 #24
0
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementVisitTile.Require <TileSwamp>())
            .Add(RequirementVisitTile.Require <TileVolcanic>());

            prerequisites
            .Add <QuestAdvancedResourcesAcquisition>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            var listMinerals = Api.FindProtoEntities <IProtoObjectMineral>();

            tasks.Add(TaskDestroy.Require(list: listMinerals, count: 2000, description: this.Name));

            prerequisites
            .Add <QuestMineMoreMineralsStage3>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeFridgeEvaporator>())
            .Add(TaskBuildStructure.Require <ObjectFridgeEvaporator>());

            prerequisites
            .Add <QuestBuildMulchboxAndCraftWateringCan>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, RequirementsList requirements)
        {
            requirements
            .Add(RequirementHaveTechNode.Require <TechNodeFridgeEvaporator>())
            .Add(RequirementBuildStructure.Require <ObjectFridgeEvaporator>());

            prerequisites
            .Add <QuestBuildMulchboxAndCraftWateringCan>();
        }
예제 #28
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskKill.Require <MobPragmiumBear>(count: 5))
            .Add(TaskKill.Require <MobLargePragmiumBear>(count: 1));

            prerequisites
            .Add <QuestMasterHunter6>();
        }
예제 #29
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskSortItemsContainer.Require)
            .Add(TaskRun.Require);

            prerequisites
            .Add <QuestUnlockAndBuildWorkbench>();
        }
예제 #30
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskCraftRecipe.RequireHandRecipe <RecipeTorch>())
            .Add(TaskUseItem.Require <ItemTorch>());

            prerequisites
            .Add <QuestMineAnyMineral>();
        }