Make RenderUnit require IFacing; RenderSimple can be used for crates, mines, etc; fix husk facing init

This commit is contained in:
Chris Forbes
2011-07-28 21:20:31 +12:00
parent 7044d81a40
commit ddc1311d87
11 changed files with 36 additions and 21 deletions

View File

@@ -23,6 +23,7 @@ namespace OpenRA.Mods.RA.Air
{
public object Create(ActorInitializer init) { return new DebugAircraftFacing(init.self); }
}
public class DebugAircraftFacing : ISync
{
readonly Aircraft a;
@@ -34,6 +35,7 @@ namespace OpenRA.Mods.RA.Air
{
public object Create(ActorInitializer init) { return new DebugAircraftSubPxX(init.self); }
}
public class DebugAircraftSubPxX : ISync
{
readonly Aircraft a;
@@ -45,6 +47,7 @@ namespace OpenRA.Mods.RA.Air
{
public object Create(ActorInitializer init) { return new DebugAircraftSubPxY(init.self); }
}
public class DebugAircraftSubPxY : ISync
{
readonly Aircraft a;
@@ -56,6 +59,7 @@ namespace OpenRA.Mods.RA.Air
{
public object Create(ActorInitializer init) { return new DebugAircraftAltitude(init.self); }
}
public class DebugAircraftAltitude : ISync
{
readonly Aircraft a;
@@ -63,7 +67,7 @@ namespace OpenRA.Mods.RA.Air
[Sync] public int foo { get { return a.Altitude; } }
}
public class AircraftInfo : ITraitInfo
public class AircraftInfo : ITraitInfo, IFacingInfo
{
public readonly int CruiseAltitude = 30;
[ActorReference]

View File

@@ -16,7 +16,7 @@ using OpenRA.Traits.Activities;
namespace OpenRA.Mods.RA
{
class HuskInfo : ITraitInfo
class HuskInfo : ITraitInfo, IFacingInfo
{
public object Create( ActorInitializer init ) { return new Husk( init ); }
}

View File

@@ -19,7 +19,7 @@ using OpenRA.Traits.Activities;
namespace OpenRA.Mods.RA.Move
{
public class MobileInfo : ITraitInfo
public class MobileInfo : ITraitInfo, IFacingInfo
{
[FieldLoader.LoadUsing("LoadSpeeds")]
public readonly Dictionary<string, TerrainInfo> TerrainSpeeds;

View File

@@ -14,7 +14,7 @@ using OpenRA.Traits;
namespace OpenRA.Mods.RA.Render
{
public class RenderUnitInfo : RenderSimpleInfo
public class RenderUnitInfo : RenderSimpleInfo, Requires<IFacingInfo>
{
public override object Create(ActorInitializer init) { return new RenderUnit(init.self); }
}