public void SaveJson() { saveObj = CreateAdminSave(); string saveJsonString = JsonUtility.ToJson(saveObj, true); JsonFileUtility.WriteJsonToFile(ADMINSAVEFILE, saveJsonString, JSONSTATE.PERSISTENT_DATA_PATH); Debug.Log("Saving as JSON " + saveJsonString); }
public void LoadJson() { string loadJsonString = JsonFileUtility.LoadJsonFromFile(ADMINSAVEFILE, JSONSTATE.PERSISTENT_DATA_PATH); saveObj = JsonUtility.FromJson <TrinaxSaves>(loadJsonString); // Assign our values back! if (saveObj != null) { PopulateGlobalSettings(); PopulateGameSettings(); PopulateAudioSettings(); PopulateKinectSettings(); } else { Debug.Log("Json file is empty! Creating a new save file..."); saveObj = CreateAdminSave(); } }
TrinaxSaves CreateAdminSave() { saveGameObjects.Clear(); for (int i = 0; i < TrinaxGlobal.Instance.AllGameObjTypesStr.Length - 1; i++) { GameObj obj = new GameObj { name = TrinaxGlobal.Instance.AllGameObjTypesStr[i], objectProperties = TrinaxGlobal.Instance.gameSettings.GameObjs.GameObj[i].objectProperties, }; saveGameObjects.Add(obj); } GameObjs gameObjects = new GameObjs { GameObj = saveGameObjects, }; GameSettings saveGameSettings = new GameSettings { //gameDuration = TrinaxGlobal.Instance.gameSettings.gameDuration, spawnInterval = TrinaxGlobal.Instance.gameSettings.spawnInterval, minPowerupSpawn = TrinaxGlobal.Instance.gameSettings.minPowerupSpawn, maxPowerupSpawn = TrinaxGlobal.Instance.gameSettings.maxPowerupSpawn, pointsPerObject = TrinaxGlobal.Instance.gameSettings.pointsPerObject, xpPerObject = TrinaxGlobal.Instance.gameSettings.xpPerObject, xpPerObjectMultipler = TrinaxGlobal.Instance.gameSettings.xpPerObjectMultipler, MAX_XP_REQUIRED_PER_BONUS = TrinaxGlobal.Instance.gameSettings.MAX_XP_REQUIRED_PER_BONUS, timeToActivateNextPattern = TrinaxGlobal.Instance.gameSettings.timeToActivateNextPattern, DifficultyIncreaseInterval = TrinaxGlobal.Instance.gameSettings.DifficultyIncreaseInterval, probabilityScale = TrinaxGlobal.Instance.gameSettings.probabilityScale, firstAidRecover = TrinaxGlobal.Instance.gameSettings.firstAidRecover, pointsPerCoin = TrinaxGlobal.Instance.gameSettings.pointsPerCoin, coinFallSpeed = TrinaxGlobal.Instance.gameSettings.coinFallSpeed, invunerableDuration = TrinaxGlobal.Instance.gameSettings.invunerableDuration, umbrellaProbabilityChance = TrinaxGlobal.Instance.gameSettings.umbrellaProbabilityChance, GameObjs = gameObjects, }; GlobalSettings saveGlobalSettings = new GlobalSettings { IP = TrinaxGlobal.Instance.globalSettings.IP, photoPath = TrinaxGlobal.Instance.globalSettings.photoPath, idleInterval = TrinaxGlobal.Instance.globalSettings.idleInterval, COMPORT1 = TrinaxGlobal.Instance.globalSettings.COMPORT1, useServer = TrinaxGlobal.Instance.globalSettings.useServer, useMocky = TrinaxGlobal.Instance.globalSettings.useMocky, useKeyboard = TrinaxGlobal.Instance.globalSettings.useKeyboard, muteAllSounds = TrinaxManager.trinaxAudioManager.muteAllSounds, }; AudioSettings saveAudioSettings = new AudioSettings { masterVolume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.MASTER].slider.value, musicVolume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.MUSIC].slider.value, SFXVolume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX].slider.value, SFX2Volume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX2].slider.value, SFX3Volume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX3].slider.value, SFX4Volume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX4].slider.value, UI_SFXVolume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.UI_SFX].slider.value, UI_SFX2Volume = TrinaxManager.trinaxAudioManager.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.UI_SFX2].slider.value, }; KinectSettings saveKinectSettings = new KinectSettings { isTrackingBody = TrinaxGlobal.Instance.kinectSettings.isTrackingBody, isTrackingHead = TrinaxGlobal.Instance.kinectSettings.isTrackingHead, minUserDistance = TrinaxGlobal.Instance.kinectSettings.minUserDistance, maxUserDistance = TrinaxGlobal.Instance.kinectSettings.maxUserDistance, maxLeftRightDistance = TrinaxGlobal.Instance.kinectSettings.maxLeftRightDistance, }; TrinaxSaves save = new TrinaxSaves { gameSettings = saveGameSettings, globalSettings = saveGlobalSettings, audioSettings = saveAudioSettings, kinectSettings = saveKinectSettings, }; return(save); }
TrinaxSaves CreateAdminSave() { GameSettings saveGameSettings = new GameSettings { gameDuration = TrinaxGlobal.Instance.gameSettings.gameDuration, huatkueh_points = TrinaxGlobal.Instance.gameSettings.huatkueh_points, angpao_points = TrinaxGlobal.Instance.gameSettings.angpao_points, mandarinOrange_points = TrinaxGlobal.Instance.gameSettings.mandarinOrange_points, pineappleTart_points = TrinaxGlobal.Instance.gameSettings.pineappleTart_points, chunLian_points = TrinaxGlobal.Instance.gameSettings.chunLian_points, firecracker_points = TrinaxGlobal.Instance.gameSettings.firecracker_points, comboDecreaseRate = TrinaxGlobal.Instance.gameSettings.comboDecreaseRate, numberOfHuatKuehToSpawn = TrinaxGlobal.Instance.gameSettings.numberOfHuatKuehToSpawn, numberOfAngPaoToSpawn = TrinaxGlobal.Instance.gameSettings.numberOfAngPaoToSpawn, minmumPoints = TrinaxGlobal.Instance.gameSettings.minmumPoints, objectTotalAmount = TrinaxGlobal.Instance.gameSettings.objectTotalAmount, non_scoreable_amt_min = TrinaxGlobal.Instance.gameSettings.non_scoreable_amt_min, non_scoreable_amt_max = TrinaxGlobal.Instance.gameSettings.non_scoreable_amt_max, spawnDuration = TrinaxGlobal.Instance.gameSettings.spawnDuration, }; GlobalSettings saveGlobalSettings = new GlobalSettings { IP = TrinaxGlobal.Instance.globalSettings.IP, //COMPORT1 = TrinaxGlobal.Instance.globalSettings.COMPORT1, //COMPORT2 = TrinaxGlobal.Instance.globalSettings.COMPORT2, idleInterval = TrinaxGlobal.Instance.globalSettings.idleInterval, useServer = TrinaxGlobal.Instance.globalSettings.useServer, useMocky = TrinaxGlobal.Instance.globalSettings.useMocky, useKeyboard = TrinaxGlobal.Instance.globalSettings.useKeyboard, muteAudioListener = TrinaxAudioManager.Instance._muteAudioListener, useLocalLeaderboard = TrinaxGlobal.Instance.globalSettings.useLocalLeaderboard, }; AudioConfig saveAudioSettings = new AudioConfig { masterVolume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.MASTER].slider.value, musicVolume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.MUSIC].slider.value, SFXVolume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX].slider.value, SFX2Volume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX2].slider.value, SFX3Volume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX3].slider.value, SFX4Volume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.SFX4].slider.value, UI_SFXVolume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.UI_SFX].slider.value, UI_SFX2Volume = TrinaxAudioManager.Instance.audioSettings[(int)TrinaxAudioManager.AUDIOPLAYER.UI_SFX2].slider.value, }; //KinectSettings saveKinectSettings = new KinectSettings //{ // isTrackingBody = TrinaxGlobal.Instance.kinectSettings.isTrackingBody, // isTrackingHead = TrinaxGlobal.Instance.kinectSettings.isTrackingHead, //}; TrinaxSaves save = new TrinaxSaves { gameSettings = saveGameSettings, globalSettings = saveGlobalSettings, audioSettings = saveAudioSettings, //kinectSettings = saveKinectSettings, }; return(save); }