Fix bogus silo/wall rendering

This commit is contained in:
Paul Chote
2011-04-11 10:16:23 +12:00
parent 715425d821
commit cd64d62b7e
2 changed files with 9 additions and 7 deletions

View File

@@ -64,13 +64,11 @@ namespace OpenRA.Mods.RA.Render
anim.PlayRepeating( NormalizeSequence(self, "idle") );
if (self.Info.Traits.Get<RenderBuildingInfo>().HasMakeAnimation && !init.Contains<SkipMakeAnimsInit>())
{
self.QueueActivity(new MakeAnimation(self));
// Can't call Complete() from ctor because other traits haven't been inited yet
self.QueueActivity(new CallFunc(() => self.World.AddFrameEndTask( _ => Complete( self ) )));
}
else
Complete( self );
}
void Complete( Actor self )
{

View File

@@ -19,7 +19,7 @@ namespace OpenRA.Mods.RA.Render
public override object Create(ActorInitializer init) { return new RenderBuildingWall(init); }
}
class RenderBuildingWall : RenderBuilding
class RenderBuildingWall : RenderBuilding, INotifyBuildComplete
{
string seqName;
int adjacentWalls = 0;
@@ -28,6 +28,10 @@ namespace OpenRA.Mods.RA.Render
: base(init)
{
seqName = "idle";
}
public void BuildingComplete( Actor self )
{
anim.PlayFetchIndex(seqName, () => adjacentWalls);
}