public void SetData(Stage stageData) { this.Id = stageData.Id; this.Name = stageData.Name; this.Layers = stageData.Layers; this.ContentSetIdList = stageData.ContentSetIdList; }
public Stage CreateData() { Stage data = new Stage(); data.Id = Id; data.ContentSetIdList = ContentSetIdList; data.Layers = Layers; return data; }
public void OnStageChanging(Stage oldStage, Stage newStage) { // 卸载无效的资源集 foreach (int setId in oldStage.ContentSetIdList) { if (!newStage.ContentSetIdList.Contains(setId)) Unload(setId); } // 仅加载新增的资源集 foreach (int setId in newStage.ContentSetIdList) { if (!oldStage.ContentSetIdList.Contains(setId)) GameService.Instance.QueryModule<ContentModule>().LoadCombra(setId); Load(setId); } }
public static void WriteStage(String targetFile, Stage data) { XmlSerialize.Serialize(targetFile, data); }
// 保存场景 public void WriteStage() { Stage curData = new Stage(); curData.Name = CurStageName; curData.Layers = Layers; // 保存文件 String fullPath = Path.Combine(Directory.GetCurrentDirectory(), GameService.Instance.GameConfig.ContentPath, CurScenePath + GameService.Instance.GameConfig.SceneExt); XmlSerialize.Serialize(fullPath, typeof(Stage), curData); }
public void StageManager_OnStageChanging(Stage oldData, Stage newData) { }
public void NewScene(String path, String name) { ResetStage(); CurScene = new Stage(name); CurScene.Path = path; }
public override void Initialize(IService service) { base.Initialize(service); CurScene = new Stage(); StageChanging += StageManager_OnStageChanging; StageChanged += StageManager_OnStageChanged; }