Make AreaBeam and LaserZap Z sorting customizable

This commit is contained in:
reaperrr
2015-12-27 18:54:39 +01:00
committed by RoosterDragon
parent 92c7af7302
commit a7b5800d6f
4 changed files with 12 additions and 2 deletions

View File

@@ -59,6 +59,9 @@ namespace OpenRA.Mods.Common.Effects
[Desc("Should the beam be visuall rendered? False = Beam is invisible.")]
public readonly bool RenderBeam = true;
[Desc("Equivalent to sequence ZOffset. Controls Z sorting.")]
public readonly int ZOffset = 0;
[Desc("Color of the beam.")]
public readonly Color Color = Color.Red;
@@ -193,7 +196,7 @@ namespace OpenRA.Mods.Common.Effects
{
if (!IsBeamComplete && info.RenderBeam && !(wr.World.FogObscures(tailPos) && wr.World.FogObscures(headPos)))
{
var beamRender = new BeamRenderable(headPos, 0, tailPos - headPos, info.Shape, info.Width, color);
var beamRender = new BeamRenderable(headPos, info.ZOffset, tailPos - headPos, info.Shape, info.Width, color);
return new[] { (IRenderable)beamRender };
}

View File

@@ -27,6 +27,9 @@ namespace OpenRA.Mods.Common.Effects
[Desc("The shape of the beam. Accepts values Cylindrical or Flat.")]
public readonly BeamRenderableShape Shape = BeamRenderableShape.Cylindrical;
[Desc("Equivalent to sequence ZOffset. Controls Z sorting.")]
public readonly int ZOffset = 0;
public readonly int BeamDuration = 10;
public readonly bool UsePlayerColor = false;
@@ -102,7 +105,7 @@ namespace OpenRA.Mods.Common.Effects
if (ticks < info.BeamDuration)
{
var rc = Color.FromArgb((info.BeamDuration - ticks) * 255 / info.BeamDuration, color);
yield return new BeamRenderable(args.Source, 0, target - args.Source, info.Shape, info.Width, rc);
yield return new BeamRenderable(args.Source, info.ZOffset, target - args.Source, info.Shape, info.Width, rc);
}
if (hitanim != null)

View File

@@ -125,6 +125,7 @@ Laser:
Projectile: LaserZap
Width: 85
HitAnim: laserfire
ZOffset: 2047
Warhead@1Dam: SpreadDamage
Spread: 42
Damage: 360

View File

@@ -75,6 +75,7 @@ SonicZap:
DamageInterval: 5 # Roughly 18 impacts.
Width: 0c384
Shape: Flat
ZOffset: 2047
BeyondTargetRange: 0c256
Blockable: true
Color: 00FFFFC8
@@ -176,6 +177,7 @@ ObeliskLaserFire:
Report: OBELRAY1.AUD
Projectile: LaserZap
Width: 170
ZOffset: 2047
Warhead@1Dam: SpreadDamage
Spread: 42
Damage: 250
@@ -188,6 +190,7 @@ TurretLaserFire:
Projectile: LaserZap
Width: 85
BeamDuration: 5
ZOffset: 2047
Warhead@1Dam: SpreadDamage
Spread: 42
Damage: 30