Fixed specialised buildings not having their power requirements added/subtracted.

This commit is contained in:
Matthew Bowra-Dean
2009-11-09 23:07:35 +13:00
parent cfd99b5250
commit 0040db61cd
4 changed files with 14 additions and 9 deletions

View File

@@ -21,19 +21,24 @@ namespace OpenRa.Game.Traits
Make(() =>
{
anim.PlayRepeating("idle");
foreach (var x in self.traits.WithInterface<INotifyBuildComplete>())
x.BuildingComplete(self);
});
}, self);
DoBib(self, false);
}
protected void Make( Action after )
protected void Make( Action after, Actor self )
{
Action newAfter = () =>
{
if (Game.skipMakeAnims)
after();
foreach (var x in self.traits.WithInterface<INotifyBuildComplete>())
x.BuildingComplete(self);
};
if (Game.skipMakeAnims)
newAfter();
else
anim.PlayThen("make", after);
anim.PlayThen("make", newAfter);
}
void DoBib(Actor self, bool isRemove)

View File

@@ -11,7 +11,7 @@ namespace OpenRa.Game.Traits
: base(self)
{
Make( () => anim.PlayFetchIndex("idle",
() => (int)(5 * self.Owner.GetSiloFullness())));
() => (int)(5 * self.Owner.GetSiloFullness())), self);
}
}
}

View File

@@ -10,7 +10,7 @@ namespace OpenRa.Game.Traits
public RenderBuildingTurreted(Actor self)
: base(self)
{
Make( () => PlayTurretAnim( self, "idle" ));
Make( () => PlayTurretAnim( self, "idle" ), self);
}
void PlayTurretAnim(Actor self, string a)

View File

@@ -26,7 +26,7 @@ namespace OpenRa.Game.Traits
doneBuilding = true;
anim.Play("idle");
roof.Play(prefix + "idle-top");
});
}, self);
}
public IEnumerable<Pair<Sprite, float2>> RenderRoof(Actor self)