private static void InitializeBedComponent(ModBedComponent modBed, ProxyObject dict, string className = "ModBedComponent") { InitializeBaseComponent(modBed, dict, className); modBed.ConditionGainPerHour = dict[className]["ConditionGainPerHour"]; modBed.AdditionalConditionGainPerHour = dict[className]["AdditionalConditionGainPerHour"]; modBed.WarmthBonusCelsius = dict[className]["WarmthBonusCelsius"]; modBed.DegradePerHour = dict[className]["DegradePerHour"]; modBed.BearAttackModifier = dict[className]["BearAttackModifier"]; modBed.WolfAttackModifier = dict[className]["WolfAttackModifier"]; modBed.OpenAudio = dict[className]["OpenAudio"]; modBed.CloseAudio = dict[className]["CloseAudio"]; modBed.PackedMesh = ModUtils.GetChild(modBed.gameObject, dict[className]["PackedMesh"]); modBed.UsableMesh = ModUtils.GetChild(modBed.gameObject, dict[className]["UsableMesh"]); }
//************// // COMPONENTS // //************// #region Components private static void InitializeBaseComponent(ModComponent modComponent, ProxyObject dict, string inheritanceName) { modComponent.ConsoleName = NameUtils.RemoveGearPrefix(modComponent.gameObject.name); JsonUtils.TrySetString(ref modComponent.DisplayNameLocalizationId, dict, inheritanceName, "DisplayNameLocalizationId"); modComponent.DescriptionLocalizatonId = dict[inheritanceName]["DescriptionLocalizatonId"]; modComponent.InventoryActionLocalizationId = dict[inheritanceName]["InventoryActionLocalizationId"]; modComponent.WeightKG = dict[inheritanceName]["WeightKG"]; modComponent.DaysToDecay = dict[inheritanceName]["DaysToDecay"]; modComponent.MaxHP = dict[inheritanceName]["MaxHP"]; modComponent.InitialCondition = EnumUtils.ParseEnum <InitialCondition>(dict[inheritanceName]["InitialCondition"]); modComponent.InventoryCategory = EnumUtils.ParseEnum <InventoryCategory>(dict[inheritanceName]["InventoryCategory"]); modComponent.PickUpAudio = dict[inheritanceName]["PickUpAudio"]; modComponent.PutBackAudio = dict[inheritanceName]["PutBackAudio"]; modComponent.StowAudio = dict[inheritanceName]["StowAudio"]; modComponent.WornOutAudio = dict[inheritanceName]["WornOutAudio"]; modComponent.InspectOnPickup = dict[inheritanceName]["InspectOnPickup"]; modComponent.InspectDistance = dict[inheritanceName]["InspectDistance"]; modComponent.InspectAngles = JsonUtils.MakeVector(dict[inheritanceName]["InspectAngles"]); modComponent.InspectOffset = JsonUtils.MakeVector(dict[inheritanceName]["InspectOffset"]); modComponent.InspectScale = JsonUtils.MakeVector(dict[inheritanceName]["InspectScale"]); modComponent.NormalModel = ModUtils.GetChild(modComponent.gameObject, dict[inheritanceName]["NormalModel"]); modComponent.InspectModel = ModUtils.GetChild(modComponent.gameObject, dict[inheritanceName]["InspectModel"]); }