public void RestoreMemento(SerializableUnit memento) { _effects.RestoreMemento(memento.effectManager); _owner = memento.owner; _sector = memento.sector; Level = memento.level; UpdateStats(); }
/// <summary> /// Restores the unit state from the given memento. This will also need the list of /// available players and the sector it is contained in, in order to set up /// the references. /// </summary> /// <param name="memento"></param> /// <param name="players"></param> /// <param name="containingSector"></param> public void RestoreFromMemento(SerializableUnit memento, Player[] players, Sector containingSector) { Initialize(players[memento.ownerId], containingSector, (Color)memento.color); owner.units.Add(this); level = 0; for (int i = 0; i < memento.level; i++) { LevelUp(); } }