public void RecordState(GameObject obj, int objCount, string scene) { if (obj.CompareTag(PARTITIONABLE_OBJECT)) { PartitionableObjectJSONParams partitionable = new PartitionableObjectJSONParams(); partitionable.scene = scene; partitionable.count = objCount; partitionable.posX = obj.transform.position.x; partitionable.posY = obj.transform.position.y; partitionable.isTangible = obj.GetComponent <PartitionableObject> ().IsTangible(); string jsonPartitionable = JsonUtility.ToJson(partitionable); PlayerPrefs.SetString(scene + "_" + PARTITIONABLE_OBJECT + "_" + objCount, jsonPartitionable); } else if (obj.CompareTag(CUTSCENE)) { CutsceneJSONParams cutscene = new CutsceneJSONParams(); cutscene.name = obj.GetComponent <Cutscene> ().GetCutsceneName(); cutscene.scene = scene; cutscene.isTriggered = obj.GetComponent <Cutscene> ().IsTriggered(); string jsonCutscene = JsonUtility.ToJson(cutscene); PlayerPrefs.SetString(scene + "_" + cutscene.name, jsonCutscene); } }
/// <summary> /// Initializes the cutscene behaviour. Can be overriden to allow specific initialization for additional properties. /// </summary> protected virtual void Init() { this.scene = SceneManager.GetActiveScene().name; if (PlayerPrefs.HasKey(scene + "_" + name)) { string cutsceneJSON = PlayerPrefs.GetString(scene + "_" + name); CutsceneJSONParams cutsceneStats = JsonUtility.FromJson <CutsceneJSONParams> (cutsceneJSON); // this.isTriggered = cutsceneStats.isTriggered; } }