Пример #1
0
        void Awake()
        {
            CopyFieldHandler.UpdateFieldValues <ModPowderComponent>(this);

            PowderItem powderItem = this.GetComponent <PowderItem>();
            GearItem   gearItem   = this.GetComponent <GearItem>();

            if (powderItem && gearItem && !gearItem.m_BeenInspected && ChanceFull != 100f)
            {
                if (!RandomUtils.RollChance(ChanceFull))
                {
                    powderItem.m_WeightKG = powderItem.m_WeightLimitKG * RandomUtils.Range(0.125f, 1f);
                }
            }
        }
Пример #2
0
        internal static void Configure(ModComponent modComponent)
        {
            ModPowderComponent modPowderComponent = modComponent.TryCast <ModPowderComponent>();

            if (modPowderComponent is null)
            {
                return;
            }

            PowderItem powderItem = ModComponentUtils.ComponentUtils.GetOrCreateComponent <PowderItem>(modComponent);

            powderItem.m_Type          = ModComponentUtils.EnumUtils.TranslateEnumValue <GearPowderType, PowderType>(modPowderComponent.PowderType);
            powderItem.m_WeightLimitKG = modPowderComponent.CapacityKG;
            powderItem.m_WeightKG      = modPowderComponent.CapacityKG;
        }