private ShipSettingsData(ShipSettingsSerializable serializable, Database database) { ItemId = new ItemId <ShipSettingsData>(serializable.Id, serializable.FileName); DefaultWeightPerCell = new NumericValue <float>(serializable.DefaultWeightPerCell, 1f, 1000f); MinimumWeightPerCell = new NumericValue <float>(serializable.MinimumWeightPerCell, 1f, 1000f); BaseArmorPoints = new NumericValue <float>(serializable.BaseArmorPoints, 0f, 10000f); ArmorPointsPerCell = new NumericValue <float>(serializable.ArmorPointsPerCell, 0f, 10000f); ArmorRepairCooldown = new NumericValue <float>(serializable.ArmorRepairCooldown, 0f, 60f); BaseEnergyPoints = new NumericValue <float>(serializable.BaseEnergyPoints, 0f, 1000f); BaseEnergyRechargeRate = new NumericValue <float>(serializable.BaseEnergyRechargeRate, 0f, 100f); EnergyRechargeCooldown = new NumericValue <float>(serializable.EnergyRechargeCooldown, 0f, 60f); BaseShieldRechargeRate = new NumericValue <float>(serializable.BaseShieldRechargeRate, 0f, 100f); ShieldRechargeCooldown = new NumericValue <float>(serializable.ShieldRechargeCooldown, 0f, 60f); BaseDroneReconstructionSpeed = new NumericValue <float>(serializable.BaseDroneReconstructionSpeed, 0f, 1f); MaxVelocity = new NumericValue <float>(serializable.MaxVelocity, 5f, 30f); MaxTurnRate = new NumericValue <float>(serializable.MaxTurnRate, 5f, 30f); }
public void Save(ShipSettingsSerializable serializable) { serializable.DefaultWeightPerCell = DefaultWeightPerCell.Value; serializable.MinimumWeightPerCell = MinimumWeightPerCell.Value; serializable.BaseArmorPoints = BaseArmorPoints.Value; serializable.ArmorPointsPerCell = ArmorPointsPerCell.Value; serializable.ArmorRepairCooldown = ArmorRepairCooldown.Value; serializable.BaseEnergyPoints = BaseEnergyPoints.Value; serializable.BaseEnergyRechargeRate = BaseEnergyRechargeRate.Value; serializable.EnergyRechargeCooldown = EnergyRechargeCooldown.Value; serializable.BaseShieldRechargeRate = BaseShieldRechargeRate.Value; serializable.ShieldRechargeCooldown = ShieldRechargeCooldown.Value; serializable.BaseDroneReconstructionSpeed = BaseDroneReconstructionSpeed.Value; serializable.MaxVelocity = MaxVelocity.Value; serializable.MaxTurnRate = MaxTurnRate.Value; OnDataSerialized(ref serializable); }
private ShipSettings(ShipSettingsSerializable serializable, Database.Loader loader) { DefaultWeightPerCell = UnityEngine.Mathf.Clamp(serializable.DefaultWeightPerCell, 1f, 1000000f); MinimumWeightPerCell = UnityEngine.Mathf.Clamp(serializable.MinimumWeightPerCell, 1f, 1000000f); BaseArmorPoints = UnityEngine.Mathf.Clamp(serializable.BaseArmorPoints, 0f, 1000000f); ArmorPointsPerCell = UnityEngine.Mathf.Clamp(serializable.ArmorPointsPerCell, 0f, 1000000f); ArmorRepairCooldown = UnityEngine.Mathf.Clamp(serializable.ArmorRepairCooldown, 0f, 60f); BaseEnergyPoints = UnityEngine.Mathf.Clamp(serializable.BaseEnergyPoints, 0f, 1000000f); BaseEnergyRechargeRate = UnityEngine.Mathf.Clamp(serializable.BaseEnergyRechargeRate, 0f, 1000000f); EnergyRechargeCooldown = UnityEngine.Mathf.Clamp(serializable.EnergyRechargeCooldown, 0f, 60f); BaseShieldRechargeRate = UnityEngine.Mathf.Clamp(serializable.BaseShieldRechargeRate, 0f, 1000000f); ShieldRechargeCooldown = UnityEngine.Mathf.Clamp(serializable.ShieldRechargeCooldown, 0f, 60f); BaseDroneReconstructionSpeed = UnityEngine.Mathf.Clamp(serializable.BaseDroneReconstructionSpeed, 0f, 100f); MaxVelocity = UnityEngine.Mathf.Clamp(serializable.MaxVelocity, 5f, 30f); MaxTurnRate = UnityEngine.Mathf.Clamp(serializable.MaxTurnRate, 5f, 30f); OnDataDeserialized(serializable, loader); }
public ShipSettingsSerializable Serialize() { var serializable = new ShipSettingsSerializable(); serializable.Id = ItemId.Id; serializable.FileName = ItemId.Name; serializable.ItemType = (int)ItemType.ShipSettings; serializable.DefaultWeightPerCell = DefaultWeightPerCell.Value; serializable.MinimumWeightPerCell = MinimumWeightPerCell.Value; serializable.BaseArmorPoints = BaseArmorPoints.Value; serializable.ArmorPointsPerCell = ArmorPointsPerCell.Value; serializable.ArmorRepairCooldown = ArmorRepairCooldown.Value; serializable.BaseEnergyPoints = BaseEnergyPoints.Value; serializable.BaseEnergyRechargeRate = BaseEnergyRechargeRate.Value; serializable.EnergyRechargeCooldown = EnergyRechargeCooldown.Value; serializable.BaseShieldRechargeRate = BaseShieldRechargeRate.Value; serializable.ShieldRechargeCooldown = ShieldRechargeCooldown.Value; serializable.BaseDroneReconstructionSpeed = BaseDroneReconstructionSpeed.Value; serializable.MaxVelocity = MaxVelocity.Value; serializable.MaxTurnRate = MaxTurnRate.Value; return(serializable); }
public static ShipSettingsData Deserialize(ShipSettingsSerializable serializable, Database database) { return(new ShipSettingsData(serializable, database)); }
partial void OnDataSerialized(ref ShipSettingsSerializable serializable);
partial void OnDataDeserialized(ShipSettingsSerializable serializable, Database database);
public static ShipSettings Create(ShipSettingsSerializable serializable, Database.Loader loader) { return(new ShipSettings(serializable, loader)); }
partial void OnDataDeserialized(ShipSettingsSerializable serializable, Database.Loader loader);