From f46aa42023bfffad6209e7015d45ec334369e2a0 Mon Sep 17 00:00:00 2001
From: client_Hale <339726288@qq.com>
Date: 星期一, 08 四月 2019 21:08:01 +0800
Subject: [PATCH] 382 地图编辑器json存储逻辑

---
 Core/MapEditor/Behavior/Bhv_TransferPoint.cs |   39 +++++++++++++++++++++++++++++++++++++++
 1 files changed, 39 insertions(+), 0 deletions(-)

diff --git a/Core/MapEditor/Behavior/Bhv_TransferPoint.cs b/Core/MapEditor/Behavior/Bhv_TransferPoint.cs
index 661f866..aa36195 100644
--- a/Core/MapEditor/Behavior/Bhv_TransferPoint.cs
+++ b/Core/MapEditor/Behavior/Bhv_TransferPoint.cs
@@ -32,6 +32,45 @@
             bw.Write((float)System.Math.Round(capsuleCollider.radius, 2));
         }
 
+        public void SaveJson(System.Text.StringBuilder stringBuilder)
+        {
+            stringBuilder.Append("{");
+            stringBuilder.Append("\"effectID\":").Append(effectID).Append(",");
+            stringBuilder.Append("\"stateNameFront\":\"").Append(stateNameFront).Append("\",");
+            stringBuilder.Append("\"flyTimeFront\":").Append(flyTimeFront).Append(",");
+            stringBuilder.Append("\"stateNameBack\":\"").Append(stateNameBack).Append("\",");
+            stringBuilder.Append("\"flyTimeBack\":").Append(flyTimeBack).Append(",");
+            stringBuilder.Append("\"px\":").Append((float)System.Math.Round(transform.position.x, 2)).Append(",");
+            stringBuilder.Append("\"py\":").Append((float)System.Math.Round(transform.position.y, 2)).Append(",");
+            stringBuilder.Append("\"pz\":").Append((float)System.Math.Round(transform.position.z, 2)).Append(",");
+            stringBuilder.Append("\"r\":").Append((float)System.Math.Round(capsuleCollider.radius, 2));
+            stringBuilder.Append("}");
+        }
+
+        public void LoadJson(LitJson.JsonData json)
+        {
+            effectID = (int)json["effectID"];
+            stateNameFront = json["stateNameFront"].ToString();
+            flyTimeFront = (int)json["flyTimeFront"];
+            stateNameBack = json["stateNameBack"].ToString();
+            flyTimeBack = (int)json["flyTimeBack"];
+            float _pX = (float)json["px"];
+            float _pY = (float)json["py"];
+            float _pZ = (float)json["pz"];
+            transform.position = new Vector3(_pX, _pY, _pZ);
+            float _r = (float)json["r"];
+            capsuleCollider.radius = _r;
+            if (EffectConfig.Has(effectID))
+            {
+                var _prefab = InstanceResourcesLoader.LoadEffect(effectID);
+                Effect = Instantiate(_prefab);
+                Effect.transform.SetParent(transform);
+                Effect.transform.localPosition = Vector3.zero;
+                Effect.transform.localScale = Vector3.one;
+                Effect.transform.rotation = Quaternion.identity;
+            }
+        }
+
         public void Load(BinaryReader br)
         {
             effectID = br.ReadInt32();

--
Gitblit v1.8.0