Add ISingleInstanceInit interface.

Inits that are logically singletons (e.g. actor
location or owner) should implement this interface
to avoid runtime inconsistencies.

Duplicate instances are rejected at init-time,
allowing simpler queries when they are used.
This commit is contained in:
Paul Chote
2020-05-30 16:48:35 +01:00
committed by reaperrr
parent 86305879cb
commit b856613194
45 changed files with 169 additions and 95 deletions

View File

@@ -45,7 +45,7 @@ namespace OpenRA.Mods.Cnc.Traits
var bibOffset = bi.Dimensions.Y - rows;
var centerOffset = bi.CenterOffset(init.World);
var map = init.World.Map;
var location = init.GetValue<LocationInit, CPos>(this, CPos.Zero);
var location = init.GetValue<LocationInit, CPos>(CPos.Zero);
for (var i = 0; i < rows * width; i++)
{