Replace IActorInit with an abstract class.
A shared ValueActorInit<T> is introduced to reduce duplication in the most common init cases, and an ActorInitActorReference allow actors to be referenced by map.yaml name.
This commit is contained in:
@@ -33,10 +33,10 @@ namespace OpenRA.Mods.Common.Traits
|
||||
|
||||
public LegacyBridgeHut(ActorInitializer init, LegacyBridgeHutInfo info)
|
||||
{
|
||||
var bridge = init.GetOrDefault<ParentActorInit>(info);
|
||||
var bridge = init.Get<ParentActorInit>(info).Value;
|
||||
init.World.AddFrameEndTask(_ =>
|
||||
{
|
||||
Bridge = bridge.Value(init.World).Value.Trait<Bridge>();
|
||||
Bridge = bridge.Actor(init.World).Value.Trait<Bridge>();
|
||||
Bridge.AddHut(this);
|
||||
FirstBridge = Bridge.Enumerate(0, true).Last();
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user