protected override void Initialize()
        {
            base.Initialize();

            this.GetComponent <MinimapComponent>().Initialize(Localizer.DoStr("Civics"));
        }
Exemple #2
0
        public StuffedElkRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <StuffedElkItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <ElkCarcassItem>(typeof(ClothProductionEfficiencySkill), 4, ClothProductionEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <PlantFibersItem>(typeof(ClothProductionEfficiencySkill), 100, ClothProductionEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(40, ClothProductionSpeedSkill.MultiplicativeStrategy, typeof(ClothProductionSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(StuffedElkRecipe), Item.Get <StuffedElkItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <StuffedElkItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize(Localizer.DoStr("Stuffed Elk"), typeof(StuffedElkRecipe));
            CraftingComponent.AddRecipe(typeof(TailoringTableObject), this);
        }
Exemple #3
0
        public WheatSeedRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement<WheatSeedItem>(),
            };
            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement<WheatItem>(typeof(SeedProductionEfficiencySkill), 2, SeedProductionEfficiencySkill.MultiplicativeStrategy)   
            };
            SkillModifiedValue value = new SkillModifiedValue(1, SeedProductionSpeedSkill.MultiplicativeStrategy, typeof(SeedProductionSpeedSkill), Localizer.DoStr("craft time"));
            SkillModifiedValueManager.AddBenefitForObject(typeof(WheatSeedRecipe), Item.Get<WheatSeedItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get<WheatSeedItem>().UILink(), value);
            this.CraftMinutes = value;

            this.Initialize(Localizer.DoStr("Wheat Seed"), typeof(WheatSeedRecipe));
            CraftingComponent.AddRecipe(typeof(FarmersTableObject), this);
        }
Exemple #4
0
        public JDEHammerRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <JDEHammerItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <SteelItem>(typeof(BasicEWorkingEfficiencySkill), 22, BasicEWorkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(360f, BasicEWorkingSpeedSkill.MultiplicativeStrategy, typeof(BasicEWorkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(JDEHammerRecipe), Item.Get <JDEHammerItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <JDEHammerItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Electric Hammer", typeof(JDEHammerRecipe));
            CraftingComponent.AddRecipe(typeof(AnvilObject), this);
        }
Exemple #5
0
        public BrazierRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <BrazierItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <IronIngotItem>(typeof(MetalworkingEfficiencySkill), 10, MetalworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(1, MetalworkingSpeedSkill.MultiplicativeStrategy, typeof(MetalworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(BrazierRecipe), Item.Get <BrazierItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <BrazierItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Brazier", typeof(BrazierRecipe));
            CraftingComponent.AddRecipe(typeof(AnvilObject), this);
        }
Exemple #6
0
        public HewnLogDoorRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <HewnLogDoorItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <HewnLogItem>(typeof(WoodworkingEfficiencySkill), 10, WoodworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <HingeItem>(typeof(WoodworkingEfficiencySkill), 2, WoodworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <NailsItem>(typeof(WoodworkingEfficiencySkill), 5, WoodworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(3, WoodworkingSpeedSkill.MultiplicativeStrategy, typeof(WoodworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(HewnLogDoorRecipe), Item.Get <HewnLogDoorItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <HewnLogDoorItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Hewn Log Door", typeof(HewnLogDoorRecipe));
            CraftingComponent.AddRecipe(typeof(CarpentryTableObject), this);
        }
Exemple #7
0
            public TomatoesSpecies() : base()
            {
                species           = this;
                this.InstanceType = typeof(Tomatoes);

                // Info
                this.Decorative  = false;
                this.Name        = "Tomatoes";
                this.DisplayName = Localizer.DoStr("Tomatoes");
                this.IsConsideredNearbyFoodDuringSpawnCheck = true;
                // Lifetime
                this.MaturityAgeDays = 0.8f;
                // Generation
                // Food
                this.CalorieValue = 5;
                // Resources
                this.PostHarvestingGrowth = 0.5f;
                this.PickableAtPercent    = 0.8f;
                this.ResourceList         = new List <SpeciesResource>()
                {
                    new SpeciesResource(typeof(TomatoItem), new Range(1, 3), 1),
                    new SpeciesResource(typeof(TomatoSeedItem), new Range(1, 2), 0.1f)
                };
                this.ResourceBonusAtGrowth = 0.9f;
                // Visuals
                this.BlockType = typeof(TomatoesBlock);
                // Climate
                this.ReleasesCO2ppmPerDay = -0.00001f;
                // WorldLayers
                this.MaxGrowthRate = 0.01f;
                this.MaxDeathRate  = 0.005f;
                this.SpreadRate    = 0.001f;
                this.ResourceConstraints.Add(new ResourceConstraint()
                {
                    LayerName = "Nitrogen", HalfSpeedConcentration = 0.1f, MaxResourceContent = 0.2f
                });
                this.ResourceConstraints.Add(new ResourceConstraint()
                {
                    LayerName = "Phosphorus", HalfSpeedConcentration = 0.1f, MaxResourceContent = 0.2f
                });
                this.ResourceConstraints.Add(new ResourceConstraint()
                {
                    LayerName = "Potassium", HalfSpeedConcentration = 0.1f, MaxResourceContent = 0.2f
                });
                this.ResourceConstraints.Add(new ResourceConstraint()
                {
                    LayerName = "SoilMoisture", HalfSpeedConcentration = 0.1f, MaxResourceContent = 0.2f
                });
                this.CapacityConstraints.Add(new CapacityConstraint()
                {
                    CapacityLayerName = "FertileGround", ConsumedCapacityPerPop = 1
                });
                this.CapacityConstraints.Add(new CapacityConstraint()
                {
                    CapacityLayerName = "ShrubSpace", ConsumedCapacityPerPop = 3.5f
                });
                this.IdealTemperatureRange     = new Range(0.7f, 0.75f);
                this.IdealMoistureRange        = new Range(0.42f, 0.45f);
                this.IdealWaterRange           = new Range(0, 0.1f);
                this.WaterExtremes             = new Range(0, 0.2f);
                this.TemperatureExtremes       = new Range(0.4f, 0.8f);
                this.MoistureExtremes          = new Range(0.3f, 0.5f);
                this.MaxPollutionDensity       = 0.7f;
                this.PollutionDensityTolerance = 0.1f;
                this.VoxelsPerEntry            = 5;
            }
 protected override void Initialize()
 {
     this.GetComponent <MinimapComponent>().Initialize(Localizer.DoStr("Economy"));
 }
Exemple #9
0
        public OilRefineryRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <OilRefineryItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <BrickItem>(typeof(MechanicsAssemblyEfficiencySkill), 10, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <GearItem>(typeof(MechanicsAssemblyEfficiencySkill), 10, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <IronIngotItem>(typeof(MechanicsAssemblyEfficiencySkill), 20, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(50, MechanicsAssemblySpeedSkill.MultiplicativeStrategy, typeof(MechanicsAssemblySpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(OilRefineryRecipe), Item.Get <OilRefineryItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <OilRefineryItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Oil Refinery", typeof(OilRefineryRecipe));
            CraftingComponent.AddRecipe(typeof(AssemblyLineObject), this);
        }
Exemple #10
0
        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 <MYNailItem>(typeof(ClothProductionEfficiencySkill), 20, 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);
        }
        public MachinistTableRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <MachinistTableItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <LumberItem>(typeof(MechanicsAssemblyEfficiencySkill), 20, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <BoardItem>(typeof(MechanicsAssemblyEfficiencySkill), 20, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <IronIngotItem>(typeof(MechanicsAssemblyEfficiencySkill), 20, MechanicsAssemblyEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(50, MechanicsAssemblySpeedSkill.MultiplicativeStrategy, typeof(MechanicsAssemblySpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(MachinistTableRecipe), Item.Get <MachinistTableItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <MachinistTableItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize(Localizer.DoStr("Machinist Table"), typeof(MachinistTableRecipe));
            CraftingComponent.AddRecipe(typeof(SawmillObject), this);
        }
        public SmallStandingLumberSignRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <SmallStandingLumberSignItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <BoardItem>(typeof(LumberWoodworkingEfficiencySkill), 10, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <LumberItem>(typeof(LumberWoodworkingEfficiencySkill), 4, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <NailsItem>(typeof(LumberWoodworkingEfficiencySkill), 4, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(10, LumberWoodworkingSpeedSkill.MultiplicativeStrategy, typeof(LumberWoodworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(SmallStandingLumberSignRecipe), Item.Get <SmallStandingLumberSignItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <SmallStandingLumberSignItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Small Standing Lumber Sign", typeof(SmallStandingLumberSignRecipe));
            CraftingComponent.AddRecipe(typeof(SawmillObject), this);
        }
Exemple #13
0
 protected override void Initialize()
 {
     this.GetComponent <MinimapComponent>().Initialize(Localizer.DoStr("Housing"));
     this.GetComponent <HousingComponent>().Set(RugSmallItem.HousingVal);
 }
Exemple #14
0
        public BloomeryRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <BloomeryItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <BrickItem>(typeof(StoneworkingEfficiencySkill), 10, StoneworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <BoardItem>(typeof(StoneworkingEfficiencySkill), 20, 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("Bloomery", typeof(BloomeryRecipe));
            CraftingComponent.AddRecipe(typeof(KilnObject), this);
        }
Exemple #15
0
        public ShelfCabinetRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <ShelfCabinetItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <LumberItem>(typeof(LumberWoodworkingEfficiencySkill), 20, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <PaperItem>(typeof(LumberWoodworkingEfficiencySkill), 100, LumberWoodworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(5, LumberWoodworkingSpeedSkill.MultiplicativeStrategy, typeof(LumberWoodworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(ShelfCabinetRecipe), Item.Get <ShelfCabinetItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <ShelfCabinetItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Shelf Cabinet", typeof(ShelfCabinetRecipe));
            CraftingComponent.AddRecipe(typeof(SawmillObject), this);
        }
        public SmallStandingStoneSignRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <SmallStandingStoneSignItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <StoneItem>(typeof(StoneworkingEfficiencySkill), 30, StoneworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(10, StoneworkingSpeedSkill.MultiplicativeStrategy, typeof(StoneworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(SmallStandingStoneSignRecipe), Item.Get <SmallStandingStoneSignItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <SmallStandingStoneSignItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Small Standing Stone Sign", typeof(SmallStandingStoneSignRecipe));
            CraftingComponent.AddRecipe(typeof(MasonryTableObject), this);
        }
Exemple #17
0
 public PlantLayerSettingsLatticeMushroom() : base()
 {
     this.Name                = "LatticeMushroom";
     this.DisplayName         = string.Format("{0} {1}", Localizer.DoStr("Lattice Mushroom"), Localizer.DoStr("Population"));
     this.InitMultiplier      = 1;
     this.SyncToClient        = false;
     this.Range               = new Range(0f, 1f);
     this.OverrideRenderRange = new Range(0f, 0.333333f);
     this.MinColor            = new Color(1f, 1f, 1f);
     this.MaxColor            = new Color(0f, 1f, 0f);
     this.SumRelevant         = true;
     this.Unit                = "Lattice Mushroom";
     this.VoxelsPerEntry      = 5;
     this.Category            = WorldLayerCategory.Plant;
     this.ValueType           = WorldLayerValueType.FillRate;
     this.AreaDescription     = "";
     this.Subcategory         = "LatticeMushroom".AddSpacesBetweenCapitals();
 }
 public InfiniteYieldAttribute(Type beneficiary, LocString beneficiaryText, Type skillType)
 {
     this.Yield = new SkillModifiedValue(0, new LinearStrategy(), skillType, Localizer.DoStr("harvest yield"), typeof(Yield));
     SkillModifiedValueManager.AddSkillBenefit(beneficiary, beneficiaryText, this.Yield);
     SkillModifiedValueManager.AddBenefitForObject(beneficiary, beneficiaryText, this.Yield);
 }
Exemple #19
0
 public PlantLayerSettingsTomatoes() : base()
 {
     this.Name            = "Tomatoes";
     this.DisplayName     = string.Format("{0} {1}", Localizer.DoStr("Tomatoes"), Localizer.DoStr("Population"));
     this.InitMultiplier  = 1;
     this.SyncToClient    = false;
     this.Range           = new Range(0f, 1f);
     this.RenderRange     = new Range(0f, 0.333333f);
     this.MinColor        = new Color(1f, 1f, 1f);
     this.MaxColor        = new Color(0f, 1f, 0f);
     this.Percent         = false;
     this.SumRelevant     = true;
     this.Unit            = "Tomatoes";
     this.VoxelsPerEntry  = 5;
     this.Category        = WorldLayerCategory.Plant;
     this.ValueType       = WorldLayerValueType.Percent;
     this.AreaDescription = "";
 }
 public InfiniteYieldAttribute(Type beneficiary, LocString beneficiaryText, Type skillType, float[] multipliers)
 {
     this.Yield = new SkillModifiedValue(1, new InfiniteMultiplicativeStrategy(multipliers), skillType, Localizer.DoStr("harvest yield"), typeof(Yield));
     SkillModifiedValueManager.AddSkillBenefit(beneficiary, beneficiaryText, this.Yield);
     SkillModifiedValueManager.AddBenefitForObject(beneficiary, beneficiaryText, this.Yield);
 }
Exemple #21
0
        public ContractBoardRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <ContractBoardItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <LogItem>(typeof(WoodworkingEfficiencySkill), 20, WoodworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(15, WoodworkingSpeedSkill.MultiplicativeStrategy, typeof(WoodworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(ContractBoardRecipe), Item.Get <ContractBoardItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <ContractBoardItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize(Localizer.DoStr("Contract Board"), typeof(ContractBoardRecipe));
            CraftingComponent.AddRecipe(typeof(CarpentryTableObject), this);
        }
 protected new static SkillModifiedValue CreateCalorieValue(float startValue, Type skillType, Type beneficiary, LocString beneficiaryText)
 {
     return(CreateSkillModifiedValue(startValue, calorieMultiplicativeStrategy, skillType, beneficiary, beneficiaryText, Localizer.DoStr("calorie consumption"), typeof(Calorie)));
 }
Exemple #23
0
        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.DoStr("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);
        }
Exemple #24
0
        public BlastFurnaceRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <BlastFurnaceItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <BrickItem>(typeof(MetalworkingEfficiencySkill), 10, MetalworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <IronPlateItem>(typeof(MetalworkingEfficiencySkill), 20, MetalworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <ScrewsItem>(typeof(MetalworkingEfficiencySkill), 20, MetalworkingEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <IronPipeItem>(typeof(MetalworkingEfficiencySkill), 10, MetalworkingEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(60, MetalworkingSpeedSkill.MultiplicativeStrategy, typeof(MetalworkingSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(BlastFurnaceRecipe), Item.Get <BlastFurnaceItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <BlastFurnaceItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize(Localizer.DoStr("Blast Furnace"), typeof(BlastFurnaceRecipe));
            CraftingComponent.AddRecipe(typeof(AssemblyLineObject), this);
        }
Exemple #25
0
        public SteelFloorLampRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <SteelFloorLampItem>(),
            };

            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(SteelFloorLampRecipe), Item.Get <SteelFloorLampItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <SteelFloorLampItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize("Steel Floor Lamp", typeof(SteelFloorLampRecipe));
            CraftingComponent.AddRecipe(typeof(RoboticAssemblyLineObject), this);
        }
Exemple #26
0
        public HareTrapRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <HareTrapItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <ScrapMeatItem>(typeof(WoodworkingSkill), 40, WoodworkingSkill.MultiplicativeStrategy),                  //requires Scrap meat       to make
                new CraftingElement <BoardItem>(typeof(WoodworkingEfficiencySkill), 25, WoodworkingEfficiencySkill.MultiplicativeStrategy),  //requires Lumber           to make
            };
            SkillModifiedValue value = new SkillModifiedValue(25, WoodworkingSkill.MultiplicativeStrategy, typeof(WoodworkingSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(HareTrapRecipe), Item.Get <HareTrapItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <HareTrapItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize(Localizer.DoStr("Hare Trap"), typeof(HareTrapRecipe));
            CraftingComponent.AddRecipe(typeof(CarpentryTableObject), this);
        }
Exemple #27
0
 public override void OnLevelUp(User user)
 {
     user.Skillset.AddExperience(typeof(SelfImprovementSkill), 20, Localizer.DoStr("for leveling up another specialization."));
 }
Exemple #28
0
 public override string ToString()
 {
     return(Localizer.DoStr("REYmod"));
 }
        public WashingMachineRecipe()
        {
            this.Products = new CraftingElement[]
            {
                new CraftingElement <WashingMachineItem>(),
            };

            this.Ingredients = new CraftingElement[]
            {
                new CraftingElement <SteelItem>(typeof(IndustrialEngineeringEfficiencySkill), 20, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy),
                new CraftingElement <CircuitItem>(typeof(IndustrialEngineeringEfficiencySkill), 5, IndustrialEngineeringEfficiencySkill.MultiplicativeStrategy),
            };
            SkillModifiedValue value = new SkillModifiedValue(10, IndustrialEngineeringSpeedSkill.MultiplicativeStrategy, typeof(IndustrialEngineeringSpeedSkill), Localizer.DoStr("craft time"));

            SkillModifiedValueManager.AddBenefitForObject(typeof(WashingMachineRecipe), Item.Get <WashingMachineItem>().UILink(), value);
            SkillModifiedValueManager.AddSkillBenefit(Item.Get <WashingMachineItem>().UILink(), value);
            this.CraftMinutes = value;
            this.Initialize(Localizer.DoStr("Washing Machine"), typeof(WashingMachineRecipe));
            CraftingComponent.AddRecipe(typeof(RoboticAssemblyLineObject), this);
        }
 protected override void Initialize()
 {
     this.GetComponent <MinimapComponent>().Initialize(Localizer.DoStr("Housing"));
     this.GetComponent <HousingComponent>().Set(PaddedChairItem.HousingVal);
     this.GetComponent <MountComponent>().Initialize(1);
 }