public Task LoadEntities([NotNull] PrefabRootViewModel root) { EnsureAssetAccess(); var gameSideEntities = ClonePartsForGameSide(root.Asset.Asset, root.InnerSubEntities.Select(x => x.AssetSideEntity)); return(InvokeAsync(() => Game.LoadEntities(gameSideEntities))); }
public Task UnloadEntities([NotNull] PrefabRootViewModel root) { EnsureAssetAccess(); var entityIds = root.InnerSubEntities.Select(e => e.Id).ToList(); return(InvokeAsync(() => { var gameSideEntities = entityIds.Select(FindPart).Cast <Entity>().NotNull(); Game.UnloadEntities(gameSideEntities); })); }