remove spurious constructor from MoveAdjacentTo

This commit is contained in:
Chris Forbes
2011-09-17 11:24:39 +12:00
parent 24c74dcdd9
commit 9480846250
6 changed files with 17 additions and 17 deletions

View File

@@ -30,7 +30,7 @@ namespace OpenRA.Mods.RA.Activities
var mobile = self.Trait<Mobile>(); var mobile = self.Trait<Mobile>();
var nearest = target.OccupiesSpace.NearestCellTo( mobile.toCell ); var nearest = target.OccupiesSpace.NearestCellTo( mobile.toCell );
if( ( nearest - mobile.toCell ).LengthSquared > 2 ) if( ( nearest - mobile.toCell ).LengthSquared > 2 )
return Util.SequenceActivities( new MoveAdjacentTo( target ), this ); return Util.SequenceActivities( new MoveAdjacentTo( Target.FromActor(target) ), this );
return Util.SequenceActivities( mobile.MoveTo( nearest, target ), NextActivity ); return Util.SequenceActivities( mobile.MoveTo( nearest, target ), NextActivity );
} }

View File

@@ -38,7 +38,7 @@ namespace OpenRA.Mods.RA.Activities
return new Wait(20); return new Wait(20);
return Util.SequenceActivities( return Util.SequenceActivities(
new MoveAdjacentTo(rearmTarget), new MoveAdjacentTo(Target.FromActor(rearmTarget)),
mobile.MoveTo(Traits.Util.CellContaining(rearmTarget.CenterLocation), rearmTarget), mobile.MoveTo(Traits.Util.CellContaining(rearmTarget.CenterLocation), rearmTarget),
new Rearm(self), new Rearm(self),
new Repair(rearmTarget), new Repair(rearmTarget),

View File

@@ -21,7 +21,6 @@ namespace OpenRA.Mods.RA.Activities
{ {
readonly Target target; readonly Target target;
public MoveAdjacentTo( Actor target ) { this.target = Target.FromActor(target); }
public MoveAdjacentTo( Target target ) { this.target = target; } public MoveAdjacentTo( Target target ) { this.target = target; }
public override Activity Tick( Actor self ) public override Activity Tick( Actor self )

View File

@@ -20,11 +20,10 @@ namespace OpenRA.Mods.RA
{ {
class MinelayerInfo : TraitInfo<Minelayer> class MinelayerInfo : TraitInfo<Minelayer>
{ {
[ActorReference] [ActorReference] public readonly string Mine = "minv";
public readonly string Mine = "minv"; [ActorReference] public readonly string[] RearmBuildings = { "fix" };
public readonly float MinefieldDepth = 1.5f; public readonly float MinefieldDepth = 1.5f;
[ActorReference]
public readonly string[] RearmBuildings = { "fix" };
} }
class Minelayer : IIssueOrder, IResolveOrder, IPostRenderSelection, ISync class Minelayer : IIssueOrder, IResolveOrder, IPostRenderSelection, ISync

View File

@@ -74,11 +74,12 @@ namespace OpenRA.Mods.RA
if (order.TargetActor == null) return; if (order.TargetActor == null) return;
if (!CanEnter(order.TargetActor)) return; if (!CanEnter(order.TargetActor)) return;
if (!IsCorrectCargoType(order.TargetActor)) return; if (!IsCorrectCargoType(order.TargetActor)) return;
self.SetTargetLine(Target.FromOrder(order), Color.Green); var target = Target.FromOrder(order);
self.SetTargetLine(target, Color.Green);
self.CancelActivity(); self.CancelActivity();
self.QueueActivity(new MoveAdjacentTo(order.TargetActor)); self.QueueActivity(new MoveAdjacentTo(target));
self.QueueActivity(new EnterTransport(self, order.TargetActor)); self.QueueActivity(new EnterTransport(self, order.TargetActor));
} }
} }

View File

@@ -60,29 +60,30 @@ namespace OpenRA.Mods.RA
var li = self.TraitOrDefault<LimitedAmmo>(); var li = self.TraitOrDefault<LimitedAmmo>();
return (Health.DamageState > DamageState.Undamaged || (li != null && !li.FullAmmo()) ); return (Health.DamageState > DamageState.Undamaged || (li != null && !li.FullAmmo()) );
} }
public string VoicePhraseForOrder(Actor self, Order order) public string VoicePhraseForOrder(Actor self, Order order)
{ {
return (order.OrderString == "Repair" && CanRepair()) ? "Move" : null; return (order.OrderString == "Repair" && CanRepair()) ? "Move" : null;
} }
public void ResolveOrder(Actor self, Order order) public void ResolveOrder(Actor self, Order order)
{ {
if (order.OrderString == "Repair") if (order.OrderString == "Repair")
{ {
if( !CanRepairAt( order.TargetActor ) || !CanRepair() ) if( !CanRepairAt( order.TargetActor ) || !CanRepair() )
return; return;
var mobile = self.Trait<Mobile>(); var mobile = self.Trait<Mobile>();
var rp = order.TargetActor.TraitOrDefault<RallyPoint>(); var target = Target.FromOrder(order);
self.SetTargetLine(Target.FromOrder(order), Color.Green); self.SetTargetLine(target, Color.Green);
self.CancelActivity(); self.CancelActivity();
self.QueueActivity(new MoveAdjacentTo(order.TargetActor)); self.QueueActivity(new MoveAdjacentTo(target));
self.QueueActivity(mobile.MoveTo(Traits.Util.CellContaining(order.TargetActor.CenterLocation), order.TargetActor)); self.QueueActivity(mobile.MoveTo(Traits.Util.CellContaining(order.TargetActor.CenterLocation), order.TargetActor));
self.QueueActivity(new Rearm(self)); self.QueueActivity(new Rearm(self));
self.QueueActivity(new Repair(order.TargetActor)); self.QueueActivity(new Repair(order.TargetActor));
var rp = order.TargetActor.TraitOrDefault<RallyPoint>();
if (rp != null) if (rp != null)
self.QueueActivity(new CallFunc(() => self.QueueActivity(new CallFunc(() =>
{ {