move render{building,buildingturreted,unit} into mods.ra; move all render traits into mods.ra.render

This commit is contained in:
Bob
2010-07-08 17:24:12 +12:00
parent 281d013c3b
commit fb6c44bce3
34 changed files with 71 additions and 60 deletions

View File

@@ -87,8 +87,6 @@
<Compile Include="Traits\Player\PlayerResources.cs" /> <Compile Include="Traits\Player\PlayerResources.cs" />
<Compile Include="Traits\Player\TechTreeCache.cs" /> <Compile Include="Traits\Player\TechTreeCache.cs" />
<Compile Include="Traits\Modifiers\HiddenUnderFog.cs" /> <Compile Include="Traits\Modifiers\HiddenUnderFog.cs" />
<Compile Include="Traits\Render\RenderBuilding.cs" />
<Compile Include="Traits\Render\RenderBuildingTurreted.cs" />
<Compile Include="Traits\World\Shroud.cs" /> <Compile Include="Traits\World\Shroud.cs" />
<Compile Include="Widgets\Delegates\ConnectionDialogsDelegate.cs" /> <Compile Include="Widgets\Delegates\ConnectionDialogsDelegate.cs" />
<Compile Include="Widgets\Delegates\CreateServerMenuDelegate.cs" /> <Compile Include="Widgets\Delegates\CreateServerMenuDelegate.cs" />
@@ -189,7 +187,6 @@
<Compile Include="Traits\Production.cs" /> <Compile Include="Traits\Production.cs" />
<Compile Include="Traits\RallyPoint.cs" /> <Compile Include="Traits\RallyPoint.cs" />
<Compile Include="Traits\Render\RenderSimple.cs" /> <Compile Include="Traits\Render\RenderSimple.cs" />
<Compile Include="Traits\Render\RenderUnit.cs" />
<Compile Include="Traits\StoresOre.cs" /> <Compile Include="Traits\StoresOre.cs" />
<Compile Include="Traits\Cloak.cs" /> <Compile Include="Traits\Cloak.cs" />
<Compile Include="Traits\TraitsInterfaces.cs" /> <Compile Include="Traits\TraitsInterfaces.cs" />

View File

@@ -83,11 +83,10 @@ namespace OpenRA.Traits
.Where( x => x.Actor.Info.Traits.Get<ProductionInfo>().Produces.Contains( unit.Category ) ) .Where( x => x.Actor.Info.Traits.Get<ProductionInfo>().Produces.Contains( unit.Category ) )
.ToList(); .ToList();
var producer = producers.Where( x => x.Trait.IsPrimary ).Concat( producers ) var producer = producers.Where( x => x.Trait.IsPrimary ).Concat( producers )
.Select( x => x.Actor )
.FirstOrDefault(); .FirstOrDefault();
if( producer != null ) if( producer.Actor != null )
producer.traits.Get<RenderBuilding>().PlayCustomAnim( producer, "build" ); producer.Actor.traits.WithInterface<RenderSimple>().First().PlayCustomAnim( producer.Actor, "build" );
} }
static int GetNumBuildables(Player p) static int GetNumBuildables(Player p)

View File

@@ -72,6 +72,18 @@ namespace OpenRA.Traits
a.Animation.Tick(); a.Animation.Tick();
} }
protected virtual string GetPrefix(Actor self)
{
return self.GetDamageState() == DamageState.Half ? "damaged-" : "";
}
public void PlayCustomAnim(Actor self, string name)
{
if (anim.HasSequence(name))
anim.PlayThen(GetPrefix(self) + name,
() => anim.PlayRepeating(GetPrefix(self) + "idle"));
}
public class AnimationWithOffset public class AnimationWithOffset
{ {
public Animation Animation; public Animation Animation;

View File

@@ -18,11 +18,9 @@
*/ */
#endregion #endregion
using System;
using System.Linq;
using System.Collections.Generic;
using OpenRA.Mods.RA; using OpenRA.Mods.RA;
using OpenRA.Mods.RA.Activities; using OpenRA.Mods.RA.Activities;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities; using OpenRA.Traits.Activities;

View File

@@ -18,6 +18,7 @@
*/ */
#endregion #endregion
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities; using OpenRA.Traits.Activities;

View File

@@ -19,7 +19,7 @@
#endregion #endregion
using System.Linq; using System.Linq;
using OpenRA.GameRules; using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities; using OpenRA.Traits.Activities;

View File

@@ -18,8 +18,10 @@
*/ */
#endregion #endregion
using OpenRA.Traits;
using System.Linq; using System.Linq;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits;
namespace OpenRA.Mods.RA.Activities namespace OpenRA.Mods.RA.Activities
{ {
class Leap : IActivity class Leap : IActivity

View File

@@ -19,6 +19,7 @@
#endregion #endregion
using System.Linq; using System.Linq;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA.Activities namespace OpenRA.Mods.RA.Activities

View File

@@ -19,7 +19,7 @@
#endregion #endregion
using System; using System;
using System.Linq; using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA.Activities namespace OpenRA.Mods.RA.Activities

View File

@@ -18,6 +18,7 @@
*/ */
#endregion #endregion
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA.Activities namespace OpenRA.Mods.RA.Activities

View File

@@ -19,7 +19,7 @@
#endregion #endregion
using System.Linq; using System.Linq;
using OpenRA.GameRules; using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities; using OpenRA.Traits.Activities;

View File

@@ -19,6 +19,7 @@
#endregion #endregion
using System; using System;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA

View File

@@ -22,6 +22,7 @@ using System;
using System.Linq; using System.Linq;
using OpenRA.Effects; using OpenRA.Effects;
using OpenRA.GameRules; using OpenRA.GameRules;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA

View File

@@ -82,7 +82,10 @@
<Compile Include="Hazardous.cs" /> <Compile Include="Hazardous.cs" />
<Compile Include="Player\ActorGroupProxy.cs" /> <Compile Include="Player\ActorGroupProxy.cs" />
<Compile Include="Aircraft.cs" /> <Compile Include="Aircraft.cs" />
<Compile Include="RenderUnitTurreted.cs" /> <Compile Include="Render\RenderBuilding.cs" />
<Compile Include="Render\RenderBuildingTurreted.cs" />
<Compile Include="Render\RenderUnit.cs" />
<Compile Include="Render\RenderUnitTurreted.cs" />
<Compile Include="SupportPowers\AirstrikePower.cs" /> <Compile Include="SupportPowers\AirstrikePower.cs" />
<Compile Include="AttackFrontal.cs" /> <Compile Include="AttackFrontal.cs" />
<Compile Include="AttackHeli.cs" /> <Compile Include="AttackHeli.cs" />
@@ -150,22 +153,22 @@
<Compile Include="Passenger.cs" /> <Compile Include="Passenger.cs" />
<Compile Include="Plane.cs" /> <Compile Include="Plane.cs" />
<Compile Include="ProductionSurround.cs" /> <Compile Include="ProductionSurround.cs" />
<Compile Include="RenderBuildingCharge.cs" /> <Compile Include="Render\RenderBuildingCharge.cs" />
<Compile Include="RenderBuildingOre.cs" /> <Compile Include="Render\RenderBuildingOre.cs" />
<Compile Include="RenderBuildingWall.cs" /> <Compile Include="Render\RenderBuildingWall.cs" />
<Compile Include="RenderBuildingWarFactory.cs" /> <Compile Include="Render\RenderBuildingWarFactory.cs" />
<Compile Include="RenderFlare.cs" /> <Compile Include="Render\RenderFlare.cs" />
<Compile Include="RenderInfantry.cs" /> <Compile Include="Render\RenderInfantry.cs" />
<Compile Include="RenderUnitReload.cs" /> <Compile Include="Render\RenderUnitReload.cs" />
<Compile Include="RenderUnitRotor.cs" /> <Compile Include="Render\RenderUnitRotor.cs" />
<Compile Include="RenderUnitSpinner.cs" /> <Compile Include="Render\RenderUnitSpinner.cs" />
<Compile Include="Repairable.cs" /> <Compile Include="Repairable.cs" />
<Compile Include="RepairsUnits.cs" /> <Compile Include="RepairsUnits.cs" />
<Compile Include="RequiresPower.cs" /> <Compile Include="RequiresPower.cs" />
<Compile Include="Mine.cs" /> <Compile Include="Mine.cs" />
<Compile Include="Minelayer.cs" /> <Compile Include="Minelayer.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="RenderSpy.cs" /> <Compile Include="Render\RenderSpy.cs" />
<Compile Include="RepairableNear.cs" /> <Compile Include="RepairableNear.cs" />
<Compile Include="Crates\SpeedUpgradeCrateAction.cs" /> <Compile Include="Crates\SpeedUpgradeCrateAction.cs" />
<Compile Include="Reservable.cs" /> <Compile Include="Reservable.cs" />

View File

@@ -19,6 +19,7 @@
#endregion #endregion
using OpenRA.Mods.RA.Activities; using OpenRA.Mods.RA.Activities;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities; using OpenRA.Traits.Activities;

View File

@@ -20,8 +20,9 @@
using System; using System;
using OpenRA.Effects; using OpenRA.Effects;
using OpenRA.Traits;
namespace OpenRA.Traits namespace OpenRA.Mods.RA.Render
{ {
public class RenderBuildingInfo : RenderSimpleInfo public class RenderBuildingInfo : RenderSimpleInfo
{ {
@@ -52,18 +53,6 @@ namespace OpenRA.Traits
x.BuildingComplete( self ); x.BuildingComplete( self );
} }
protected string GetPrefix(Actor self)
{
return self.GetDamageState() == DamageState.Half ? "damaged-" : "";
}
public void PlayCustomAnim(Actor self, string name)
{
if (anim.HasSequence(name))
anim.PlayThen(GetPrefix(self) + name,
() => anim.PlayRepeating(GetPrefix(self) + "idle"));
}
public void PlayCustomAnimThen(Actor self, string name, Action a) public void PlayCustomAnimThen(Actor self, string name, Action a)
{ {
anim.PlayThen(GetPrefix(self) + name, anim.PlayThen(GetPrefix(self) + name,

View File

@@ -18,9 +18,7 @@
*/ */
#endregion #endregion
using OpenRA.Traits; namespace OpenRA.Mods.RA.Render
namespace OpenRA.Mods.RA
{ {
class RenderBuildingChargeInfo : RenderBuildingInfo class RenderBuildingChargeInfo : RenderBuildingInfo
{ {

View File

@@ -20,7 +20,7 @@
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderBuildingOreInfo : RenderBuildingInfo class RenderBuildingOreInfo : RenderBuildingInfo
{ {

View File

@@ -18,7 +18,9 @@
*/ */
#endregion #endregion
namespace OpenRA.Traits using OpenRA.Traits;
namespace OpenRA.Mods.RA.Render
{ {
class RenderBuildingTurretedInfo : RenderBuildingInfo class RenderBuildingTurretedInfo : RenderBuildingInfo
{ {

View File

@@ -19,10 +19,9 @@
#endregion #endregion
using System.Linq; using System.Linq;
using System;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderBuildingWallInfo : RenderBuildingInfo class RenderBuildingWallInfo : RenderBuildingInfo
{ {

View File

@@ -22,7 +22,7 @@ using System.Linq;
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderWarFactoryInfo : ITraitInfo, ITraitPrerequisite<RenderSimpleInfo> class RenderWarFactoryInfo : ITraitInfo, ITraitPrerequisite<RenderSimpleInfo>
{ {

View File

@@ -20,7 +20,7 @@
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderFlareInfo : RenderSimpleInfo class RenderFlareInfo : RenderSimpleInfo
{ {

View File

@@ -22,7 +22,7 @@ using OpenRA.Traits;
using OpenRA.Traits.Activities; using OpenRA.Traits.Activities;
using OpenRA.Mods.RA.Effects; using OpenRA.Mods.RA.Effects;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
public class RenderInfantryInfo : RenderSimpleInfo public class RenderInfantryInfo : RenderSimpleInfo
{ {

View File

@@ -22,7 +22,7 @@ using System.Collections.Generic;
using System.Linq; using System.Linq;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderSpyInfo : RenderInfantryInfo class RenderSpyInfo : RenderInfantryInfo
{ {

View File

@@ -20,8 +20,9 @@
using System; using System;
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Traits;
namespace OpenRA.Traits namespace OpenRA.Mods.RA.Render
{ {
public class RenderUnitInfo : RenderSimpleInfo public class RenderUnitInfo : RenderSimpleInfo
{ {

View File

@@ -21,7 +21,7 @@
using OpenRA.Mods.RA.Activities; using OpenRA.Mods.RA.Activities;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderUnitReloadInfo : RenderUnitInfo class RenderUnitReloadInfo : RenderUnitInfo
{ {

View File

@@ -21,7 +21,7 @@
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderUnitRotorInfo : RenderUnitInfo class RenderUnitRotorInfo : RenderUnitInfo
{ {

View File

@@ -21,7 +21,7 @@
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderUnitSpinnerInfo : RenderUnitInfo class RenderUnitSpinnerInfo : RenderUnitInfo
{ {

View File

@@ -21,7 +21,7 @@
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA.Render
{ {
class RenderUnitTurretedInfo : RenderUnitInfo class RenderUnitTurretedInfo : RenderUnitInfo
{ {

View File

@@ -21,6 +21,7 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA

View File

@@ -21,6 +21,7 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Drawing; using System.Drawing;
using System.Linq; using System.Linq;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA

View File

@@ -20,6 +20,7 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA

View File

@@ -20,6 +20,7 @@
using System.Linq; using System.Linq;
using OpenRA.Mods.RA.Effects; using OpenRA.Mods.RA.Effects;
using OpenRA.Mods.RA.Render;
using OpenRA.Orders; using OpenRA.Orders;
using OpenRA.Traits; using OpenRA.Traits;

View File

@@ -19,6 +19,7 @@
#endregion #endregion
using OpenRA.Graphics; using OpenRA.Graphics;
using OpenRA.Mods.RA.Render;
using OpenRA.Traits; using OpenRA.Traits;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA