public BloomeryRecipe() { this.Products = new CraftingElement[] { new CraftingElement <BloomeryItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <StoneItem>(typeof(StoneworkingEfficiencySkill), 20, StoneworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <BoardItem>(typeof(StoneworkingEfficiencySkill), 50, StoneworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <SandItem>(typeof(StoneworkingEfficiencySkill), 10, StoneworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(10, StoneworkingSpeedSkill.MultiplicativeStrategy, typeof(StoneworkingSpeedSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(BloomeryRecipe), Item.Get <BloomeryItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <BloomeryItem>().UILink(), value); this.CraftMinutes = value; this.Initialize(Localizer.DoStr("Bloomery"), typeof(BloomeryRecipe)); CraftingComponent.AddRecipe(typeof(KilnObject), this); }
public TreasuryRecipe() { this.Products = new CraftingElement[] { new CraftingElement <TreasuryItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <BrickItem>(typeof(MetalworkingEfficiencySkill), 20, MetalworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <LumberItem>(typeof(MetalworkingEfficiencySkill), 30, MetalworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <GoldIngotItem>(typeof(MetalworkingEfficiencySkill), 10, MetalworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(60, MetalworkingSpeedSkill.MultiplicativeStrategy, typeof(MetalworkingSpeedSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(TreasuryRecipe), Item.Get <TreasuryItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <TreasuryItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Treasury", typeof(TreasuryRecipe)); CraftingComponent.AddRecipe(typeof(AnvilObject), this); }
public SushiRecipe() { this.Products = new CraftingElement[] { new CraftingElement<SushiItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement<SalmonFilletItem>(typeof(CulinaryArtsEfficiencySkill), 10, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), new CraftingElement<TunaFilletItem>(typeof(CulinaryArtsEfficiencySkill), 10, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), new CraftingElement<TroutFilletItem>(typeof(CulinaryArtsEfficiencySkill), 10, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), new CraftingElement<ClamItem>(typeof(CulinaryArtsEfficiencySkill), 4, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), new CraftingElement<UrchinItem>(typeof(CulinaryArtsEfficiencySkill), 4, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), new CraftingElement<KelpItem>(typeof(CulinaryArtsEfficiencySkill), 4, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), new CraftingElement<RiceItem>(typeof(CulinaryArtsEfficiencySkill), 20, CulinaryArtsEfficiencySkill.MultiplicativeStrategy), }; this.CraftMinutes = CreateCraftTimeValue(typeof(SushiRecipe), Item.Get<SushiItem>().UILink(), 15, typeof(CulinaryArtsSpeedSkill)); this.Initialize("Sushi", typeof(SushiRecipe)); CraftingComponent.AddRecipe(typeof(KitchenObject), this); }
public WoodenStrawBedRecipe() { this.Products = new CraftingElement[] { new CraftingElement <WoodenStrawBedItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <LogItem>(typeof(WoodworkingEfficiencySkill), 10, WoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <BoardItem>(typeof(WoodworkingEfficiencySkill), 20, WoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <PlantFibersItem>(typeof(WoodworkingEfficiencySkill), 20, WoodworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(5, WoodworkingSpeedSkill.MultiplicativeStrategy, typeof(WoodworkingSpeedSkill), Localizer.Do("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(WoodenStrawBedRecipe), Item.Get <WoodenStrawBedItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <WoodenStrawBedItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Wooden Straw Bed", typeof(WoodenStrawBedRecipe)); CraftingComponent.AddRecipe(typeof(CarpentryTableObject), this); }
public ArcadeGun2Recipe() { this.Products = new CraftingElement[] { new CraftingElement <ArcadeGun2Item>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <GlassItem>(typeof(ElectronicProductionEfficiencySkill), 10, ElectronicProductionEfficiencySkill.MultiplicativeStrategy), new CraftingElement <CircuitItem>(typeof(ElectronicProductionEfficiencySkill), 20, ElectronicProductionEfficiencySkill.MultiplicativeStrategy), new CraftingElement <LumberItem>(typeof(ElectronicProductionEfficiencySkill), 40, ElectronicProductionEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(40, ElectronicProductionSpeedSkill.MultiplicativeStrategy, typeof(ElectronicProductionSpeedSkill), Localizer.Do("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(ArcadeGun2Recipe), Item.Get <ArcadeGun2Item>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <ArcadeGun2Item>().UILink(), value); this.CraftMinutes = value; this.Initialize("Arcade Gun 2", typeof(ArcadeGun2Recipe)); CraftingComponent.AddRecipe(typeof(FactoryObject), this); }
public ExcavatorRecipe() { this.Products = new CraftingElement[] { new CraftingElement <ExcavatorItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <GearboxItem>(typeof(IndustrialEngineeringEfficiencySkill), 10, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <CelluloseFiberItem>(typeof(IndustrialEngineeringEfficiencySkill), 20, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <SteelItem>(typeof(IndustrialEngineeringEfficiencySkill), 40, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <AdvancedCombustionEngineItem>(typeof(IndustrialEngineeringEfficiencySkill), 2, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <RivetItem>(typeof(IndustrialEngineeringEfficiencySkill), 20, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <GlassItem>(typeof(IndustrialEngineeringEfficiencySkill), 10, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <RubberItem>(typeof(IndustrialEngineeringEfficiencySkill), 8, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), }; this.CraftMinutes = new ConstantValue(50); this.Initialize("Excavator", typeof(ExcavatorRecipe)); CraftingComponent.AddRecipe(typeof(FactoryObject), this); }
public BannockRecipe() { var product = new Recipe( "Bannock", Localizer.DoStr("Bannock"), new IngredientElement[] { new IngredientElement(typeof(WheatItem), 1, typeof(CampfireCookingSkill), typeof(CampfireCookingLavishResourcesTalent)), new IngredientElement("Fat", 1, typeof(CampfireCookingSkill), typeof(CampfireCookingLavishResourcesTalent)), }, new CraftingElement <BannockItem>(1) ); this.Recipes = new List <Recipe> { product }; this.LaborInCalories = CreateLaborInCaloriesValue(20, typeof(CampfireCookingSkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(BannockRecipe), 0.5f, typeof(CampfireCookingSkill), typeof(CampfireCookingFocusedSpeedTalent), typeof(CampfireCookingParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Bannock"), typeof(BannockRecipe)); CraftingComponent.AddRecipe(typeof(CampfireObject), this); }
public ElkTrapRecipe() { this.Products = new CraftingElement[] { new CraftingElement <ElkTrapItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <CamasBulbItem>(typeof(WoodworkingSkill), 40, WoodworkingSkill.MultiplicativeStrategy), //requires Camas bulbs to make new CraftingElement <HuckleberriesItem>(typeof(WoodworkingSkill), 20, WoodworkingSkill.MultiplicativeStrategy), //requires Huckleberries to make new CraftingElement <LumberItem>(typeof(WoodworkingEfficiencySkill), 25, WoodworkingEfficiencySkill.MultiplicativeStrategy), //requires Lumber to make }; SkillModifiedValue value = new SkillModifiedValue(40, WoodworkingSkill.MultiplicativeStrategy, typeof(WoodworkingSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(ElkTrapRecipe), Item.Get <ElkTrapItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <ElkTrapItem>().UILink(), value); this.CraftMinutes = value; this.Initialize(Localizer.DoStr("Elk Trap"), typeof(ElkTrapRecipe)); CraftingComponent.AddRecipe(typeof(CarpentryTableObject), this); }
public SteelCeilingLightRecipe() { this.Products = new CraftingElement[] { new CraftingElement <SteelCeilingLightItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <LightBulbItem>(1), new CraftingElement <SteelItem>(typeof(SteelworkingEfficiencySkill), 10, SteelworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <PlasticItem>(typeof(SteelworkingEfficiencySkill), 10, SteelworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(10, SteelworkingSpeedSkill.MultiplicativeStrategy, typeof(SteelworkingSpeedSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(SteelCeilingLightRecipe), Item.Get <SteelCeilingLightItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <SteelCeilingLightItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Steel Ceiling Light", typeof(SteelCeilingLightRecipe)); CraftingComponent.AddRecipe(typeof(RoboticAssemblyLineObject), this); }
public BisonMountRecipe() { this.Products = new CraftingElement[] { new CraftingElement <BisonMountItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <BisonCarcassItem>(1), new CraftingElement <BoardItem>(typeof(ClothProductionEfficiencySkill), 5, ClothProductionEfficiencySkill.MultiplicativeStrategy), new CraftingElement <NailsItem>(typeof(ClothProductionEfficiencySkill), 8, ClothProductionEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(15, ClothProductionSpeedSkill.MultiplicativeStrategy, typeof(ClothProductionSpeedSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(BisonMountRecipe), Item.Get <BisonMountItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <BisonMountItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Bison Mount", typeof(BisonMountRecipe)); CraftingComponent.AddRecipe(typeof(TailoringTableObject), this); }
static PrinterObject() { foreach (var r in CraftingComponent.RecipesOnWorldObject(typeof(WorkbenchObject))) { CraftingComponent.AddRecipe(typeof(PrinterObject), r); } WorldObject.AddOccupancy <PrinterObject>(new List <BlockOccupancy>() { new BlockOccupancy(new Vector3i(0, 0, -1), typeof(BeltSlotBlock)), new BlockOccupancy(new Vector3i(-1, 0, -1)), new BlockOccupancy(new Vector3i(1, 0, -1)), new BlockOccupancy(new Vector3i(0, 0, 0)), new BlockOccupancy(new Vector3i(-1, 0, 0)), new BlockOccupancy(new Vector3i(1, 0, 0), typeof(BeltSlotBlock)), new BlockOccupancy(new Vector3i(0, 0, 1), typeof(BeltSlotBlock)), new BlockOccupancy(new Vector3i(-1, 0, 1)), new BlockOccupancy(new Vector3i(1, 0, 1)), new BlockOccupancy(new Vector3i(0, 1, -1)), new BlockOccupancy(new Vector3i(-1, 1, -1)), new BlockOccupancy(new Vector3i(1, 1, -1)), new BlockOccupancy(new Vector3i(0, 1, 0)), new BlockOccupancy(new Vector3i(-1, 1, 0)), new BlockOccupancy(new Vector3i(1, 1, 0)), new BlockOccupancy(new Vector3i(0, 1, 1)), new BlockOccupancy(new Vector3i(-1, 1, 1)), new BlockOccupancy(new Vector3i(1, 1, 1)), new BlockOccupancy(new Vector3i(0, 2, -1)), new BlockOccupancy(new Vector3i(-1, 2, -1)), new BlockOccupancy(new Vector3i(1, 2, -1)), new BlockOccupancy(new Vector3i(0, 2, 0)), new BlockOccupancy(new Vector3i(-1, 2, 0)), new BlockOccupancy(new Vector3i(1, 2, 0)), new BlockOccupancy(new Vector3i(0, 2, 1)), new BlockOccupancy(new Vector3i(-1, 2, 1)), new BlockOccupancy(new Vector3i(1, 2, 1)), }); }
public NuclearReactorItemRecipe() { this.Products = new CraftingElement[] { new CraftingElement <NuclearReactorItem>(1), }; this.Ingredients = new CraftingElement[] { new CraftingElement <ConcreteItem>(typeof(NuclearTechnitionSkill), 2000f, NuclearTechnitionSkill.MultiplicativeStrategy), new CraftingElement <SteelPlateItem>(typeof(NuclearTechnitionSkill), 700f, NuclearTechnitionSkill.MultiplicativeStrategy), new CraftingElement <CircuitItem>(typeof(NuclearTechnitionSkill), 150f, NuclearTechnitionSkill.MultiplicativeStrategy), new CraftingElement <ServoItem>(typeof(NuclearTechnitionSkill), 50f, NuclearTechnitionSkill.MultiplicativeStrategy), new CraftingElement <HeatSinkItem>(typeof(NuclearTechnitionSkill), 50f, NuclearTechnitionSkill.MultiplicativeStrategy), }; this.CraftMinutes = CreateCraftTimeValue(typeof(NuclearReactorItemRecipe), Item.Get <NuclearReactorItem>().UILink(), 120f, typeof(NuclearTechnitionSkill)); this.Initialize(Localizer.DoStr("Ядерный реактор"), typeof(NuclearReactorItemRecipe)); CraftingComponent.AddRecipe(typeof(RoboticAssemblyLineObject), this); }
public StuffedTurkeyRecipe() { var product = new Recipe( "StuffedTurkey", Localizer.DoStr("Stuffed Turkey"), new IngredientElement[] { new IngredientElement(typeof(PrimeCutItem), 4, typeof(AdvancedBakingSkill), typeof(AdvancedBakingLavishResourcesTalent)), new IngredientElement(typeof(BreadItem), 1, typeof(AdvancedBakingSkill), typeof(AdvancedBakingLavishResourcesTalent)), new IngredientElement(typeof(VegetableMedleyItem), 1, typeof(AdvancedBakingSkill), typeof(AdvancedBakingLavishResourcesTalent)), }, new CraftingElement <StuffedTurkeyItem>(1) ); this.Recipes = new List <Recipe> { product }; this.LaborInCalories = CreateLaborInCaloriesValue(20, typeof(AdvancedBakingSkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(StuffedTurkeyRecipe), 4, typeof(AdvancedBakingSkill), typeof(AdvancedBakingFocusedSpeedTalent), typeof(AdvancedBakingParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Stuffed Turkey"), typeof(StuffedTurkeyRecipe)); CraftingComponent.AddRecipe(typeof(BakeryOvenObject), this); }
public ClothCapeRecipe() { this.Recipes = new List <Recipe> { new Recipe( "ClothCape", Localizer.DoStr("Cloth Cape"), new IngredientElement[] { new IngredientElement(typeof(ClothItem), 20, typeof(TailoringSkill), typeof(TailoringLavishResourcesTalent)), new IngredientElement(typeof(CelluloseFiberItem), 10, typeof(TailoringSkill), typeof(TailoringLavishResourcesTalent)), new IngredientElement(typeof(LeatherHideItem), 30, typeof(TailoringSkill), typeof(TailoringLavishResourcesTalent)), }, new CraftingElement <ClothCapeItem>() ) }; this.LaborInCalories = CreateLaborInCaloriesValue(60, typeof(TailoringSkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(ClothCapeRecipe), 1, typeof(TailoringSkill), typeof(TailoringFocusedSpeedTalent), typeof(TailoringParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Cloth Cape"), typeof(ClothCapeRecipe)); CraftingComponent.AddRecipe(typeof(TailoringTableObject), this); }
public MillRecipe() { this.Products = new CraftingElement[] { new CraftingElement <MillItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <StoneItem>(typeof(StoneworkingEfficiencySkill), 35, StoneworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <LogItem>(typeof(StoneworkingEfficiencySkill), 15, StoneworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <IronIngotItem>(typeof(StoneworkingEfficiencySkill), 4, StoneworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <BoardItem>(typeof(StoneworkingEfficiencySkill), 8, StoneworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(20, StoneworkingSpeedSkill.MultiplicativeStrategy, typeof(StoneworkingSpeedSkill), Localizer.Do("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(MillRecipe), Item.Get <MillItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <MillItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Mill", typeof(MillRecipe)); CraftingComponent.AddRecipe(typeof(MasonryTableObject), this); }
public MYCokeFurnaceRecipe() { this.Products = new CraftingElement[] { new CraftingElement <MYCokeFurnaceItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <ReinforcedConcreteItem>(typeof(IndustrialEngineeringEfficiencySkill), 10, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <SteelPlateItem>(typeof(IndustrialEngineeringEfficiencySkill), 20, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <ScrewsItem>(typeof(IndustrialEngineeringEfficiencySkill), 20, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), new CraftingElement <IronPipeItem>(typeof(IndustrialEngineeringEfficiencySkill), 10, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(60, IndustrialEngineeringSpeedSkill.MultiplicativeStrategy, typeof(IndustrialEngineeringSpeedSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(MYCokeFurnaceRecipe), Item.Get <MYCokeFurnaceItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <MYCokeFurnaceItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Coke Furnace", typeof(MYCokeFurnaceRecipe)); CraftingComponent.AddRecipe(typeof(AssemblyLineObject), this); }
public SteamTruckRecipe() { this.Products = new CraftingElement[] { new CraftingElement <SteamTruckItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <PortableSteamEngineItem>(1), new CraftingElement <IronWheelItem>(4), new CraftingElement <IronAxleItem>(1), new CraftingElement <IronPlateItem>(typeof(MechanicsSkill), 30, MechanicsSkill.MultiplicativeStrategy, typeof(MechanicsLavishResourcesTalent)), new CraftingElement <IronPipeItem>(typeof(MechanicsSkill), 20, MechanicsSkill.MultiplicativeStrategy, typeof(MechanicsLavishResourcesTalent)), new CraftingElement <ScrewsItem>(typeof(MechanicsSkill), 40, MechanicsSkill.MultiplicativeStrategy, typeof(MechanicsLavishResourcesTalent)), new CraftingElement <LumberItem>(typeof(MechanicsSkill), 30, MechanicsSkill.MultiplicativeStrategy, typeof(MechanicsLavishResourcesTalent)), new CraftingElement <LeatherHideItem>(typeof(MechanicsSkill), 20, MechanicsSkill.MultiplicativeStrategy, typeof(MechanicsLavishResourcesTalent)) }; this.CraftMinutes = CreateCraftTimeValue(typeof(SteamTruckRecipe), Item.Get <SteamTruckItem>().UILink(), 25, typeof(MechanicsSkill), typeof(MechanicsFocusedSpeedTalent), typeof(MechanicsParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Steam Truck"), typeof(SteamTruckRecipe)); CraftingComponent.AddRecipe(typeof(AssemblyLineObject), this); }
public MechanicalWaterPumpRecipe() { var product = new Recipe( "MechanicalWaterPump", Localizer.DoStr("Mechanical Water Pump"), new IngredientElement[] { new IngredientElement(typeof(IronBarItem), 8, typeof(MechanicsSkill), typeof(MechanicsLavishResourcesTalent)), new IngredientElement(typeof(IronPipeItem), 8, typeof(MechanicsSkill), typeof(MechanicsLavishResourcesTalent)), }, new CraftingElement <MechanicalWaterPumpItem>() ); this.Recipes = new List <Recipe> { product }; this.ExperienceOnCraft = 5; this.LaborInCalories = CreateLaborInCaloriesValue(100, typeof(MechanicsSkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(MechanicalWaterPumpRecipe), 8, typeof(MechanicsSkill), typeof(MechanicsFocusedSpeedTalent), typeof(MechanicsParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Mechanical Water Pump"), typeof(MechanicalWaterPumpRecipe)); CraftingComponent.AddRecipe(typeof(AssemblyLineObject), this); }
public OilRecipe() { var product = new Recipe( "Oil", Localizer.DoStr("Oil"), new IngredientElement[] { new IngredientElement(typeof(SunflowerSeedItem), 12, typeof(MillingSkill), typeof(MillingLavishResourcesTalent)), }, new CraftingElement <OilItem>(1) ); this.Initialize(Localizer.DoStr("Oil"), typeof(OilRecipe)); this.Recipes = new List <Recipe> { product }; this.LaborInCalories = CreateLaborInCaloriesValue(20, typeof(MillingSkill), typeof(OilRecipe), this.UILink()); this.CraftMinutes = CreateCraftTimeValue(typeof(OilRecipe), this.UILink(), 2, typeof(MillingSkill), typeof(MillingFocusedSpeedTalent), typeof(MillingParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Oil"), typeof(OilRecipe)); CraftingComponent.AddRecipe(typeof(MillObject), this); }
public BeehiveRecipe() { this.Products = new CraftingElement[] { new CraftingElement <BeehiveItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <BoardItem>(typeof(BeekeeperEfficiencySkill), 50, BeekeeperEfficiencySkill.MultiplicativeStrategy), new CraftingElement <GlassItem>(typeof(BeekeeperEfficiencySkill), 10, BeekeeperEfficiencySkill.MultiplicativeStrategy), new CraftingElement <IronIngotItem>(typeof(BeekeeperEfficiencySkill), 4, BeekeeperEfficiencySkill.MultiplicativeStrategy), new CraftingElement <GlueItem>(typeof(BeekeeperEfficiencySkill), 8, BeekeeperEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(1, BeekeeperSpeedSkill.MultiplicativeStrategy, typeof(BeekeeperSpeedSkill), Localizer.Do("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(BeehiveRecipe), Item.Get <BeehiveItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <BeehiveItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Beehive", typeof(BeehiveRecipe)); CraftingComponent.AddRecipe(typeof(FarmersTableObject), this); }
public TallowWallLampRecipe() { var product = new Recipe( "TallowWallLamp", Localizer.DoStr("Tallow Wall Lamp"), new IngredientElement[] { new IngredientElement(typeof(IronBarItem), 1, typeof(SmeltingSkill), typeof(SmeltingLavishResourcesTalent)), new IngredientElement(typeof(TallowItem), 2, typeof(SmeltingSkill), typeof(SmeltingLavishResourcesTalent)), }, new CraftingElement <TallowWallLampItem>() ); this.Recipes = new List <Recipe> { product }; this.ExperienceOnCraft = 3; this.LaborInCalories = CreateLaborInCaloriesValue(80, typeof(SmeltingSkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(TallowWallLampRecipe), 3, typeof(SmeltingSkill), typeof(SmeltingFocusedSpeedTalent), typeof(SmeltingParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Tallow Wall Lamp"), typeof(TallowWallLampRecipe)); CraftingComponent.AddRecipe(typeof(AnvilObject), this); }
public SteamTruckRecipe() { this.Products = new CraftingElement[] { new CraftingElement <SteamTruckItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <PortableSteamEngineItem>(1), new CraftingElement <IronWheelItem>(4), new CraftingElement <IronAxleItem>(1), new CraftingElement <IronPlateItem>(typeof(MechanicsAssemblyEfficiencySkill), 30, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy), new CraftingElement <IronPipeItem>(typeof(MechanicsAssemblyEfficiencySkill), 20, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy), new CraftingElement <ScrewsItem>(typeof(MechanicsAssemblyEfficiencySkill), 40, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy), new CraftingElement <LumberItem>(typeof(MechanicsAssemblyEfficiencySkill), 30, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy), new CraftingElement <LeatherHideItem>(typeof(MechanicsAssemblyEfficiencySkill), 20, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy), }; this.CraftMinutes = new ConstantValue(25); this.Initialize("Steam Truck", typeof(SteamTruckRecipe)); CraftingComponent.AddRecipe(typeof(AssemblyLineObject), this); }
public KilnRecipe() { var product = new Recipe( "Kiln", Localizer.DoStr("Kiln"), new IngredientElement[] { new IngredientElement(typeof(MortarItem), 10, typeof(MasonrySkill), typeof(MasonryLavishResourcesTalent)), new IngredientElement("MortaredStone", 10, typeof(MasonrySkill), typeof(MasonryLavishResourcesTalent)), }, new CraftingElement <KilnItem>() ); this.Recipes = new List <Recipe> { product }; this.ExperienceOnCraft = 5; this.LaborInCalories = CreateLaborInCaloriesValue(600, typeof(MasonrySkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(KilnRecipe), 10, typeof(MasonrySkill), typeof(MasonryFocusedSpeedTalent), typeof(MasonryParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Kiln"), typeof(KilnRecipe)); CraftingComponent.AddRecipe(typeof(MasonryTableObject), this); }
public BakeryOvenRecipe() { var product = new Recipe( "BakeryOven", Localizer.DoStr("Bakery Oven"), new IngredientElement[] { new IngredientElement(typeof(BrickItem), 20, typeof(PotterySkill), typeof(PotteryLavishResourcesTalent)), new IngredientElement(typeof(IronBarItem), 10, typeof(PotterySkill), typeof(PotteryLavishResourcesTalent)), }, new CraftingElement <BakeryOvenItem>() ); this.Recipes = new List <Recipe> { product }; this.ExperienceOnCraft = 5; this.LaborInCalories = CreateLaborInCaloriesValue(300, typeof(PotterySkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(BakeryOvenRecipe), 8, typeof(PotterySkill), typeof(PotteryFocusedSpeedTalent), typeof(PotteryParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Bakery Oven"), typeof(BakeryOvenRecipe)); CraftingComponent.AddRecipe(typeof(KilnObject), this); }
public BakingSkillBookRecipe() { this.Recipes = new List <Recipe> { new Recipe( "Baking", Localizer.DoStr("Baking"), new IngredientElement[] { new IngredientElement(typeof(CulinaryResearchPaperBasicItem), 10), new IngredientElement(typeof(MetallurgyResearchPaperBasicItem), 5), new IngredientElement("Basic Research", 10), }, new CraftingElement <BakingSkillScroll>() ) }; this.LaborInCalories = CreateLaborInCaloriesValue(4000); this.CraftMinutes = CreateCraftTimeValue(15); this.Initialize(Localizer.DoStr("Baking Skill Scroll"), typeof(BakingSkillBookRecipe)); CraftingComponent.AddRecipe(typeof(ResearchTableObject), this); }
public NuclearFuelCellRecipe() { this.Products = new CraftingElement[] { new CraftingElement <NuclearFuelCellItem>(1), new CraftingElement <CopperIngotItem>(100), new CraftingElement <TailingsItem>(100), }; this.Ingredients = new CraftingElement[] { new CraftingElement <BarrelItem>(1), new CraftingElement <LiquidNitrogenItem>(100), new CraftingElement <CopperOreItem>(typeof(NuclearTechnitionSkill), 500, NuclearTechnitionSkill.MultiplicativeStrategy), }; this.ExperienceOnCraft = 20f; this.Initialize(Localizer.DoStr("Ядерный Топливный Контейнер"), typeof(NuclearFuelCellRecipe)); this.CraftMinutes = CreateCraftTimeValue(typeof(NuclearFuelCellRecipe), Item.Get <NuclearFuelCellItem>().UILink(), 240f, typeof(NuclearTechnitionSkill)); CraftingComponent.AddRecipe(typeof(LaboratoryObject), this); }
public FlowersDoubleBedRecipe() { this.Products = new CraftingElement[] { new CraftingElement <FlowersDoubleBedItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <LumberItem>(typeof(LumberWoodworkingEfficiencySkill), 40, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <ClothItem>(typeof(LumberWoodworkingEfficiencySkill), 40, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <RivetItem>(typeof(LumberWoodworkingEfficiencySkill), 5, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <WoodPolishItem>(typeof(LumberWoodworkingEfficiencySkill), 5, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(10, LumberWoodworkingSpeedSkill.MultiplicativeStrategy, typeof(LumberWoodworkingSpeedSkill), Localizer.Do("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(FlowersDoubleBedRecipe), Item.Get <FlowersDoubleBedItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <FlowersDoubleBedItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Flowers Double Bed", typeof(FlowersDoubleBedRecipe)); CraftingComponent.AddRecipe(typeof(SawmillObject), this); }
public TailoringTableRecipe() { var product = new Recipe( "TailoringTable", Localizer.DoStr("Tailoring Table"), new IngredientElement[] { new IngredientElement(typeof(PlantFibersItem), 50, typeof(CarpentrySkill), typeof(CarpentryLavishResourcesTalent)), new IngredientElement("WoodBoard", 20, typeof(CarpentrySkill), typeof(CarpentryLavishResourcesTalent)), }, new CraftingElement <TailoringTableItem>() ); this.Recipes = new List <Recipe> { product }; this.ExperienceOnCraft = 5; this.LaborInCalories = CreateLaborInCaloriesValue(600, typeof(CarpentrySkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(TailoringTableRecipe), 25, typeof(CarpentrySkill), typeof(CarpentryFocusedSpeedTalent), typeof(CarpentryParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Tailoring Table"), typeof(TailoringTableRecipe)); CraftingComponent.AddRecipe(typeof(CarpentryTableObject), this); }
public LumberStockpileRecipe() { var product = new Recipe( "LumberStockpile", Localizer.DoStr("Lumber Stockpile"), new IngredientElement[] { new IngredientElement("Lumber", 15, typeof(CarpentrySkill), typeof(CarpentryLavishResourcesTalent)), new IngredientElement("WoodBoard", 10, typeof(CarpentrySkill), typeof(CarpentryLavishResourcesTalent)), }, new CraftingElement <LumberStockpileItem>() ); this.Recipes = new List <Recipe> { product }; this.ExperienceOnCraft = 3; this.LaborInCalories = CreateLaborInCaloriesValue(1000, typeof(CarpentrySkill)); this.CraftMinutes = CreateCraftTimeValue(typeof(LumberStockpileRecipe), 8, typeof(CarpentrySkill), typeof(CarpentryFocusedSpeedTalent), typeof(CarpentryParallelSpeedTalent)); this.Initialize(Localizer.DoStr("Lumber Stockpile"), typeof(LumberStockpileRecipe)); CraftingComponent.AddRecipe(typeof(SawmillObject), this); }
public WoodenTableLampRecipe() { this.Products = new CraftingElement[] { new CraftingElement <WoodenTableLampItem>(), }; this.Ingredients = new CraftingElement[] { new CraftingElement <LightBulbItem>(1), new CraftingElement <LumberItem>(typeof(LumberWoodworkingEfficiencySkill), 5, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <BoardItem>(typeof(LumberWoodworkingEfficiencySkill), 10, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), new CraftingElement <ClothItem>(typeof(LumberWoodworkingEfficiencySkill), 10, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy), }; SkillModifiedValue value = new SkillModifiedValue(10, SteelworkingSpeedSkill.MultiplicativeStrategy, typeof(SteelworkingSpeedSkill), Localizer.DoStr("craft time")); SkillModifiedValueManager.AddBenefitForObject(typeof(WoodenTableLampRecipe), Item.Get <WoodenTableLampItem>().UILink(), value); SkillModifiedValueManager.AddSkillBenefit(Item.Get <WoodenTableLampItem>().UILink(), value); this.CraftMinutes = value; this.Initialize("Wooden Table Lamp", typeof(WoodenTableLampRecipe)); CraftingComponent.AddRecipe(typeof(SawmillObject), this); }