public WeaponPrefix Read(BinaryReader br) { BasePrefix.Read(br); FiringArcPercent = br.ReadSingle(); RangePercent = br.ReadSingle(); RechargeTimePercent = br.ReadSingle(); HeatPercent = br.ReadSingle(); HeatAdjust = br.ReadInt16(); PowerPerShot = br.ReadInt16(); DamagePercentAll = br.ReadSingle(); DamagePercentMinimum = br.Read <Single>(6); DamagePercentMaximum = br.Read <Single>(6); DamageAdjustMinimum = br.ReadStruct <DamageArray>(); DamageAdjustMaximum = br.ReadStruct <DamageArray>(); OffenseBonus = br.ReadInt16(); br.ReadBytes(2); OffenseBonusPercent = br.ReadSingle(); AccucaryBonusPercent = br.ReadSingle(); PenetrationBonus = br.ReadInt16(); br.ReadBytes(2); return(this); }
public PrefixArmor(BinaryReader br) : base(br) { ArmorFactorPercent = br.ReadSingle(); ArmorFactorAdjust = br.ReadInt16(); ResistAdjust = DamageArray.Read(br); br.ReadBytes(2); }
public void ApplyResistanceModification(DamageArray dmg, Boolean reverse) { for (var i = 0; i < 6; ++i) { if (reverse) ArmorSpecific.Resistances.Damage[i] -= dmg.Damage[i]; else ArmorSpecific.Resistances.Damage[i] += dmg.Damage[i]; } }
public ArmorPrefix Read(BinaryReader br) { BasePrefix.Read(br); ArmorFactorPercent = br.ReadSingle(); ArmorFactorAdjust = br.ReadInt16(); ResistAdjust = br.ReadStruct <DamageArray>(); br.ReadBytes(2); return(this); }
public PrefixWeapon(BinaryReader br) : base(br) { FiringArcPercent = br.ReadSingle(); RangePercent = br.ReadSingle(); RechargeTimePercent = br.ReadSingle(); HeatPercent = br.ReadSingle(); HeatAdjust = br.ReadInt16(); PowerPerShot = br.ReadInt16(); DamagePercentAll = br.ReadSingle(); DamagePercentMinimum = br.Read<Single>(6); DamagePercentMaximum = br.Read<Single>(6); DamageAdjustMinimum = DamageArray.Read(br); DamageAdjustMaximum = DamageArray.Read(br); OffenseBonus = br.ReadInt16(); br.ReadBytes(2); OffenseBonusPercent = br.ReadSingle(); AccucaryBonusPercent = br.ReadSingle(); PenetrationBonus = br.ReadInt16(); br.ReadBytes(2); }
public override void InitializeBaseData() { base.InitializeBaseData(); if (!(CloneBaseObject is CloneBaseWeapon)) return; var cbw = (CloneBaseObject as CloneBaseWeapon); _damageBonusPerLevel = cbw.WeaponSpecific.DamageBonusPerLevel; _dmgMinimum = cbw.WeaponSpecific.MinMin; _dmgMaximum = cbw.WeaponSpecific.MaxMax; _rangeMaximum = cbw.WeaponSpecific.RangeMax; _rangeMinimum = cbw.WeaponSpecific.RangeMin; _prefixPenetrationBonus = cbw.WeaponSpecific.PenetrationModifier; _varianceOffensiveBonus = cbw.WeaponSpecific.OffenseBonus; _flags = cbw.WeaponSpecific.Flags; _validArc = cbw.WeaponSpecific.ValidArc; _rechargeInterval = cbw.WeaponSpecific.RechargeTime; _hitBonusPerLevel = cbw.WeaponSpecific.HitBonusPerLevel; _prefixAccurayBonus = cbw.WeaponSpecific.AccucaryModifier; _damageScalar = cbw.WeaponSpecific.DamageScalar; _varianceDamageMinimum = cbw.WeaponSpecific.DmgMinMin; _varianceDamageMaximum = cbw.WeaponSpecific.DmgMaxMax; _explosionRadius = cbw.WeaponSpecific.ExplosionRadius; _firePoint = cbw.WeaponSpecific.FirePoint; }