cleaning up pip colors on APC/LST/TRAN

This commit is contained in:
Bob
2010-04-02 21:27:48 +12:00
parent 5abffd3c2c
commit fa4c5c3fea
4 changed files with 21 additions and 16 deletions

View File

@@ -92,16 +92,7 @@ namespace OpenRA.Traits
static PipType GetPipForPassenger(Actor a)
{
// probably not actually right yet; fix to match real-ra
if (a.traits.Contains<AutoHeal>())
return PipType.Yellow;
if (!a.traits.Contains<AttackBase>())
return PipType.Yellow; // noncombat [E6,SPY,THF]
// todo: fix E7 color again.
return PipType.Green;
return a.traits.Get<Passenger>().ColorOfCargoPip( a );
}
public void Load(Actor self, Actor a)

View File

@@ -100,11 +100,9 @@ namespace OpenRA.Traits
{
// todo: pip colors based on ResourceTypeInfo
if (n * 1.0f / self.Info.Traits.Get<HarvesterInfo>().Capacity > i * 1.0f / numPips)
{
yield return PipType.Yellow;
continue;
}
yield return PipType.Transparent;
else
yield return PipType.Transparent;
}
}
}

View File

@@ -23,7 +23,10 @@ using OpenRA.Traits.Activities;
namespace OpenRA.Traits
{
class PassengerInfo : StatelessTraitInfo<Passenger> {}
class PassengerInfo : StatelessTraitInfo<Passenger>
{
public readonly PipType ColorOfCargoPip = PipType.Green;
}
class Passenger : IIssueOrder, IResolveOrder
{
@@ -55,5 +58,10 @@ namespace OpenRA.Traits
self.QueueActivity(new EnterTransport(self, order.TargetActor));
}
}
public PipType ColorOfCargoPip( Actor self )
{
return self.Info.Traits.Get<PassengerInfo>().ColorOfCargoPip;
}
}
}

View File

@@ -2510,6 +2510,8 @@ E6:
Unit:
HP: 25
Speed: 4
Passenger:
ColorOfCargoPip: Yellow
EngineerCapture:
TakeCover:
-AutoTarget:
@@ -2530,6 +2532,8 @@ SPY:
HP: 25
Sight: 5
Speed: 4
Passenger:
ColorOfCargoPip: Yellow
RenderSpy:
TakeCover:
Spy:
@@ -2552,6 +2556,8 @@ THF:
HP: 25
Sight: 5
Speed: 4
Passenger:
ColorOfCargoPip: Yellow
TakeCover:
Thief:
-AutoTarget:
@@ -2594,6 +2600,8 @@ MEDI:
HP: 80
Sight: 3
Speed: 4
Passenger:
ColorOfCargoPip: Yellow
AutoHeal:
AttackBase:
PrimaryWeapon: Heal
@@ -2666,4 +2674,4 @@ WOOD:
CAMERA:
Unit:
HP:1000
Sight: 10
Sight: 10