Beispiel #1
0
        public LootContent_RandomComponents(LootContentSerializable serializable, Database.Loader loader)
            : base(serializable, loader)
        {
            MinAmount  = UnityEngine.Mathf.Clamp(serializable.MinAmount, 0, 999999999);
            MaxAmount  = UnityEngine.Mathf.Clamp(serializable.MaxAmount, 0, 999999999);
            ValueRatio = UnityEngine.Mathf.Clamp(serializable.ValueRatio, 0.001f, 1000f);
            Factions   = RequiredFactions.Create(serializable.Factions, loader);

            OnDataDeserialized(serializable, loader);
        }
Beispiel #2
0
        private Fleet(FleetSerializable serializable, Database.Loader loader)
        {
            Id = new ItemId <Fleet>(serializable.Id);
            loader.AddFleet(serializable.Id, this);

            Factions        = RequiredFactions.Create(serializable.Factions, loader);
            LevelBonus      = UnityEngine.Mathf.Clamp(serializable.LevelBonus, -10000, 10000);
            NoRandomShips   = serializable.NoRandomShips;
            CombatTimeLimit = UnityEngine.Mathf.Clamp(serializable.CombatTimeLimit, 0, 999);
            LootCondition   = serializable.LootCondition;
            ExpCondition    = serializable.ExpCondition;
            SpecificShips   = new ImmutableCollection <ShipBuild>(serializable.SpecificShips?.Select(item => loader.GetShipBuild(new ItemId <ShipBuild>(item), true)));

            OnDataDeserialized(serializable, loader);
        }