Rename ExtendedDamageState -> DamageState

This commit is contained in:
Paul Chote
2010-07-30 21:40:40 +12:00
parent 028c5b5201
commit 1459ec483c
31 changed files with 70 additions and 70 deletions

View File

@@ -78,7 +78,7 @@ namespace OpenRA.Traits
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
{
self.World.WorldActor.traits.Get<ScreenShaker>().AddEffect(10, self.CenterLocation, 1);
Sound.Play(Info.DestroyedSound, self.CenterLocation);

View File

@@ -26,7 +26,7 @@ namespace OpenRA.Traits
public virtual object Create(ActorInitializer init) { return new Health(init, this); }
}
public enum ExtendedDamageState { Dead, Quarter, Half, ThreeQuarter, Normal, Undamaged };
public enum DamageState { Dead, Quarter, Half, ThreeQuarter, Normal, Undamaged };
public class Health
{
@@ -53,26 +53,26 @@ namespace OpenRA.Traits
public bool IsDead { get { return hp <= 0; } }
public bool RemoveOnDeath = true;
public ExtendedDamageState ExtendedDamageState
public DamageState DamageState
{
get
{
if (hp <= 0)
return ExtendedDamageState.Dead;
return DamageState.Dead;
if (hp < MaxHP * 0.25f)
return ExtendedDamageState.Quarter;
return DamageState.Quarter;
if (hp < MaxHP * 0.5f)
return ExtendedDamageState.Half;
return DamageState.Half;
if (hp < MaxHP * 0.75f)
return ExtendedDamageState.ThreeQuarter;
return DamageState.ThreeQuarter;
if (hp == MaxHP)
return ExtendedDamageState.Undamaged;
return DamageState.Undamaged;
return ExtendedDamageState.Normal;
return DamageState.Normal;
}
}
@@ -80,7 +80,7 @@ namespace OpenRA.Traits
{
if (IsDead) return; /* overkill! don't count extra hits as more kills! */
var oldExtendedState = this.ExtendedDamageState;
var oldState = this.DamageState;
/* apply the damage modifiers, if we have any. */
var modifier = (float)self.traits.WithInterface<IDamageModifier>()
@@ -109,8 +109,8 @@ namespace OpenRA.Traits
{
Attacker = attacker,
Damage = damage,
ExtendedDamageState = this.ExtendedDamageState,
ExtendedDamageStateChanged = this.ExtendedDamageState != oldExtendedState,
DamageState = this.DamageState,
DamageStateChanged = this.DamageState != oldState,
Warhead = warhead
});
}
@@ -124,10 +124,10 @@ namespace OpenRA.Traits
return (health == null) ? true : health.IsDead;
}
public static ExtendedDamageState GetExtendedDamageState(this Actor self)
public static DamageState GetDamageState(this Actor self)
{
var health = self.traits.GetOrDefault<Health>();
return (health == null) ? ExtendedDamageState.Undamaged : health.ExtendedDamageState;
return (health == null) ? DamageState.Undamaged : health.DamageState;
}
public static void InflictDamage(this Actor self, Actor attacker, int damage, WarheadInfo warhead)

View File

@@ -64,7 +64,7 @@ namespace OpenRA.Traits
protected virtual string GetPrefix(Actor self)
{
return self.GetExtendedDamageState() <= ExtendedDamageState.Half ? "damaged-" : "";
return self.GetDamageState() <= DamageState.Half ? "damaged-" : "";
}
public void PlayCustomAnim(Actor self, string name)

View File

@@ -68,7 +68,7 @@ namespace OpenRA.Traits
self.World.AddFrameEndTask(w => w.Add(new RepairIndicator(self)));
self.InflictDamage(self, -hpToRepair, null);
if (Health.ExtendedDamageState == ExtendedDamageState.Undamaged)
if (Health.DamageState == DamageState.Undamaged)
{
isRepairing = false;
return;

4
OpenRA.Game/Traits/Selectable.cs Executable file → Normal file
View File

@@ -69,8 +69,8 @@ namespace OpenRA.Traits
Game.Renderer.LineRenderer.DrawLine(xy + new float2(0, -2), xy + new float2(0, -4), c, c);
Game.Renderer.LineRenderer.DrawLine(Xy + new float2(0, -2), Xy + new float2(0, -4), c, c);
var healthColor = (health.ExtendedDamageState == ExtendedDamageState.Quarter) ? Color.Red :
(health.ExtendedDamageState == ExtendedDamageState.Half) ? Color.Yellow : Color.LimeGreen;
var healthColor = (health.DamageState == DamageState.Quarter) ? Color.Red :
(health.DamageState == DamageState.Half) ? Color.Yellow : Color.LimeGreen;
var healthColor2 = Color.FromArgb(
255,

View File

@@ -25,8 +25,8 @@ namespace OpenRA.Traits
public Actor Attacker;
public WarheadInfo Warhead;
public int Damage;
public ExtendedDamageState ExtendedDamageState;
public bool ExtendedDamageStateChanged;
public DamageState DamageState;
public bool DamageStateChanged;
}
public interface ITick { void Tick(Actor self); }

View File

@@ -32,7 +32,7 @@ namespace OpenRA.Traits
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
if (self.Owner == self.World.LocalPlayer)
Sound.PlayVoice("Lost", self);
}

View File

@@ -31,7 +31,7 @@ namespace OpenRA.Mods.Cnc
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageStateChanged && e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageStateChanged && e.DamageState == DamageState.Dead)
{
self.traits.Get<RenderSimple>().anim.PlayRepeating("critical-idle");
self.World.AddFrameEndTask(

View File

@@ -82,7 +82,7 @@ namespace OpenRA.Mods.Cnc
public void Damaged (Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
CancelDock(self, dockedHarv);
}

View File

@@ -43,7 +43,7 @@ namespace OpenRA.Mods.RA.Activities
}
self.InflictDamage(self, -hpToRepair, null);
if (health.ExtendedDamageState == ExtendedDamageState.Undamaged)
if (health.DamageState == DamageState.Undamaged)
return NextActivity;
if (host != null)

View File

@@ -24,7 +24,7 @@ namespace OpenRA.Mods.RA.Activities
{
if (target == null || target.IsDead()) return NextActivity;
var health = target.traits.Get<Health>();
if (health.ExtendedDamageState == ExtendedDamageState.Undamaged)
if (health.DamageState == DamageState.Undamaged)
return NextActivity;
target.InflictDamage(self, -health.MaxHP, null);

2
OpenRA.Mods.RA/AttackBase.cs Executable file → Normal file
View File

@@ -223,7 +223,7 @@ namespace OpenRA.Mods.RA
if (self.Owner.Stances[underCursor.Owner] != Stance.Ally && !forceFire) return null;
// don't allow healing of fully-healed stuff!
if (underCursor.GetExtendedDamageState() == ExtendedDamageState.Undamaged) return null;
if (underCursor.GetDamageState() == DamageState.Undamaged) return null;
}
else
{

View File

@@ -39,7 +39,7 @@ namespace OpenRA.Mods.RA
return true; // wandered off faster than we could follow
if (attack.target.IsActor
&& attack.target.Actor.GetExtendedDamageState() == ExtendedDamageState.Undamaged)
&& attack.target.Actor.GetDamageState() == DamageState.Undamaged)
return true; // fully healed
return false;
@@ -60,7 +60,7 @@ namespace OpenRA.Mods.RA
return inRange
.Where(a => a != self && self.Owner.Stances[ a.Owner ] == Stance.Ally)
.Where(a => !a.IsDead())
.Where(a => a.traits.Contains<Health>() && a.GetExtendedDamageState() < ExtendedDamageState.Undamaged)
.Where(a => a.traits.Contains<Health>() && a.GetDamageState() < DamageState.Undamaged)
.Where(a => Combat.HasAnyValidWeapons(self, Target.FromActor(a)))
.OrderBy(a => (a.Location - self.Location).LengthSquared)
.FirstOrDefault();

View File

@@ -160,18 +160,18 @@ namespace OpenRA.Mods.RA
void UpdateState()
{
// If this is a long bridge next to a destroyed shore piece, we need die to give clean edges to the break
if (Info.Long && Health.ExtendedDamageState != ExtendedDamageState.Dead &&
if (Info.Long && Health.DamageState != DamageState.Dead &&
((southNeighbour != null && Info.ShorePieces.Contains(southNeighbour.Type) && !IsIntact(southNeighbour)) ||
(northNeighbour != null && Info.ShorePieces.Contains(northNeighbour.Type) && !IsIntact(northNeighbour))))
{
self.Kill(self); // this changes the damagestate
}
var ds = Health.ExtendedDamageState;
currentTemplate = (ds == ExtendedDamageState.Half && Info.DamagedTemplate > 0) ? Info.DamagedTemplate :
(ds == ExtendedDamageState.Dead && Info.DestroyedTemplate > 0) ? Info.DestroyedTemplate : Info.Template;
var ds = Health.DamageState;
currentTemplate = (ds == DamageState.Half && Info.DamagedTemplate > 0) ? Info.DamagedTemplate :
(ds == DamageState.Dead && Info.DestroyedTemplate > 0) ? Info.DestroyedTemplate : Info.Template;
if (Info.Long && ds == ExtendedDamageState.Dead)
if (Info.Long && ds == DamageState.Dead)
{
// Long bridges have custom art for multiple segments being destroyed
bool waterToSouth = !IsIntact(southNeighbour);
@@ -185,7 +185,7 @@ namespace OpenRA.Mods.RA
currentTemplate = Info.DestroyedPlusSouthTemplate;
}
if (ds == ExtendedDamageState.Dead && !dead)
if (ds == DamageState.Dead && !dead)
{
dead = true;
KillUnitsOnBridge();
@@ -198,7 +198,7 @@ namespace OpenRA.Mods.RA
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageStateChanged)
if (e.DamageStateChanged)
{
UpdateState();
if (northNeighbour != null) northNeighbour.UpdateState();

View File

@@ -27,7 +27,7 @@ namespace OpenRA.Mods.RA
// Fire primary on death
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
Detonate(self, e.Attacker);
}

View File

@@ -57,7 +57,7 @@ namespace OpenRA.Mods.RA
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageStateChanged && e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageStateChanged && e.DamageState == DamageState.Dead)
Emit(self);
}
}

View File

@@ -39,19 +39,19 @@ namespace OpenRA.Mods.RA
{
if (order.OrderString != "EngineerRepair") return null;
if (order.TargetActor == null) return null;
return (order.TargetActor.GetExtendedDamageState() == ExtendedDamageState.Undamaged) ? "goldwrench-blocked" : "goldwrench";
return (order.TargetActor.GetDamageState() == DamageState.Undamaged) ? "goldwrench-blocked" : "goldwrench";
}
public string VoicePhraseForOrder(Actor self, Order order)
{
return (order.OrderString == "EngineerRepair"
&& order.TargetActor.GetExtendedDamageState() < ExtendedDamageState.Undamaged) ? "Attack" : null;
&& order.TargetActor.GetDamageState() < DamageState.Undamaged) ? "Attack" : null;
}
public void ResolveOrder(Actor self, Order order)
{
if (order.OrderString == "EngineerRepair"
&& order.TargetActor.GetExtendedDamageState() < ExtendedDamageState.Undamaged)
&& order.TargetActor.GetDamageState() < DamageState.Undamaged)
{
if (self.Owner == self.World.LocalPlayer)
self.World.AddFrameEndTask(w =>

View File

@@ -25,7 +25,7 @@ namespace OpenRA.Mods.RA
{
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
{
var weapon = ChooseWeaponForExplosion(self);
if (weapon != null)

View File

@@ -18,7 +18,7 @@ namespace OpenRA.Mods.RA
{
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
{
// Prevent TK from giving exp
if (e.Attacker == null || e.Attacker.Owner.Stances[ self.Owner ] == Stance.Ally )

2
OpenRA.Mods.RA/Harvester.cs Executable file → Normal file
View File

@@ -164,7 +164,7 @@ namespace OpenRA.Mods.RA
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
if (LinkedProc != null)
LinkedProc.traits.WithInterface<IAcceptOre>().FirstOrDefault().UnlinkHarvester(LinkedProc,self);
}

View File

@@ -22,7 +22,7 @@ namespace OpenRA.Mods.RA
{
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
self.World.AddFrameEndTask(w =>
{
var info = self.Info.Traits.Get<LeavesHuskInfo>();

2
OpenRA.Mods.RA/Orders/RepairOrderGenerator.cs Executable file → Normal file
View File

@@ -35,7 +35,7 @@ namespace OpenRA.Mods.RA.Orders
yield break;
if (underCursor.Info.Traits.Contains<RepairableBuildingInfo>()
&& underCursor.GetExtendedDamageState() < ExtendedDamageState.Undamaged)
&& underCursor.GetDamageState() < DamageState.Undamaged)
yield return new Order("Repair", underCursor);
}
}

2
OpenRA.Mods.RA/OreRefinery.cs Executable file → Normal file
View File

@@ -92,7 +92,7 @@ namespace OpenRA.Mods.RA
public void Damaged (Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
foreach (var harv in LinkedHarv)
harv.traits.Get<Harvester> ().UnlinkProc(harv, self);
}

10
OpenRA.Mods.RA/Render/RenderBuilding.cs Executable file → Normal file
View File

@@ -58,19 +58,19 @@ namespace OpenRA.Mods.RA.Render
public virtual void Damaged(Actor self, AttackInfo e)
{
if (!e.ExtendedDamageStateChanged)
if (!e.DamageStateChanged)
return;
switch( e.ExtendedDamageState )
switch( e.DamageState )
{
case ExtendedDamageState.ThreeQuarter: case ExtendedDamageState.Normal: case ExtendedDamageState.Undamaged:
case DamageState.ThreeQuarter: case DamageState.Normal: case DamageState.Undamaged:
anim.ReplaceAnim("idle");
break;
case ExtendedDamageState.Half: case ExtendedDamageState.Quarter:
case DamageState.Half: case DamageState.Quarter:
anim.ReplaceAnim("damaged-idle");
Sound.Play(self.Info.Traits.Get<BuildingInfo>().DamagedSound, self.CenterLocation);
break;
case ExtendedDamageState.Dead:
case DamageState.Dead:
self.World.AddFrameEndTask(w => w.Add(new Explosion(w, self.CenterLocation.ToInt2(), "building", false)));
break;
}

8
OpenRA.Mods.RA/Render/RenderBuildingTurreted.cs Executable file → Normal file
View File

@@ -31,14 +31,14 @@ namespace OpenRA.Mods.RA.Render
public override void Damaged(Actor self, AttackInfo e)
{
if (!e.ExtendedDamageStateChanged) return;
if (!e.DamageStateChanged) return;
switch( e.ExtendedDamageState )
switch( e.DamageState )
{
case ExtendedDamageState.ThreeQuarter: case ExtendedDamageState.Normal: case ExtendedDamageState.Undamaged:
case DamageState.ThreeQuarter: case DamageState.Normal: case DamageState.Undamaged:
anim.ReplaceAnim("idle");
break;
case ExtendedDamageState.Half: case ExtendedDamageState.Quarter:
case DamageState.Half: case DamageState.Quarter:
anim.ReplaceAnim("damaged-idle");
Sound.Play(self.Info.Traits.Get<BuildingInfo>().DamagedSound, self.CenterLocation);
break;

12
OpenRA.Mods.RA/Render/RenderBuildingWall.cs Executable file → Normal file
View File

@@ -35,22 +35,22 @@ namespace OpenRA.Mods.RA.Render
{
var numStates = self.Info.Traits.Get<RenderBuildingWallInfo>().DamageStates;
if (!e.ExtendedDamageStateChanged) return;
if (!e.DamageStateChanged) return;
switch (e.ExtendedDamageState)
switch (e.DamageState)
{
case ExtendedDamageState.Normal:
case DamageState.Normal:
seqName = "idle";
break;
case ExtendedDamageState.ThreeQuarter:
case DamageState.ThreeQuarter:
if (numStates >= 4)
seqName = "minor-damaged-idle";
break;
case ExtendedDamageState.Half:
case DamageState.Half:
seqName = "damaged-idle";
Sound.Play(self.Info.Traits.Get<BuildingInfo>().DamagedSound, self.CenterLocation);
break;
case ExtendedDamageState.Quarter:
case DamageState.Quarter:
if (numStates >= 3)
{
seqName = "critical-idle";

10
OpenRA.Mods.RA/Render/RenderBuildingWarFactory.cs Executable file → Normal file
View File

@@ -27,7 +27,7 @@ namespace OpenRA.Mods.RA.Render
string GetPrefix(Actor self)
{
return self.GetExtendedDamageState() <= ExtendedDamageState.Half ? "damaged-" : "";
return self.GetDamageState() <= DamageState.Half ? "damaged-" : "";
}
public RenderWarFactory(Actor self)
@@ -53,14 +53,14 @@ namespace OpenRA.Mods.RA.Render
public void Damaged(Actor self, AttackInfo e)
{
if (!e.ExtendedDamageStateChanged) return;
if (!e.DamageStateChanged) return;
switch( e.ExtendedDamageState )
switch( e.DamageState )
{
case ExtendedDamageState.ThreeQuarter: case ExtendedDamageState.Normal: case ExtendedDamageState.Undamaged:
case DamageState.ThreeQuarter: case DamageState.Normal: case DamageState.Undamaged:
roof.ReplaceAnim(roof.CurrentSequence.Name.Replace("damaged-",""));
break;
case ExtendedDamageState.Half: case ExtendedDamageState.Quarter:
case DamageState.Half: case DamageState.Quarter:
roof.ReplaceAnim("damaged-" + roof.CurrentSequence.Name);
break;
}

2
OpenRA.Mods.RA/Render/RenderInfantry.cs Executable file → Normal file
View File

@@ -78,7 +78,7 @@ namespace OpenRA.Mods.RA.Render
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState == ExtendedDamageState.Dead)
if (e.DamageState == DamageState.Dead)
{
var death = e.Warhead != null ? e.Warhead.InfDeath : 0;
Sound.PlayVoice("Die", self);

2
OpenRA.Mods.RA/Render/RenderUnit.cs Executable file → Normal file
View File

@@ -37,7 +37,7 @@ namespace OpenRA.Mods.RA.Render
public void Damaged(Actor self, AttackInfo e)
{
if (e.ExtendedDamageState > ExtendedDamageState.Half) return;
if (e.DamageState > DamageState.Half) return;
if (isSmoking) return;
isSmoking = true;

View File

@@ -46,7 +46,7 @@ namespace OpenRA.Mods.RA
bool CanRepair(Actor self)
{
var li = self.traits.GetOrDefault<LimitedAmmo>();
return (Health.ExtendedDamageState < ExtendedDamageState.Undamaged || (li != null && !li.FullAmmo()) );
return (Health.DamageState < DamageState.Undamaged || (li != null && !li.FullAmmo()) );
}
public string CursorForOrder(Actor self, Order order)

View File

@@ -31,7 +31,7 @@ namespace OpenRA.Mods.RA
if (underCursor.Owner == self.Owner &&
self.Info.Traits.Get<RepairableNearInfo>().Buildings.Contains( underCursor.Info.Name ) &&
self.GetExtendedDamageState() < ExtendedDamageState.Undamaged)
self.GetDamageState() < DamageState.Undamaged)
return new Order("Enter", self, underCursor);
return null;