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>();
        }
示例#2
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectCampfire>());

            prerequisites
            .Add <QuestCraftAToolbox>();
        }
示例#3
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectBedroll>(isSharedWithPartyAndFactionMembers: false));

            prerequisites
            .Add <QuestCraftATorch>()
            .Add <QuestSecureBasicWaterSource>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeWorkbench>())
            .Add(TaskBuildStructure.Require <ObjectWorkbench>());

            prerequisites
            .Add <QuestBuildABedroll>();
        }
        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, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeSmelting>())
            .Add(TaskBuildStructure.Require <ObjectFurnace>())
            .Add(TaskManufactureItem.Require <ItemIngotCopper>(count: 10));

            prerequisites
            .Add <QuestCollectHerbsAndCraftMedicine>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectWaterCollector>())
            .Add(TaskManufactureItem.Require <ItemGlassRaw>(count: 50))
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeBottle>(count: 5));

            prerequisites
            .Add <QuestUnlockSkills>()
            .Add <QuestBuildFurnaceAndSmeltCopper>();
        }
示例#8
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectChemicalLab>())
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeAcidSulfuric>())
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeAcidNitric>())
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeNitrocellulosePowder>());

            prerequisites
            .Add <QuestCompleteTier1Technologies>();
        }
示例#9
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectMedicalLab>())
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeBandage>())
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeStrengthBoostSmall>())
            .Add(TaskUseItem.Require <ItemStrengthBoostSmall>());

            prerequisites
            .Add <QuestCompleteTier1Technologies>();
        }
示例#10
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeBasicBuilding>())
            .Add(TaskHaveTechNode.Require <TechNodeWoodDoor>())
            .Add(TaskBuildStructure.Require <ObjectWallWood>())
            .Add(TaskBuildStructure.Require <ObjectDoorWood>());

            prerequisites
            .Add <QuestBuildAPermanentBase>();
        }
示例#11
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeFloorLampOil>())
            .Add(TaskHaveTechNode.Require <TechNodeOilLamp>())
            .Add(TaskBuildStructure.Require <ObjectLightFloorLampOil>())
            .Add(TaskUseItem.Require <ItemOilLamp>(count: 1))
            .Add(TaskHaveItem.Require <ItemCampFuel>(count: 1, isReversible: false));

            prerequisites
            .Add <QuestBuildEvaporativeFridge>();
        }
示例#12
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskCraftRecipe.RequireStationRecipe <RecipeWateringCanWood>())
            .Add(TaskBuildStructure.Require <ObjectMulchbox>())
            .Add(TaskUseItem.Require <IProtoItemToolWateringCan>(description: TaskUseWateringCan)
                 .WithIcon(Api.GetProtoEntity <ItemWateringCanWood>().Icon))
            .Add(TaskUseItem.Require <ItemMulch>(description: TaskUseMulch));

            prerequisites
            .Add <QuestBuildAFarm>()
            .Add <QuestClaySandGlassBottlesWaterCollector>();
        }
示例#13
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeLandClaimT1>())
            .Add(TaskBuildStructure.Require <ObjectLandClaimT1>())
            .Add(TaskRelocateAnyStructure.Require());

            prerequisites
            .Add <QuestCraftAndEquipClothArmor>()
            .Add <QuestPerformBasicActions>();

            hints
            .Add(HintStructureRelocation);
        }
示例#14
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectGeneratorBio>())
            .Add(TaskBuildStructure.Require <ObjectPowerStorageLarge>())
            .Add(TaskBuildStructure.Require <ObjectFurnaceElectric>())
            .Add(TaskBuildStructure.Require <ObjectRechargingStation>());

            prerequisites
            .Add <QuestCompleteTier2Technologies>();

            hints
            .Add(HintGridExpansion);
        }
示例#15
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            var listSeeds = Api.FindProtoEntities <IProtoItemSeed>();

            listSeeds.RemoveAll(i => i is IProtoItemSapling);

            tasks
            .Add(TaskHaveTechNode.Require <TechNodeFarmingBasics>())
            .Add(TaskBuildStructure.Require <ObjectFarmPlot>())
            .Add(TaskBuildStructure.Require <ObjectFarmingWorkbench>())
            .Add(TaskUseItem.Require(listSeeds, description: TaskPlantAnySeeds));

            prerequisites
            .Add <QuestCollectHerbsAndCraftMedicine>();
        }
示例#16
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeLandClaimT1>())
            .Add(TaskBuildStructure.Require <ObjectLandClaimT1>());
            // TODO: restore this for A28 as it will include the necessary localization of the task name
            //.Add(TaskRelocateAnyStructure.Require());

            prerequisites
            .Add <QuestCraftAndEquipClothArmor>()
            .Add <QuestPerformBasicActions>();

            hints
            .Add(HintStructureRelocation);
        }
示例#17
0
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectCampfire>());

            prerequisites
            .Add <QuestCraftAToolbox>();

            hints
            .Add(() =>
            {
                var keyForButton = InputKeyNameHelper.GetKeyText(ClientInputManager.GetKeyForButton(GameButton.ConstructionMenu));
                return(string.Format(HintBuildMenu, keyForButton));
            })
            .Add(HintPages)
            .Add(HintRepair);
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskBuildStructure.Require <ObjectGeneratorSteam>())
            .Add(TaskBuildStructure.Require <ObjectPowerStorage>())
            .Add(TaskBuildStructure.Require <ObjectLightFloorLampSmall>());

            prerequisites
            .Add <QuestBuildChemicalLab>();

            hints
            .Add(HintGridZone)
            .Add(HintPowerStorage)
            .Add(HintGenerators)
            .Add(HintGridInformation)
            .Add(HintUnitedGrid)
            .Add(HintThresholds);
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            var protoItemOilLamp           = GetProtoEntity <ItemOilLamp>();
            var protoItemBraidedHelmetLamp = GetProtoEntity <ItemBraidedHelmetLamp>();

            tasks
            .Add(TaskHaveTechNode.Require <TechNodeFloorLampOil>())
            .Add(TaskHaveTechNode.Require <TechNodeOilLamp>())
            .Add(TaskBuildStructure.Require <ObjectLightFloorLampOil>())
            .Add(TaskUseItem.Require(new IProtoItem[]
            {
                protoItemOilLamp,
                protoItemBraidedHelmetLamp
            },
                                     count: 1,
                                     description: string.Format(TaskUseItem.DescriptionFormat,
                                                                protoItemOilLamp.Name)))
            .Add(TaskHaveItem.Require <ItemCampFuel>(count: 1, isReversible: false));

            prerequisites
            .Add <QuestBuildEvaporativeFridge>();
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            tasks
            .Add(TaskHaveTechNode.Require <TechNodeBasicBuilding>())
            .Add(TaskHaveTechNode.Require <TechNodeWoodDoor>())
            .Add(TaskBuildStructure.Require <ObjectWallWood>())
            .Add(TaskBuildStructure.Require <ObjectDoorWood>());

            prerequisites
            .Add <QuestBuildAPermanentBase>();

            hints
            .Add(() =>
            {
                var keyForButton =
                    InputKeyNameHelper.GetKeyText(
                        ClientInputManager.GetKeyForButton(GameButton.TechnologiesMenu));
                return(string.Format(HintTechMenu, keyForButton));
            })
            .Add(HintTechUnlock)
            .Add(HintLPGain);
        }
        protected override void PrepareQuest(QuestsList prerequisites, TasksList tasks, HintsList hints)
        {
            var headEquipmentExceptCloth = Api.FindProtoEntities <IProtoItemEquipmentHead>()
                                           .Where(i => !(i is ItemClothHelmet))
                                           .ToList();

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

            tasks
            .Add(TaskBuildStructure.Require <ObjectArmorerWorkbench>())
            // suggest wood helmet but require any head item except the cloth one
            .Add(TaskHaveItemEquipped.Require(
                     headEquipmentExceptCloth,
                     EquipAnyHelmet))
            // suggest wood armor but require any armor item except the cloth one
            .Add(TaskHaveItemEquipped.Require(
                     chestEquipmentExceptCloth,
                     EquipAnyArmor));

            prerequisites
            .Add <QuestExploreBiomes1>();
        }
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectFurnaceElectric>());
 }
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectGeneratorSteam>());
 }
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectMedicalStation>());
 }
示例#25
0
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectVehicleAssemblyBay>());
 }
示例#26
0
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectOilPumpAdvanced>());
 }
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectOilRefinery>());
 }
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectMineralProcessingPlant>());
 }
示例#29
0
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectOilCrackingPlant>());
 }
 protected override void PrepareAchievement(TasksList tasks)
 {
     tasks.Add(TaskBuildStructure.Require <ObjectLithiumOreExtractorAdvanced>());
 }