Clean up AttackCharge.

This commit is contained in:
Paul Chote
2014-03-08 12:10:08 +13:00
parent b28ba09728
commit 6d95c93bea

View File

@@ -8,8 +8,8 @@
*/
#endregion
using OpenRA.Mods.RA.Activities;
using OpenRA.FileFormats;
using OpenRA.Mods.RA.Activities;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits;
@@ -29,19 +29,22 @@ namespace OpenRA.Mods.RA
class AttackCharge : AttackOmni, ITick, INotifyAttack, ISync
{
readonly AttackChargeInfo aci;
[Sync] int charges;
[Sync] int timeToRecharge;
public AttackCharge(Actor self)
: base(self)
{
charges = self.Info.Traits.Get<AttackChargeInfo>().MaxCharges;
aci = self.Info.Traits.Get<AttackChargeInfo>();
charges = aci.MaxCharges;
}
public override void Tick(Actor self)
{
if (--timeToRecharge <= 0)
charges = self.Info.Traits.Get<AttackChargeInfo>().MaxCharges;
charges = aci.MaxCharges;
base.Tick(self);
}
@@ -49,7 +52,7 @@ namespace OpenRA.Mods.RA
public void Attacking(Actor self, Target target, Armament a, Barrel barrel)
{
--charges;
timeToRecharge = self.Info.Traits.Get<AttackChargeInfo>().ReloadTime;
timeToRecharge = aci.ReloadTime;
}
public override Activity GetAttackActivity(Actor self, Target newTarget, bool allowMove)
@@ -57,7 +60,6 @@ namespace OpenRA.Mods.RA
return new ChargeAttack(newTarget);
}
public override void ResolveOrder(Actor self, Order order)
{
base.ResolveOrder(self, order);