#67 fixed: spinners work again
This commit is contained in:
@@ -50,6 +50,7 @@ namespace OpenRa.Game.GameRules
|
||||
public readonly int[] PrimaryOffset = { 0, 0 };
|
||||
public readonly int[] SecondaryOffset = null;
|
||||
public readonly int Recoil = 0;
|
||||
public readonly int[] ScreenSpaceTurretOffset = { 0, 0 };
|
||||
|
||||
public UnitInfo(string name) { Name = name; }
|
||||
|
||||
|
||||
@@ -16,7 +16,11 @@ namespace OpenRa.Game.Traits
|
||||
: base(self)
|
||||
{
|
||||
turretAnim = new Animation(self.unitInfo.Name);
|
||||
turretAnim.PlayFetchIndex("turret", () => self.traits.Get<Turreted>().turretFacing / 8);
|
||||
if (self.traits.Contains<Turreted>())
|
||||
turretAnim.PlayFetchIndex("turret",
|
||||
() => self.traits.Get<Turreted>().turretFacing / 8);
|
||||
else
|
||||
turretAnim.PlayRepeating("turret"); /* not really a turret; it's a spinner */
|
||||
}
|
||||
|
||||
public override IEnumerable<Pair<Sprite, float2>> Render(Actor self)
|
||||
|
||||
@@ -87,7 +87,9 @@ namespace OpenRa.Game.Traits
|
||||
var bodyFacing = self.traits.Get<Mobile>().facing;
|
||||
var quantizedFacing = bodyFacing - bodyFacing % ru.anim.CurrentSequence.Length;
|
||||
|
||||
return (RotateVectorByFacing(new float2(offset[0], offset[1]), quantizedFacing, .7f) + GetRecoil(self, recoil));
|
||||
return (RotateVectorByFacing(new float2(offset[0], offset[1]), quantizedFacing, .7f) + GetRecoil(self, recoil))
|
||||
+ new float2(self.unitInfo.ScreenSpaceTurretOffset[0],
|
||||
self.unitInfo.ScreenSpaceTurretOffset[1]);
|
||||
}
|
||||
|
||||
public static Pair<Sprite, float2> Centered(Sprite s, float2 location)
|
||||
|
||||
@@ -33,10 +33,14 @@ Description=Mammoth Tank
|
||||
Traits=Mobile, Turreted, AttackTurreted, RenderUnitTurreted
|
||||
[MRJ]
|
||||
Description=Radar Jammer
|
||||
Traits=Mobile, Turreted, RenderUnitTurreted ; temporary. It's not a turret, it's a spinney-thing
|
||||
Traits=Mobile, RenderUnitTurreted
|
||||
PrimaryOffset=0,4
|
||||
ScreenSpaceTurretOffset=0,-6
|
||||
[MGG]
|
||||
Description=Mobile Gap Generator
|
||||
Traits=Mobile, Turreted, RenderUnitTurreted ; temporary. It's not a turret, it's a spinney-thing
|
||||
Traits=Mobile, RenderUnitTurreted
|
||||
PrimaryOffset=0,6
|
||||
ScreenSpaceTurretOffset=0,-3
|
||||
[ARTY]
|
||||
Description=Artillery
|
||||
Traits=Mobile, RenderUnit
|
||||
@@ -49,6 +53,7 @@ Traits=Mobile, McvDeploy, RenderUnit
|
||||
[JEEP]
|
||||
Description=Ranger
|
||||
Traits=Mobile, Turreted, AttackTurreted, RenderUnitTurreted
|
||||
ScreenSpaceTurretOffset=0,-2
|
||||
[APC]
|
||||
Description=Armored Personnel Carrier
|
||||
Traits=Mobile, RenderUnit
|
||||
|
||||
Reference in New Issue
Block a user