ISpriteSequence facing -> WAngle.
This commit is contained in:
@@ -50,7 +50,7 @@ namespace OpenRA.Graphics
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int CurrentFrame { get { return backwards ? CurrentSequence.Length - frame - 1 : frame; } }
|
public int CurrentFrame { get { return backwards ? CurrentSequence.Length - frame - 1 : frame; } }
|
||||||
public Sprite Image { get { return CurrentSequence.GetSprite(CurrentFrame, facingFunc()); } }
|
public Sprite Image { get { return CurrentSequence.GetSprite(CurrentFrame, WAngle.FromFacing(facingFunc())); } }
|
||||||
|
|
||||||
public IRenderable[] Render(WPos pos, WVec offset, int zOffset, PaletteReference palette, float scale)
|
public IRenderable[] Render(WPos pos, WVec offset, int zOffset, PaletteReference palette, float scale)
|
||||||
{
|
{
|
||||||
@@ -58,7 +58,7 @@ namespace OpenRA.Graphics
|
|||||||
|
|
||||||
if (CurrentSequence.ShadowStart >= 0)
|
if (CurrentSequence.ShadowStart >= 0)
|
||||||
{
|
{
|
||||||
var shadow = CurrentSequence.GetShadow(CurrentFrame, facingFunc());
|
var shadow = CurrentSequence.GetShadow(CurrentFrame, WAngle.FromFacing(facingFunc()));
|
||||||
var shadowRenderable = new SpriteRenderable(shadow, pos, offset, CurrentSequence.ShadowZOffset + zOffset, palette, scale, true);
|
var shadowRenderable = new SpriteRenderable(shadow, pos, offset, CurrentSequence.ShadowZOffset + zOffset, palette, scale, true);
|
||||||
return new IRenderable[] { shadowRenderable, imageRenderable };
|
return new IRenderable[] { shadowRenderable, imageRenderable };
|
||||||
}
|
}
|
||||||
@@ -74,7 +74,7 @@ namespace OpenRA.Graphics
|
|||||||
|
|
||||||
if (CurrentSequence.ShadowStart >= 0)
|
if (CurrentSequence.ShadowStart >= 0)
|
||||||
{
|
{
|
||||||
var shadow = CurrentSequence.GetShadow(CurrentFrame, facingFunc());
|
var shadow = CurrentSequence.GetShadow(CurrentFrame, WAngle.FromFacing(facingFunc()));
|
||||||
var shadowPos = pos - new int2((int)(scale * shadow.Size.X / 2), (int)(scale * shadow.Size.Y / 2));
|
var shadowPos = pos - new int2((int)(scale * shadow.Size.X / 2), (int)(scale * shadow.Size.Y / 2));
|
||||||
var shadowRenderable = new UISpriteRenderable(shadow, WPos.Zero + offset, shadowPos, CurrentSequence.ShadowZOffset + zOffset, palette, scale);
|
var shadowRenderable = new UISpriteRenderable(shadow, WPos.Zero + offset, shadowPos, CurrentSequence.ShadowZOffset + zOffset, palette, scale);
|
||||||
return new IRenderable[] { shadowRenderable, imageRenderable };
|
return new IRenderable[] { shadowRenderable, imageRenderable };
|
||||||
|
|||||||
@@ -34,8 +34,8 @@ namespace OpenRA.Graphics
|
|||||||
Rectangle Bounds { get; }
|
Rectangle Bounds { get; }
|
||||||
|
|
||||||
Sprite GetSprite(int frame);
|
Sprite GetSprite(int frame);
|
||||||
Sprite GetSprite(int frame, int facing);
|
Sprite GetSprite(int frame, WAngle facing);
|
||||||
Sprite GetShadow(int frame, int facing);
|
Sprite GetShadow(int frame, WAngle facing);
|
||||||
}
|
}
|
||||||
|
|
||||||
public interface ISpriteSequenceLoader
|
public interface ISpriteSequenceLoader
|
||||||
|
|||||||
@@ -42,9 +42,9 @@ namespace OpenRA.Mods.Cnc.Graphics
|
|||||||
.F(info.Nodes[0].Location, sequence, animation));
|
.F(info.Nodes[0].Location, sequence, animation));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override int QuantizeFacing(int facing)
|
protected override int GetFacingFrameOffset(WAngle facing)
|
||||||
{
|
{
|
||||||
return OpenRA.Mods.Cnc.Util.ClassicQuantizeFacing(facing, Facings, useClassicFacings);
|
return Util.ClassicQuantizeFacing(facing.Facing, Facings, useClassicFacings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -363,22 +363,22 @@ namespace OpenRA.Mods.Common.Graphics
|
|||||||
|
|
||||||
public Sprite GetSprite(int frame)
|
public Sprite GetSprite(int frame)
|
||||||
{
|
{
|
||||||
return GetSprite(Start, frame, 0);
|
return GetSprite(Start, frame, WAngle.Zero);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Sprite GetSprite(int frame, int facing)
|
public Sprite GetSprite(int frame, WAngle facing)
|
||||||
{
|
{
|
||||||
return GetSprite(Start, frame, facing);
|
return GetSprite(Start, frame, facing);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Sprite GetShadow(int frame, int facing)
|
public Sprite GetShadow(int frame, WAngle facing)
|
||||||
{
|
{
|
||||||
return ShadowStart >= 0 ? GetSprite(ShadowStart, frame, facing) : null;
|
return ShadowStart >= 0 ? GetSprite(ShadowStart, frame, facing) : null;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected virtual Sprite GetSprite(int start, int frame, int facing)
|
protected virtual Sprite GetSprite(int start, int frame, WAngle facing)
|
||||||
{
|
{
|
||||||
var f = QuantizeFacing(facing);
|
var f = GetFacingFrameOffset(facing);
|
||||||
if (reverseFacings)
|
if (reverseFacings)
|
||||||
f = (Facings - f) % Facings;
|
f = (Facings - f) % Facings;
|
||||||
|
|
||||||
@@ -393,9 +393,9 @@ namespace OpenRA.Mods.Common.Graphics
|
|||||||
return sprites[j];
|
return sprites[j];
|
||||||
}
|
}
|
||||||
|
|
||||||
protected virtual int QuantizeFacing(int facing)
|
protected virtual int GetFacingFrameOffset(WAngle facing)
|
||||||
{
|
{
|
||||||
return Util.QuantizeFacing(facing, Facings);
|
return Util.QuantizeFacing(facing.Facing, Facings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user