Convert Health Radius to world coordinates.
This commit is contained in:
@@ -17,7 +17,8 @@ namespace OpenRA.Traits
|
|||||||
public class HealthInfo : ITraitInfo, UsesInit<HealthInit>
|
public class HealthInfo : ITraitInfo, UsesInit<HealthInit>
|
||||||
{
|
{
|
||||||
public readonly int HP = 0;
|
public readonly int HP = 0;
|
||||||
public readonly float Radius = 10;
|
[Desc("Physical size of the unit used for damage calculations. Impacts within this radius apply full damage")]
|
||||||
|
public readonly WRange Radius = new WRange(426);
|
||||||
public virtual object Create(ActorInitializer init) { return new Health(init, this); }
|
public virtual object Create(ActorInitializer init) { return new Health(init, this); }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -192,7 +192,7 @@ namespace OpenRA.Mods.RA
|
|||||||
var rawDamage = (float)warhead.Damage;
|
var rawDamage = (float)warhead.Damage;
|
||||||
if (withFalloff)
|
if (withFalloff)
|
||||||
{
|
{
|
||||||
var distance = (int)Math.Max(0, (target.CenterPosition - pos).Length * Game.CellSize / 1024 - healthInfo.Radius);
|
var distance = Math.Max(0, (target.CenterPosition - pos).Length - healthInfo.Radius.Range) * Game.CellSize / 1024;
|
||||||
var falloff = (float)GetDamageFalloff(distance / warhead.Spread);
|
var falloff = (float)GetDamageFalloff(distance / warhead.Spread);
|
||||||
rawDamage = (float)(falloff * rawDamage);
|
rawDamage = (float)(falloff * rawDamage);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,10 +42,7 @@ namespace OpenRA.Mods.RA
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (health.Value != null)
|
if (health.Value != null)
|
||||||
{
|
wr.DrawRangeCircle(self.CenterPosition, health.Value.Info.Radius, Color.Red);
|
||||||
var range = new WRange((int)(health.Value.Info.Radius * 1024 / Game.CellSize));
|
|
||||||
wr.DrawRangeCircle(self.CenterPosition, range, Color.Red);
|
|
||||||
}
|
|
||||||
|
|
||||||
var wlr = Game.Renderer.WorldLineRenderer;
|
var wlr = Game.Renderer.WorldLineRenderer;
|
||||||
var c = Color.White;
|
var c = Color.White;
|
||||||
|
|||||||
Reference in New Issue
Block a user