public void Load(Jsonable saved, bool removeUnusedBehaviors, HashSet <string> usedBrainIds) { saved.PerformUpgrades(usedBrainIds); saved.AssertValid(); behaviors.LoadJsonables(saved.behaviorIds, saved.behaviors); brains.LoadJsonables(saved.brainIds, saved.brains); GarbageCollect(removeUnusedBehaviors, usedBrainIds); }
public void LoadForNetworkInit(Jsonable saved) { Debug.Assert(saved.version == Jsonable.CurrentVersionNumber, "LoadForNetworkInit: Received wrong version number!"); saved.AssertValid(); behaviors.LoadJsonables(saved.behaviorIds, saved.behaviors); brains.LoadJsonables(saved.brainIds, saved.brains); // Assume the host already GC'd, so no need to call it here. }