Rename fraction to distance/progress in MovePart

This commit is contained in:
reaperrr
2021-03-20 10:11:08 +01:00
committed by teinarss
parent 646495fc5f
commit 4c7e3d8f3a

View File

@@ -392,18 +392,18 @@ namespace OpenRA.Mods.Common.Activities
protected readonly int ArcToLength;
protected readonly WAngle ArcToAngle;
protected readonly int MoveFractionTotal;
protected int moveFraction;
protected readonly int Distance;
protected int progress;
public MovePart(Move move, WPos from, WPos to, WAngle fromFacing, WAngle toFacing, int startingFraction)
public MovePart(Move move, WPos from, WPos to, WAngle fromFacing, WAngle toFacing, int carryoverProgress)
{
Move = move;
From = from;
To = to;
FromFacing = fromFacing;
ToFacing = toFacing;
moveFraction = startingFraction;
MoveFractionTotal = (to - from).Length;
progress = carryoverProgress;
Distance = (to - from).Length;
IsInterruptible = false; // See comments in Move.Cancel()
// Calculate an elliptical arc that joins from and to
@@ -436,11 +436,11 @@ namespace OpenRA.Mods.Common.Activities
public override bool Tick(Actor self)
{
var mobile = Move.mobile;
moveFraction += mobile.MovementSpeedForCell(self, mobile.ToCell);
progress += mobile.MovementSpeedForCell(self, mobile.ToCell);
if (moveFraction >= MoveFractionTotal)
if (progress >= Distance)
{
moveFraction = MoveFractionTotal;
progress = Distance;
mobile.SetCenterPosition(self, To);
mobile.Facing = ToFacing;
@@ -451,19 +451,19 @@ namespace OpenRA.Mods.Common.Activities
WPos pos;
if (EnableArc)
{
var angle = WAngle.Lerp(ArcFromAngle, ArcToAngle, moveFraction, MoveFractionTotal);
var length = int2.Lerp(ArcFromLength, ArcToLength, moveFraction, MoveFractionTotal);
var height = int2.Lerp(From.Z, To.Z, moveFraction, MoveFractionTotal);
var angle = WAngle.Lerp(ArcFromAngle, ArcToAngle, progress, Distance);
var length = int2.Lerp(ArcFromLength, ArcToLength, progress, Distance);
var height = int2.Lerp(From.Z, To.Z, progress, Distance);
pos = ArcCenter + new WVec(0, length, height).Rotate(WRot.FromYaw(angle));
}
else
pos = WPos.Lerp(From, To, moveFraction, MoveFractionTotal);
pos = WPos.Lerp(From, To, progress, Distance);
if (self.Location.Layer == 0)
pos -= new WVec(WDist.Zero, WDist.Zero, self.World.Map.DistanceAboveTerrain(pos));
mobile.SetCenterPosition(self, pos);
mobile.Facing = WAngle.Lerp(FromFacing, ToFacing, moveFraction, MoveFractionTotal);
mobile.Facing = WAngle.Lerp(FromFacing, ToFacing, progress, Distance);
return false;
}
@@ -477,8 +477,8 @@ namespace OpenRA.Mods.Common.Activities
class MoveFirstHalf : MovePart
{
public MoveFirstHalf(Move move, WPos from, WPos to, WAngle fromFacing, WAngle toFacing, int startingFraction)
: base(move, from, to, fromFacing, toFacing, startingFraction) { }
public MoveFirstHalf(Move move, WPos from, WPos to, WAngle fromFacing, WAngle toFacing, int carryoverProgress)
: base(move, from, to, fromFacing, toFacing, carryoverProgress) { }
static bool IsTurn(Mobile mobile, CPos nextCell, Map map)
{
@@ -511,7 +511,7 @@ namespace OpenRA.Mods.Common.Activities
Util.BetweenCells(self.World, mobile.ToCell, nextCell.Value.Cell) + (toSubcellOffset + nextSubcellOffset) / 2,
mobile.Facing,
map.FacingBetween(mobile.ToCell, nextCell.Value.Cell, mobile.Facing),
moveFraction - MoveFractionTotal);
progress - Distance);
mobile.FinishedMoving(self);
mobile.SetLocation(mobile.ToCell, mobile.ToSubCell, nextCell.Value.Cell, nextCell.Value.SubCell);
@@ -530,7 +530,7 @@ namespace OpenRA.Mods.Common.Activities
toPos + toSubcellOffset,
mobile.Facing,
mobile.Facing,
moveFraction - MoveFractionTotal);
progress - Distance);
mobile.EnteringCell(self);
mobile.SetLocation(mobile.ToCell, mobile.ToSubCell, mobile.ToCell, mobile.ToSubCell);
@@ -540,8 +540,8 @@ namespace OpenRA.Mods.Common.Activities
class MoveSecondHalf : MovePart
{
public MoveSecondHalf(Move move, WPos from, WPos to, WAngle fromFacing, WAngle toFacing, int startingFraction)
: base(move, from, to, fromFacing, toFacing, startingFraction) { }
public MoveSecondHalf(Move move, WPos from, WPos to, WAngle fromFacing, WAngle toFacing, int carryoverProgress)
: base(move, from, to, fromFacing, toFacing, carryoverProgress) { }
protected override MovePart OnComplete(Actor self, Mobile mobile, Move parent)
{