have spies appear a convincing color on radar too

This commit is contained in:
Chris Forbes
2011-03-16 20:30:23 +13:00
parent 048386e6fa
commit 8bef8d5a72

View File

@@ -74,7 +74,7 @@ namespace OpenRA.Mods.RA
class SpyInfo : TraitInfo<Spy> { }
class Spy : IIssueOrder, IResolveOrder, IOrderVoice
class Spy : IIssueOrder, IResolveOrder, IOrderVoice, IRadarColorModifier
{
public Player disguisedAsPlayer;
public string disguisedAsSprite, disguisedAsName;
@@ -132,7 +132,16 @@ namespace OpenRA.Mods.RA
public string VoicePhraseForOrder(Actor self, Order order)
{
return order.OrderString == "Disguise" ? "Attack" : null;
}
}
public Color RadarColorOverride(Actor self)
{
if (!Disguised || self.World.LocalPlayer == null ||
self.Owner.Stances[self.World.LocalPlayer] == Stance.Ally)
return self.Owner.ColorRamp.GetColor(0);
return disguisedAsPlayer.ColorRamp.GetColor(0);
}
}
class IgnoresDisguiseInfo : TraitInfo<IgnoresDisguise> {}