remove WeaponInfo param from CheckFire

This commit is contained in:
Chris Forbes
2010-07-31 15:30:12 +12:00
parent 693c8d96b1
commit 2bd9cd32f6

View File

@@ -143,11 +143,11 @@ namespace OpenRA.Mods.RA
var info = self.Info.Traits.Get<AttackBaseInfo>(); var info = self.Info.Traits.Get<AttackBaseInfo>();
foreach (var w in Weapons) foreach (var w in Weapons)
if (CheckFire(self, unit, w, w.Info, ref w.FireDelay, w.Offset, ref w.Burst)) if (CheckFire(self, unit, w, ref w.FireDelay, w.Offset, ref w.Burst))
w.Recoil = 1; w.Recoil = 1;
} }
bool CheckFire(Actor self, Unit unit, Weapon w, WeaponInfo weapon, ref int fireDelay, int[] offset, ref int burst) bool CheckFire(Actor self, Unit unit, Weapon w, ref int fireDelay, int[] offset, ref int burst)
{ {
if (fireDelay > 0) return false; if (fireDelay > 0) return false;
@@ -155,10 +155,10 @@ namespace OpenRA.Mods.RA
if (limitedAmmo != null && !limitedAmmo.HasAmmo()) if (limitedAmmo != null && !limitedAmmo.HasAmmo())
return false; return false;
if (weapon.Range * weapon.Range * Game.CellSize * Game.CellSize if (w.Info.Range * w.Info.Range * Game.CellSize * Game.CellSize
< (target.CenterLocation - self.CenterLocation).LengthSquared) return false; < (target.CenterLocation - self.CenterLocation).LengthSquared) return false;
if (!Combat.WeaponValidForTarget(weapon, target)) return false; if (!Combat.WeaponValidForTarget(w.Info, target)) return false;
var barrel = w.Barrels[burst % w.Barrels.Length]; var barrel = w.Barrels[burst % w.Barrels.Length];
@@ -169,18 +169,18 @@ namespace OpenRA.Mods.RA
offset.ElementAtOrDefault(3) }; offset.ElementAtOrDefault(3) };
if (--burst > 0) if (--burst > 0)
fireDelay = weapon.BurstDelay; fireDelay = w.Info.BurstDelay;
else else
{ {
fireDelay = weapon.ROF; fireDelay = w.Info.ROF;
burst = weapon.Burst; burst = w.Info.Burst;
} }
var destUnit = target.IsActor ? target.Actor.traits.GetOrDefault<Unit>() : null; var destUnit = target.IsActor ? target.Actor.traits.GetOrDefault<Unit>() : null;
var args = new ProjectileArgs var args = new ProjectileArgs
{ {
weapon = weapon, weapon = w.Info,
firedBy = self, firedBy = self,
target = this.target, target = this.target,