UserSceneManager.cs 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. using LitJson;
  2. using Newtonsoft.Json;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. using UnityEngine;
  6. public class UserSceneManager : XRTool.Util.Singleton<UserSceneManager>
  7. {
  8. //场景中的模型
  9. public Dictionary<string, UserSceneItem> SceneList = new Dictionary<string, UserSceneItem>();
  10. //初始化场景
  11. public void initScene(string msg)
  12. {
  13. SceneList.Clear();
  14. JsonData data = JsonMapper.ToObject(msg);
  15. Debug.Log("initScene init");
  16. if (data["data"].IsArray)
  17. {
  18. Debug.Log("initScene IsArray");
  19. for (int i = 0; i < data["data"].Count; i++)
  20. {
  21. init(data["data"][i]["id"].ToString(), data["data"][i]["name"].ToString());
  22. }
  23. }
  24. }
  25. public void init(string id, string name)
  26. {
  27. SendSnInfo sendNet = new SendSnInfo();
  28. sendNet.sn = SendSN.GetSN();
  29. sendNet.projectId = int.Parse(id);
  30. string jsonData = JsonMapper.ToJson(sendNet);
  31. GameScene.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpAction.client_snInfo, jsonData, (message) =>
  32. {
  33. SendSceneDetail detail = new SendSceneDetail();
  34. detail.id = int.Parse(id);
  35. string str = JsonConvert.SerializeObject(detail);
  36. HttpTool
  37. .Instance.PostTest(HttpAction.project_detail, str, (mes) =>
  38. {
  39. JsonData data = JsonMapper.ToObject(mes);
  40. if (data["data"].ToString() != null)
  41. {
  42. CreateItem(data["data"]);
  43. }
  44. });
  45. }));
  46. }
  47. void CreateItem(JsonData msg)
  48. {
  49. Debug.Log(" 初始化场景 msg==》" + msg.ToJson());
  50. UserSceneItem usi = new UserSceneItem();//JsonConvert.DeserializeObject<UserSceneItem>(msg.ToJson());
  51. usi.id = msg["id"].ToString();
  52. usi.name = msg["name"].ToString();
  53. if(msg["sentiment"]!=null)
  54. usi.sentiment = msg["sentiment"].ToString();
  55. if (msg["updateTime"] != null)
  56. usi.updateTime = msg["updateTime"].ToString();
  57. if (msg["backgroundImages"] != null)
  58. usi.backgroundImages = msg["backgroundImages"].ToString();
  59. if (msg["navLines"] != null)
  60. usi.navLines = msg["navLines"].ToString();
  61. if (msg["status"] != null)
  62. usi.status = msg["status"].ToString();
  63. if (msg["belong"] != null)
  64. usi.belong = msg["belong"].ToString();
  65. if (msg["describe"] != null)
  66. usi.describe = msg["describe"].ToString();
  67. if (msg["image"] != null)
  68. usi.image = msg["image"].ToString();
  69. if (msg["map"] != null)
  70. usi.map = msg["map"].ToString();
  71. if (msg["sandTable"] != null)
  72. usi.sandTable = msg["sandTable"].ToString();
  73. usi.vufroiaTrigger = new VufroiaTrigger();
  74. usi.vufroiaTrigger.init(msg);
  75. usi.vufroiaTrigger.init(msg);
  76. SceneList.Add(usi.id, usi);
  77. }
  78. }