Add Player Palette support for Bullet, Missile and GravityBomb.

This commit is contained in:
Mustafa Alperen Seki
2018-02-13 09:55:58 +03:00
committed by reaperrr
parent a06b21f636
commit 733055007a
3 changed files with 13 additions and 3 deletions

View File

@@ -40,6 +40,9 @@ namespace OpenRA.Mods.Common.Projectiles
[Desc("The palette used to draw this projectile.")] [Desc("The palette used to draw this projectile.")]
[PaletteReference] public readonly string Palette = "effect"; [PaletteReference] public readonly string Palette = "effect";
[Desc("Palette is a player palette BaseName")]
public readonly bool IsPlayerPalette = false;
[Desc("Does this projectile have a shadow?")] [Desc("Does this projectile have a shadow?")]
public readonly bool Shadow = false; public readonly bool Shadow = false;
@@ -277,7 +280,7 @@ namespace OpenRA.Mods.Common.Projectiles
yield return r; yield return r;
} }
var palette = wr.Palette(info.Palette); var palette = wr.Palette(info.Palette + (info.IsPlayerPalette ? args.SourceActor.Owner.InternalName : ""));
foreach (var r in anim.Render(pos, palette)) foreach (var r in anim.Render(pos, palette))
yield return r; yield return r;
} }

View File

@@ -28,8 +28,12 @@ namespace OpenRA.Mods.Common.Projectiles
[Desc("Sequence to play when launched. Skipped if null or empty.")] [Desc("Sequence to play when launched. Skipped if null or empty.")]
[SequenceReference("Image")] public readonly string OpenSequence = null; [SequenceReference("Image")] public readonly string OpenSequence = null;
[Desc("The palette used to draw this projectile.")]
[PaletteReference] public readonly string Palette = "effect"; [PaletteReference] public readonly string Palette = "effect";
[Desc("Palette is a player palette BaseName")]
public readonly bool IsPlayerPalette = false;
public readonly bool Shadow = false; public readonly bool Shadow = false;
[PaletteReference] public readonly string ShadowPalette = "shadow"; [PaletteReference] public readonly string ShadowPalette = "shadow";
@@ -104,7 +108,7 @@ namespace OpenRA.Mods.Common.Projectiles
yield return r; yield return r;
} }
var palette = wr.Palette(info.Palette); var palette = wr.Palette(info.Palette + (info.IsPlayerPalette ? args.SourceActor.Owner.InternalName : ""));
foreach (var r in anim.Render(pos, palette)) foreach (var r in anim.Render(pos, palette))
yield return r; yield return r;
} }

View File

@@ -34,6 +34,9 @@ namespace OpenRA.Mods.Common.Projectiles
[Desc("Palette used to render the projectile sequence.")] [Desc("Palette used to render the projectile sequence.")]
[PaletteReference] public readonly string Palette = "effect"; [PaletteReference] public readonly string Palette = "effect";
[Desc("Palette is a player palette BaseName")]
public readonly bool IsPlayerPalette = false;
[Desc("Should the projectile's shadow be rendered?")] [Desc("Should the projectile's shadow be rendered?")]
public readonly bool Shadow = false; public readonly bool Shadow = false;
@@ -911,7 +914,7 @@ namespace OpenRA.Mods.Common.Projectiles
yield return r; yield return r;
} }
var palette = wr.Palette(info.Palette); var palette = wr.Palette(info.Palette + (info.IsPlayerPalette ? args.SourceActor.Owner.InternalName : ""));
foreach (var r in anim.Render(pos, palette)) foreach (var r in anim.Render(pos, palette))
yield return r; yield return r;
} }