12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- using System;
- using UnityEngine;
- using System.Collections;
- namespace cn.sharesdk.unity3d {
- public class ShareSDKRestoreScene : MonoBehaviour
- {
- public RestoreSceneConfigure restoreSceneConfig;
- public static bool isInit;
- public static ShareSDKRestoreScene _instance;
- public static ShareSDKRestoreSceneImpl restoreSceneUtils;
- public static event RestoreSceneHandler onRestoreScene;
- public static event AnalysisCommandHandler OnAnalysisCommand;
- public delegate void RestoreSceneHandler(RestoreSceneInfo scene);
- public delegate void AnalysisCommandHandler(Hashtable parameters);
- void Awake() {
- if (!isInit) {
- isInit = true;
- }
- if (_instance != null) {
- Destroy(_instance.gameObject);
- }
- _instance = this;
- DontDestroyOnLoad(this.gameObject);
- }
- public static void setRestoreSceneListener(cn.sharesdk.unity3d.ShareSDKRestoreScene.RestoreSceneHandler sceneHandler) {
- onRestoreScene += sceneHandler;
- }
- public static void setCommandListener(cn.sharesdk.unity3d.ShareSDKRestoreScene.AnalysisCommandHandler commandHandler) {
- OnAnalysisCommand += commandHandler;
- }
- public void _RestoreCallBack(string data) {
- Hashtable res = (Hashtable)MiniJSON.jsonDecode(data);
- if (res == null || res.Count <= 0) {
- return;
- }
- string path = res ["path"].ToString();
- Hashtable customParams = (Hashtable)res ["params"];
- RestoreSceneInfo scene = new RestoreSceneInfo (path, customParams);
- onRestoreScene(scene);
- }
- public void _AnalysisCommandCallBack(string data) {
- Hashtable res = (Hashtable)MiniJSON.jsonDecode(data);
- if (res == null || res.Count <= 0) {
- return;
- }
- OnAnalysisCommand(res);
- }
- }
- }
|