Changed most references of trait Mobile -> IMove.

In Mobile.cs IsMoving now has a public set as opposed to the initial internal. 
Added IMoveInfo interface to go with *Info classes that require IMove.
WithRotor now uses IMove.IsMoving instead of (self.CenterPosition.Z > 0) as part of a check.
This commit is contained in:
Taryn
2014-02-02 01:30:21 -06:00
parent 4b38390907
commit 9c4ad15d1e
13 changed files with 34 additions and 28 deletions

View File

@@ -64,7 +64,7 @@ namespace OpenRA.Mods.RA.Activities
nextPathTime = self.World.SharedRandom.Next(delayBetweenPathingAttempts - delaySpread,
delayBetweenPathingAttempts + delaySpread);
return (AllowMovement) ? Util.SequenceActivities(self.Trait<Mobile>().MoveWithinRange(Target, Range), this) : NextActivity;
return (AllowMovement) ? Util.SequenceActivities(self.Trait<IMove>().MoveWithinRange(Target, Range), this) : NextActivity;
}
var desiredFacing = Util.GetFacing(Target.CenterPosition - self.CenterPosition, 0);

View File

@@ -26,7 +26,7 @@ namespace OpenRA.Mods.RA.Activities
if (NextActivity != null)
return NextActivity;
var mobile = self.Trait<Mobile>();
var movement = self.Trait<IMove>();
var harv = self.Trait<Harvester>();
// Find the nearest best refinery if not explicitly ordered to a specific refinery:
@@ -56,7 +56,7 @@ namespace OpenRA.Mods.RA.Activities
self.SetTargetLine(Target.FromActor(proc), Color.Green, false);
if (self.Location != proc.Location + iao.DeliverOffset)
return Util.SequenceActivities(mobile.MoveTo(proc.Location + iao.DeliverOffset, 0), this);
return Util.SequenceActivities(movement.MoveTo(proc.Location + iao.DeliverOffset, 0), this);
if (!isDocking)
{

View File

@@ -23,7 +23,7 @@ namespace OpenRA.Mods.RA.Activities
{
if (IsCanceled) return NextActivity;
var mobile = self.Trait<Mobile>();
var movement = self.Trait<IMove>();
var limitedAmmo = self.TraitOrDefault<LimitedAmmo>();
if (!limitedAmmo.HasAmmo())
{
@@ -38,7 +38,7 @@ namespace OpenRA.Mods.RA.Activities
return Util.SequenceActivities(
new MoveAdjacentTo(self, Target.FromActor(rearmTarget)),
mobile.MoveTo(rearmTarget.CenterPosition.ToCPos(), rearmTarget),
movement.MoveTo(rearmTarget.CenterPosition.ToCPos(), rearmTarget),
new Rearm(self),
new Repair(rearmTarget),
this );
@@ -57,7 +57,7 @@ namespace OpenRA.Mods.RA.Activities
{
var p = ml.minefield.Random(self.World.SharedRandom);
if (ShouldLayMine(self, p))
return Util.SequenceActivities( mobile.MoveTo(p, 0), this );
return Util.SequenceActivities( movement.MoveTo(p, 0), this );
}
// TODO: return somewhere likely to be safe (near fix) so we're not sitting out in the minefield.