public ComponentStats(SerializableComponentStats stats, Database database) { ItemId = new ItemId <ComponentStats>(stats.Id, stats.FileName); Type = stats.Type; ArmorPoints = new NumericValue <float>(stats.ArmorPoints, -1000, 1000); ArmorRepairRate = new NumericValue <float>(stats.ArmorRepairRate, -1000, 1000); ArmorRepairCooldownModifier = new NumericValue <float>(stats.ArmorRepairCooldownModifier, -1f, 1f); EnergyPoints = new NumericValue <float>(stats.EnergyPoints, -1000, 1000); EnergyRechargeRate = new NumericValue <float>(stats.EnergyRechargeRate, -1000, 1000); EnergyRechargeCooldownModifier = new NumericValue <float>(stats.EnergyRechargeCooldownModifier, -1f, 1f); ShieldPoints = new NumericValue <float>(stats.ShieldPoints, -1000, 1000); ShieldRechargeRate = new NumericValue <float>(stats.ShieldRechargeRate, -1000, 1000); ShieldRechargeCooldownModifier = new NumericValue <float>(stats.ShieldRechargeCooldownModifier, -1f, 1f); Weight = new NumericValue <float>(stats.Weight, -10000, 10000); KineticResistance = new NumericValue <float>(stats.KineticResistance, -1000, 1000); EnergyResistance = new NumericValue <float>(stats.EnergyResistance, -1000, 1000); ThermalResistance = new NumericValue <float>(stats.ThermalResistance, -1000, 1000); RammingDamage = new NumericValue <float>(stats.RammingDamage, 0, 1000); EnergyAbsorption = new NumericValue <float>(stats.EnergyAbsorption, 0, 1000); EnginePower = new NumericValue <float>(stats.EnginePower, 0, 20); TurnRate = new NumericValue <float>(stats.TurnRate, 0, 20); Autopilot = stats.Autopilot; DroneDamageModifier = new NumericValue <float>(stats.DroneDamageModifier, -5, 5); DroneRangeModifier = new NumericValue <float>(stats.DroneRangeModifier, -5, 5); DroneDefenseModifier = new NumericValue <float>(stats.DroneDefenseModifier, -5, 5); DroneSpeedModifier = new NumericValue <float>(stats.DroneSpeedModifier, -5, 5); DronesBuiltPerSecond = new NumericValue <float>(stats.DronesBuiltPerSecond, 0, 10); DroneBuildTimeModifier = new NumericValue <float>(stats.DroneBuildTimeModifier, 0, 10); WeaponFireRateModifier = new NumericValue <float>(stats.WeaponFireRateModifier, -1, 1); WeaponDamageModifier = new NumericValue <float>(stats.WeaponDamageModifier, -1, 1); WeaponRangeModifier = new NumericValue <float>(stats.WeaponRangeModifier, -1, 1); WeaponEnergyCostModifier = new NumericValue <float>(stats.WeaponEnergyCostModifier, -1, 1); AlterWeaponPlatform = stats.AlterWeaponPlatform; }
public void Save(SerializableComponentStats serializable) { serializable.Type = Type; serializable.ArmorPoints = ArmorPoints.Value; serializable.ArmorRepairRate = ArmorRepairRate.Value; serializable.ArmorRepairCooldownModifier = ArmorRepairCooldownModifier.Value; serializable.EnergyPoints = EnergyPoints.Value; serializable.EnergyRechargeRate = EnergyRechargeRate.Value; serializable.EnergyRechargeCooldownModifier = EnergyRechargeCooldownModifier.Value; serializable.ShieldPoints = ShieldPoints.Value; serializable.ShieldRechargeRate = ShieldRechargeRate.Value; serializable.ShieldRechargeCooldownModifier = ShieldRechargeCooldownModifier.Value; serializable.Weight = Weight.Value; serializable.RammingDamage = RammingDamage.Value; serializable.EnergyAbsorption = EnergyAbsorption.Value; serializable.KineticResistance = KineticResistance.Value; serializable.EnergyResistance = EnergyResistance.Value; serializable.ThermalResistance = ThermalResistance.Value; serializable.EnginePower = EnginePower.Value; serializable.TurnRate = TurnRate.Value; serializable.Autopilot = Autopilot; serializable.DroneRangeModifier = DroneRangeModifier.Value; serializable.DroneDamageModifier = DroneDamageModifier.Value; serializable.DroneDefenseModifier = DroneDefenseModifier.Value; serializable.DroneSpeedModifier = DroneSpeedModifier.Value; serializable.DronesBuiltPerSecond = DronesBuiltPerSecond.Value; serializable.DroneBuildTimeModifier = DroneBuildTimeModifier.Value; serializable.WeaponFireRateModifier = WeaponFireRateModifier.Value; serializable.WeaponDamageModifier = WeaponDamageModifier.Value; serializable.WeaponRangeModifier = WeaponRangeModifier.Value; serializable.WeaponEnergyCostModifier = WeaponEnergyCostModifier.Value; serializable.AlterWeaponPlatform = AlterWeaponPlatform; }