Default the optional effect sequence to null

This commit is contained in:
Matthias Mailänder
2020-04-16 18:02:04 +02:00
committed by Pavel Penev
parent 346dad3898
commit 38cdc93010
4 changed files with 43 additions and 2 deletions

View File

@@ -32,7 +32,7 @@ namespace OpenRA.Mods.Common.Traits
public readonly string EffectImage = null;
[SequenceReference("EffectImage")]
public readonly string EffectSequence = "idle";
public readonly string EffectSequence = null;
[PaletteReference]
public readonly string EffectPalette = null;

View File

@@ -0,0 +1,39 @@
#region Copyright & License Information
/*
* Copyright 2007-2020 The OpenRA Developers (see AUTHORS)
* This file is part of OpenRA, which is free software. It is made
* available to you under the terms of the GNU General Public License
* as published by the Free Software Foundation, either version 3 of
* the License, or (at your option) any later version. For more
* information, see COPYING.
*/
#endregion
using System.Collections.Generic;
namespace OpenRA.Mods.Common.UpdateRules.Rules
{
class SpawnActorPowerDefaultEffect : UpdateRule
{
public override string Name { get { return "Set SpawnActorPower EffectSequence to it's previous default value."; } }
public override string Description
{
get
{
return "The 'EffectSequence' of 'SpawnActorPower' is unset by default.";
}
}
public override IEnumerable<string> UpdateActorNode(ModData modData, MiniYamlNode actorNode)
{
foreach (var spawnActorPower in actorNode.ChildrenMatching("SpawnActorPower"))
{
var effectNode = spawnActorPower.LastChildMatching("EffectSequence");
if (effectNode == null)
spawnActorPower.AddNode("EffectSequence", "idle");
}
yield break;
}
}
}

View File

@@ -82,7 +82,8 @@ namespace OpenRA.Mods.Common.UpdateRules
new ModernizeDecorationTraits(),
new RenameInfiltrationNotifications(),
new MoveClassicFacingFudge(),
new RenameWithNukeLaunch()
new RenameWithNukeLaunch(),
new SpawnActorPowerDefaultEffect(),
})
};

View File

@@ -339,6 +339,7 @@ powerproxy.sonarpulse:
EffectImage: moveflsh
EffectPalette: moveflash
SupportPowerPaletteOrder: 80
EffectSequence: idle
powerproxy.paratroopers:
AlwaysVisible: