public virtual void Save(ZoneSaveData saveData) { if (IsEnabled) { PersistNpcData(); } _variables.SaveTo(saveData.PersistentVariables, VariableDefinition.Saved); saveData.Npcs = _npcData.Select(npc => npc.Value).ToList(); }
public virtual string Save(WorldSaveData saveData) { _variables.SaveTo(saveData.PersistentVariables, VariableDefinition.Saved); foreach (var zone in Zones) { if (zone != null) { var zoneSaveData = new ZoneSaveData(); zone.Save(zoneSaveData); zoneSaveData.Name = zone.Zone.name; saveData.Zones.Add(zoneSaveData); } } return(SaveFilename); }
public virtual void Load(ZoneSaveData saveData) { _variables.LoadFrom(saveData.PersistentVariables, VariableDefinition.Saved); _npcData = saveData.Npcs.ToDictionary(npc => npc.Id); }