Remove SpawnActor from SpiceBloom.

This commit is contained in:
Paul Chote
2017-02-05 12:23:02 +00:00
parent b018c3d837
commit 847a00e938
3 changed files with 19 additions and 15 deletions

View File

@@ -801,6 +801,23 @@ namespace OpenRA.Mods.Common.UtilityCommands
} }
} }
if (engineVersion < 20170205)
{
if (node.Key.StartsWith("SpiceBloom", StringComparison.Ordinal))
{
var spawnActor = node.Value.Nodes.FirstOrDefault(n => n.Key == "SpawnActor");
if (spawnActor != null)
{
node.Value.Nodes.Remove(spawnActor);
spawnActor.Key = "Actor";
}
else
spawnActor = new MiniYamlNode("Actor", new MiniYaml("spicebloom.spawnpoint"));
addNodes.Add(new MiniYamlNode("SpawnActorOnDeath", new MiniYaml("", new List<MiniYamlNode>() { spawnActor })));
}
}
UpgradeActorRules(modData, engineVersion, ref node.Value.Nodes, node, depth + 1); UpgradeActorRules(modData, engineVersion, ref node.Value.Nodes, node, depth + 1);
} }

View File

@@ -26,9 +26,6 @@ namespace OpenRA.Mods.D2k.Traits
[Desc("Seeds resources by explosive eruptions after accumulation times.")] [Desc("Seeds resources by explosive eruptions after accumulation times.")]
public class SpiceBloomInfo : ITraitInfo, IRenderActorPreviewSpritesInfo, Requires<RenderSpritesInfo> public class SpiceBloomInfo : ITraitInfo, IRenderActorPreviewSpritesInfo, Requires<RenderSpritesInfo>
{ {
[ActorReference]
public readonly string SpawnActor = "spicebloom.spawnpoint";
[SequenceReference] [SequenceReference]
public readonly string[] GrowthSequences = { "grow1", "grow2", "grow3" }; public readonly string[] GrowthSequences = { "grow1", "grow2", "grow3" };
@@ -157,18 +154,6 @@ namespace OpenRA.Mods.D2k.Traits
{ {
if (!string.IsNullOrEmpty(info.Weapon)) if (!string.IsNullOrEmpty(info.Weapon))
SeedResources(self); SeedResources(self);
var td = new TypeDictionary
{
new ParentActorInit(self),
new LocationInit(self.Location),
new CenterPositionInit(self.CenterPosition),
new OwnerInit(self.Owner),
new FactionInit(self.Owner.Faction.InternalName),
new SkipMakeAnimsInit()
};
self.World.AddFrameEndTask(w => w.CreateActor(info.SpawnActor, td));
} }
} }
} }

View File

@@ -58,6 +58,8 @@ spicebloom:
RequiresForceFire: true RequiresForceFire: true
Armor: Armor:
Type: none Type: none
SpawnActorOnDeath:
Actor: spicebloom.spawnpoint
sandworm: sandworm:
Inherits@1: ^SpriteActor Inherits@1: ^SpriteActor