Use new update util extensions to simplify some update rules
This commit is contained in:
@@ -30,13 +30,7 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
public override IEnumerable<string> UpdateActorNode(ModData modData, MiniYamlNode actorNode)
|
||||
{
|
||||
foreach (var sod in actorNode.ChildrenMatching("ShakeOnDeath"))
|
||||
{
|
||||
var intensity = sod.LastChildMatching("Intensity");
|
||||
if (intensity == null)
|
||||
continue;
|
||||
|
||||
intensity.RenameKey("Duration");
|
||||
}
|
||||
sod.RenameChildrenMatching("Intensity", "Duration");
|
||||
|
||||
yield break;
|
||||
}
|
||||
|
||||
@@ -92,9 +92,8 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
if (tunnelConditionNode != null)
|
||||
{
|
||||
var grantNode = new MiniYamlNode("GrantConditionOnTunnelLayer", "");
|
||||
grantNode.AddNode("Condition", tunnelConditionNode.Value.Value);
|
||||
tunnelConditionNode.MoveAndRenameNode(mobileNode, grantNode, "Condition");
|
||||
addNodes.Add(grantNode);
|
||||
mobileNode.RemoveNodes("TunnelCondition");
|
||||
}
|
||||
|
||||
var subterraneanNode = mobileNode.LastChildMatching("Subterranean");
|
||||
@@ -125,13 +124,8 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
{
|
||||
var grantNode = new MiniYamlNode("GrantConditionOnSubterraneanLayer", "");
|
||||
foreach (var node in nodes)
|
||||
{
|
||||
if (node != null)
|
||||
{
|
||||
grantNode.AddNode(node);
|
||||
mobileNode.RemoveNode(node);
|
||||
}
|
||||
}
|
||||
node.MoveNode(mobileNode, grantNode);
|
||||
|
||||
addNodes.Add(grantNode);
|
||||
}
|
||||
@@ -147,8 +141,7 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
if (conditionNode != null)
|
||||
{
|
||||
var grantNode = new MiniYamlNode("GrantConditionOnJumpjetLayer", "");
|
||||
grantNode.AddNode("Condition", conditionNode.Value.Value);
|
||||
mobileNode.RemoveNodes("JumpjetCondition");
|
||||
conditionNode.MoveAndRenameNode(mobileNode, grantNode, "Condition");
|
||||
addNodes.Add(grantNode);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -90,9 +90,7 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
else if (attackSequence != null && aimSequence != null)
|
||||
{
|
||||
var turretAim = new MiniYamlNode("WithTurretAimAnimation", "");
|
||||
aimSequence.RenameKey("Sequence");
|
||||
turretAim.AddNode(aimSequence);
|
||||
turretAttack.RemoveNode(aimSequence);
|
||||
aimSequence.MoveAndRenameNode(turretAttack, turretAim, "Sequence");
|
||||
|
||||
var turret = turretAttack.LastChildMatching("Turret");
|
||||
var armament = turretAttack.LastChildMatching("Armament");
|
||||
@@ -118,9 +116,7 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
aimAnimLocations.Add(Tuple.Create(actorNode.Key, actorNode.Location.Filename));
|
||||
|
||||
var aimAnim = new MiniYamlNode("WithTurretAimAnimation", "");
|
||||
aimSequence.RenameKey("Sequence");
|
||||
aimAnim.AddNode(aimSequence);
|
||||
spriteTurret.RemoveNode(aimSequence);
|
||||
aimSequence.MoveAndRenameNode(spriteTurret, aimAnim, "Sequence");
|
||||
actorNode.AddNode(aimAnim);
|
||||
}
|
||||
}
|
||||
@@ -160,9 +156,7 @@ namespace OpenRA.Mods.Common.UpdateRules.Rules
|
||||
else if (attackSequence != null && aimSequence != null)
|
||||
{
|
||||
var aimAnim = new MiniYamlNode("WithAimAnimation", "");
|
||||
aimSequence.RenameKey("Sequence");
|
||||
aimAnim.AddNode(aimSequence);
|
||||
attackAnim.RemoveNode(aimSequence);
|
||||
aimSequence.MoveAndRenameNode(attackAnim, aimAnim, "Sequence");
|
||||
|
||||
var body = attackAnim.LastChildMatching("Body");
|
||||
var armament = attackAnim.LastChildMatching("Armament");
|
||||
|
||||
Reference in New Issue
Block a user