Move damage sounds and shaking from Building/RenderBuilding into their own traits. Fix wall damage/death sounds under cnc.
This commit is contained in:
@@ -107,10 +107,7 @@ namespace OpenRA.Mods.RA.Render
|
||||
self.World.AddFrameEndTask(w => w.Add(new Explosion(w, Traits.Util.CenterOfCell(cell), "building", false, 0)));
|
||||
}
|
||||
else if (e.DamageState >= DamageState.Heavy && e.PreviousDamageState < DamageState.Heavy)
|
||||
{
|
||||
anim.ReplaceAnim("damaged-idle");
|
||||
Sound.Play(self.Info.Traits.Get<BuildingInfo>().DamagedSound, self.CenterLocation);
|
||||
}
|
||||
else if (e.DamageState < DamageState.Heavy)
|
||||
anim.ReplaceAnim("idle");
|
||||
}
|
||||
|
||||
@@ -35,10 +35,7 @@ namespace OpenRA.Mods.RA.Render
|
||||
if (!e.DamageStateChanged) return;
|
||||
|
||||
if (e.DamageState >= DamageState.Heavy && e.PreviousDamageState < DamageState.Heavy)
|
||||
{
|
||||
anim.ReplaceAnim("damaged-idle");
|
||||
Sound.Play(self.Info.Traits.Get<BuildingInfo>().DamagedSound, self.CenterLocation);
|
||||
}
|
||||
else if (e.DamageState < DamageState.Heavy)
|
||||
anim.ReplaceAnim("idle");
|
||||
}
|
||||
|
||||
@@ -35,24 +35,14 @@ namespace OpenRA.Mods.RA.Render
|
||||
{
|
||||
if (!e.DamageStateChanged) return;
|
||||
|
||||
var bi = self.Info.Traits.Get<BuildingInfo>();
|
||||
|
||||
if (e.DamageState == DamageState.Medium && anim.HasSequence("scratched-idle"))
|
||||
seqName = "scratched-idle";
|
||||
else if (e.DamageState <= DamageState.Medium)
|
||||
seqName = "idle";
|
||||
else if (e.DamageState == DamageState.Critical && anim.HasSequence("critical-idle"))
|
||||
{
|
||||
seqName = "critical-idle";
|
||||
if (e.DamageState > e.PreviousDamageState)
|
||||
Sound.Play(bi.DamagedSound, self.CenterLocation);
|
||||
}
|
||||
else if (e.DamageState <= DamageState.Critical)
|
||||
{
|
||||
seqName = "damaged-idle";
|
||||
if (e.DamageState > e.PreviousDamageState)
|
||||
Sound.Play(bi.DamagedSound, self.CenterLocation);
|
||||
}
|
||||
|
||||
anim.PlayFetchIndex(seqName, () => adjacentWalls);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user