コード例 #1
0
ファイル: LE_LogicLevel.cs プロジェクト: neople82/Lemon
 private void SaveLevel()
 {
     if (LE_EventInterface.OnSave != null)
     {
         // collect level meta data, which depends on the game's implementation
         LE_CollectMetaDataEvent collectMetaData = new LE_CollectMetaDataEvent();
         if (LE_EventInterface.OnCollectMetaDataBeforeSave != null)
         {
             LE_EventInterface.OnCollectMetaDataBeforeSave(this, collectMetaData);
         }
         // save
         int removedDuplicatesCount = 0;
         if (m_confL.IsRemoveDuplicatesOnSave)
         {
             removedDuplicatesCount = LE_SaveLoad.RemoveDuplicatesInCurrentLevel();
         }
         LE_SaveEvent saveEventArgs = new LE_SaveEvent(
             LE_SaveLoad.SaveCurrentLevelDataToByteArray(m_configTextures),
             LE_SaveLoad.SaveCurrentLevelMetaToByteArray(m_levelIcon, collectMetaData.GetCollectedMetaData()),
             removedDuplicatesCount);
         LE_EventInterface.OnSave(this, saveEventArgs);
     }
     else
     {
         Debug.LogError("LE_LogicLevel: OnLevelLoadBtn: you have to provide an event handler for 'LE_EventInterface.OnSave' to save a level!");
     }
 }
コード例 #2
0
    public static void OnSaveWorldData(object sender, LE_SaveEvent e)
    {
        byte[] levelDataAsByteArray = e.SavedLevelData;
        byte[] levelMetaAsByteArray = e.SavedLevelMeta;

        Data.WorldData.cWorldData WorldData = new Data.WorldData.cWorldData();
        WorldData.ByteMetadata = levelMetaAsByteArray;
        WorldData.ByteData     = levelDataAsByteArray;
        Globals.con.SendObject("SaveWorldData", WorldData);
    }
コード例 #3
0
        // save the level and show the info dialog
        public void Save(LE_SaveEvent p_args)
        {
            // save to file
            string popupText = ExampleGame_LoadSave.SaveByFileName(LEVEL_FILE_NAME, p_args.SavedLevelData, p_args.SavedLevelMeta);

            if (p_args.RemovedDuplicatesCount > 0)
            {
                popupText += "\n'" + p_args.RemovedDuplicatesCount + "' duplicate object(s) removed before saving\n(duplicate = same: object, position, rotation, scale).";
            }
            ((uMyGUI_PopupText)uMyGUI_PopupManager.Instance.ShowPopup(uMyGUI_PopupManager.POPUP_TEXT)).SetText("Level Saved", popupText).ShowButton("ok");
        }
コード例 #4
0
 // save the current level to a file and note the latest save action frame
 private void OnSave(object p_sender, LE_SaveEvent p_args)
 {
     m_lastSaveFrame = Time.frameCount;
     LE_ExtensionInterface.Save.Delegate(this, p_args.SavedLevelData, p_args.SavedLevelMeta, p_args.RemovedDuplicatesCount);
 }
コード例 #5
0
 // save the current level to a file and note the latest save action frame
 private void OnSave(object p_sender, LE_SaveEvent p_args)
 {
     Save(p_args);
 }