diff --git a/OpenRa.Game/Traits/Bridge.cs b/OpenRa.Game/Traits/Bridge.cs index a3d7af158b..3e4e6abbe1 100644 --- a/OpenRa.Game/Traits/Bridge.cs +++ b/OpenRa.Game/Traits/Bridge.cs @@ -15,7 +15,7 @@ namespace OpenRa.Traits public object Create(Actor self) { return new Bridge(self); } } - class Bridge : IRender, ICustomTerrain + class Bridge : IRender, ICustomTerrain, INotifyDamage { Dictionary Tiles; List> TileSprites = new List>(); @@ -76,5 +76,12 @@ namespace OpenRa.Traits return TerrainCosts.Cost(umt, Templates[state].TerrainType[Tiles[p]]); } + + public void Damaged(Actor self, AttackInfo e) + { + // todo: long bridges have d/e/f states too. + if (e.DamageStateChanged) + state = (int)e.DamageState; + } } }