Browse Source

修复BUG

胡佳骏 1 year ago
parent
commit
dbb2b5118f

+ 4 - 5
Assets/2.0/Tools/DownLoadItem.cs

@@ -48,14 +48,16 @@ public class DownLoadItem : MonoBehaviour
 
     //下载后是否有处理
     public bool isAction;
+    public long updateTime;
 
     private UnityWebRequest webRequest;
 
-    public void Init(string downLoadPath,string id,ModelType type)
+    public void Init(string downLoadPath,string id,ModelType type,long updateTime)
     {
         this.downLoadPath = downLoadPath;
         this.id = id;
         this.type = type;
+        this.updateTime = updateTime;
         LoadManager.Instance.downloadQueueList.Enqueue(this);
     }
 
@@ -240,6 +242,7 @@ public class DownLoadItem : MonoBehaviour
 
     public void DownloadFileMsg()
     {
+        Debug.Log("查询需要下载的updateTime"+updateTime);
         MsgHandler.AddListener(downLoadPath, HandleMsg);
         DownLoadMaterial data = new DownLoadMaterial();
         data.downLoadPath = downLoadPath;
@@ -247,10 +250,6 @@ public class DownLoadItem : MonoBehaviour
         if(type == ModelType.vuforial)
             data.localLoadPath = Application.persistentDataPath + "/StreamingAssets/Vuforia/GHZVuforia." + downLoadPath.Split('.')[1];
   
-        if(UserInfo.Instance.is20)
-            data.updataTime = long.Parse( GameManager.Instance.m_scene.updateTime);
-        else
-            data.updataTime = GameManager.Instance.SceneValue.updateTime;
         data.type = ((int)type).ToString();
 
         

+ 3 - 3
Assets/2.0/Tools/LoadManager.cs

@@ -54,7 +54,7 @@ public class LoadManager : Singleton<LoadManager>
         {
             GameObject obj = new GameObject(dName);
             DownLoadItem dli = obj.AddComponent<DownLoadItem>();
-            dli.Init(model.url, model.uid ,model.modelType);
+            dli.Init(model.url, model.uid ,model.modelType,model.updateTime);
             downList.Add(dName, dli);
         }
         
@@ -115,7 +115,7 @@ public class LoadManager : Singleton<LoadManager>
 
         GameObject xmlFileDownObj = new GameObject("VufroiaTriggerDownLoad_xmlFile");
         DownLoadItem xmlFileItem = xmlFileDownObj.AddComponent<DownLoadItem>();
-        xmlFileItem.Init(xmlFile, "VufroiaTriggerDownLoad_xmlFile",ModelType.vuforial);
+        xmlFileItem.Init(xmlFile, "VufroiaTriggerDownLoad_xmlFile",ModelType.vuforial, long.Parse(GameManager.Instance.m_scene.updateTime));
 
         xmlFileItem.onProgress += (float f) => {
 
@@ -135,7 +135,7 @@ public class LoadManager : Singleton<LoadManager>
 
         GameObject datFileObj = new GameObject("VufroiaTriggerDownLoad_datFile");
         DownLoadItem datFileItem = datFileObj.AddComponent<DownLoadItem>();
-        datFileItem.Init(datFile, "VufroiaTriggerDownLoad_xmlFile",ModelType.vuforial);
+        datFileItem.Init(datFile, "VufroiaTriggerDownLoad_xmlFile",ModelType.vuforial, long.Parse(GameManager.Instance.m_scene.updateTime));
 
         datFileItem.onProgress += (float f) => {
 

+ 1 - 0
Assets/2.0/User/Model/ModelItem.cs

@@ -21,6 +21,7 @@ public enum ModelType
 public class ModelItem 
 {
 
+    public int updateTime { get; set; }
     //WEB端排版
     public string template { get; set; }
     //模型所在组合素材内

+ 1 - 1
Assets/2.0/User/Model/ModelList.cs

@@ -16,7 +16,7 @@ public class ModelList: System.ICloneable
 
     public List<ModelItem> materialList { get; set; }
 
-    public int updatTime { get; set; }
+    public int updateTime { get; set; }
 
     public string typesetting { get; set; }
 

+ 2 - 1
Assets/2.0/User/Model/ModelManager.cs

@@ -54,7 +54,7 @@ public class ModelManager : Singleton<ModelManager>
             }
             Debug.Log(Models.Count + " AddDicModelList " + message);
             for (int i = 0; i < Models.Count; i++)
-            {            
+            {
                 modellist.Add(Models[i].id, Models[i]);          
                 StartModelList(Models[i], materialLibrary);
                 // DownLoadModel(ModelList[i]);
@@ -74,6 +74,7 @@ public class ModelManager : Singleton<ModelManager>
         modelList.materalLibrary = parent.transform;     
         for (int j = 0; j < modelList.materialList.Count; j++)
         {
+            modelList.materialList[j].updateTime = modelList.updateTime;
             Debug.Log("modelList.Model==>"+ modelList.Model.name);
             modelList.materialList[j].init(modelList.Model);
           //  DownLoadModel(modelList);

+ 2 - 0
Assets/2.0/User/Spots/SpotsItem.cs

@@ -8,6 +8,8 @@ using XRTool.Util;
 
 public class SpotsItem
 {
+    public List<sspos> position;
+
     public string id;
 
     public string name;

+ 4 - 4
Assets/2.0/User/UserManager.cs

@@ -17,16 +17,16 @@ public class UserManager : SingletonMono<UserManager>
                 }
             
             };
-            HttpTool.Instance.GetAllMaterials(HttpAction.material_init, "", (string msg)=> {
+            HttpTool.Instance.GetAllMaterials(HttpAction.material_init, "", (string msgMater)=> {
 
-                Debug.Log("/material/init===>" + msg);
-                ModelManager.Instance.init(msg);
+                Debug.Log("/material/init===>" + msgMater);
+                ModelManager.Instance.init(msgMater);
 
                 HttpTool.Instance.Get(HttpAction.project_init, (string msg) => {
 
                     Debug.Log("/project/index===>" + msg);
                     UserSceneManager.Instance.initScene(msg);
-                   // GameScene.Instance.ShowScenes();
+                    // GameScene.Instance.ShowScenes();
                 });
             });
             /*

+ 1 - 0
Assets/2.0/User/UserScene/UserSceneManager.cs

@@ -97,6 +97,7 @@ public class UserSceneManager : XRTool.Util.Singleton<UserSceneManager>
                 {
                     SpotsItem si = new SpotsItem();
                     si.usi = usi;
+                    si.position = JsonConvert.DeserializeObject<List<sspos>>(msg["listSpoit"][i]["spoitTransform"].ToJson());
                     si.id = msg["listSpoit"][i]["id"].ToString();
                     si.name = msg["listSpoit"][i]["name"].ToString();
                     si.triggerImageMark = msg["listSpoit"][i]["triggerImageMark"].ToString();

+ 6 - 0
Assets/COSScripts/COSDownLoad.cs

@@ -261,7 +261,13 @@ private void Start()
 
             default:
                 transferManager = new TransferManager(materialCosXml, transferConfig);
+                if(materialSuccessCos!=null)
                 bucket = materialSuccessCos.bucket;
+                else
+                {
+                    showDownEndLoadCount++;
+                    return;
+                }
                 break;
         }
 

+ 514 - 197
Assets/MRNavigatorPro.unity

@@ -1612,6 +1612,170 @@ MeshFilter:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 275096928}
   m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
+--- !u!43 &283348028
+Mesh:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_Name: 
+  serializedVersion: 10
+  m_SubMeshes:
+  - serializedVersion: 2
+    firstByte: 0
+    indexCount: 0
+    topology: 5
+    baseVertex: 0
+    firstVertex: 0
+    vertexCount: 0
+    localAABB:
+      m_Center: {x: 0, y: 0, z: 0}
+      m_Extent: {x: 0, y: 0, z: 0}
+  m_Shapes:
+    vertices: []
+    shapes: []
+    channels: []
+    fullWeights: []
+  m_BindPose: []
+  m_BoneNameHashes: 
+  m_RootBoneNameHash: 0
+  m_BonesAABB: []
+  m_VariableBoneCountWeights:
+    m_Data: 
+  m_MeshCompression: 0
+  m_IsReadable: 1
+  m_KeepVertices: 0
+  m_KeepIndices: 0
+  m_IndexFormat: 1
+  m_IndexBuffer: 
+  m_VertexData:
+    serializedVersion: 3
+    m_VertexCount: 0
+    m_Channels:
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 3
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    - stream: 0
+      offset: 0
+      format: 0
+      dimension: 0
+    m_DataSize: 0
+    _typelessdata: 
+  m_CompressedMesh:
+    m_Vertices:
+      m_NumItems: 0
+      m_Range: 0
+      m_Start: 0
+      m_Data: 
+      m_BitSize: 0
+    m_UV:
+      m_NumItems: 0
+      m_Range: 0
+      m_Start: 0
+      m_Data: 
+      m_BitSize: 0
+    m_Normals:
+      m_NumItems: 0
+      m_Range: 0
+      m_Start: 0
+      m_Data: 
+      m_BitSize: 0
+    m_Tangents:
+      m_NumItems: 0
+      m_Range: 0
+      m_Start: 0
+      m_Data: 
+      m_BitSize: 0
+    m_Weights:
+      m_NumItems: 0
+      m_Data: 
+      m_BitSize: 0
+    m_NormalSigns:
+      m_NumItems: 0
+      m_Data: 
+      m_BitSize: 0
+    m_TangentSigns:
+      m_NumItems: 0
+      m_Data: 
+      m_BitSize: 0
+    m_FloatColors:
+      m_NumItems: 0
+      m_Range: 0
+      m_Start: 0
+      m_Data: 
+      m_BitSize: 0
+    m_BoneIndices:
+      m_NumItems: 0
+      m_Data: 
+      m_BitSize: 0
+    m_Triangles:
+      m_NumItems: 0
+      m_Data: 
+      m_BitSize: 0
+    m_UVInfo: 0
+  m_LocalAABB:
+    m_Center: {x: 0, y: 0, z: 0}
+    m_Extent: {x: 1.7014117e+38, y: 1.7014117e+38, z: 1.7014117e+38}
+  m_MeshUsageFlags: 0
+  m_BakedConvexCollisionMesh: 
+  m_BakedTriangleCollisionMesh: 
+  m_MeshMetrics[0]: 1
+  m_MeshMetrics[1]: 1
+  m_MeshOptimizationFlags: 1
+  m_StreamData:
+    serializedVersion: 2
+    offset: 0
+    size: 0
+    path: 
 --- !u!1001 &292033093
 PrefabInstance:
   m_ObjectHideFlags: 0
@@ -2247,7 +2411,7 @@ MeshFilter:
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 375338274}
-  m_Mesh: {fileID: 1100279748}
+  m_Mesh: {fileID: 283348028}
 --- !u!114 &375338278
 MonoBehaviour:
   m_ObjectHideFlags: 0
@@ -2788,6 +2952,7 @@ MonoBehaviour:
   isShowDownTip: 0
   avplayer: {fileID: 0}
   needSavePosRotScale: 1
+  SaveButton: {fileID: 1931320905}
 --- !u!4 &588301977
 Transform:
   m_ObjectHideFlags: 0
@@ -4855,170 +5020,6 @@ Transform:
     type: 3}
   m_PrefabInstance: {fileID: 1074227623}
   m_PrefabAsset: {fileID: 0}
---- !u!43 &1100279748
-Mesh:
-  m_ObjectHideFlags: 0
-  m_CorrespondingSourceObject: {fileID: 0}
-  m_PrefabInstance: {fileID: 0}
-  m_PrefabAsset: {fileID: 0}
-  m_Name: 
-  serializedVersion: 10
-  m_SubMeshes:
-  - serializedVersion: 2
-    firstByte: 0
-    indexCount: 0
-    topology: 5
-    baseVertex: 0
-    firstVertex: 0
-    vertexCount: 0
-    localAABB:
-      m_Center: {x: 0, y: 0, z: 0}
-      m_Extent: {x: 0, y: 0, z: 0}
-  m_Shapes:
-    vertices: []
-    shapes: []
-    channels: []
-    fullWeights: []
-  m_BindPose: []
-  m_BoneNameHashes: 
-  m_RootBoneNameHash: 0
-  m_BonesAABB: []
-  m_VariableBoneCountWeights:
-    m_Data: 
-  m_MeshCompression: 0
-  m_IsReadable: 1
-  m_KeepVertices: 0
-  m_KeepIndices: 0
-  m_IndexFormat: 1
-  m_IndexBuffer: 
-  m_VertexData:
-    serializedVersion: 3
-    m_VertexCount: 0
-    m_Channels:
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 3
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    - stream: 0
-      offset: 0
-      format: 0
-      dimension: 0
-    m_DataSize: 0
-    _typelessdata: 
-  m_CompressedMesh:
-    m_Vertices:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_UV:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Normals:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Tangents:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Weights:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_NormalSigns:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_TangentSigns:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_FloatColors:
-      m_NumItems: 0
-      m_Range: 0
-      m_Start: 0
-      m_Data: 
-      m_BitSize: 0
-    m_BoneIndices:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_Triangles:
-      m_NumItems: 0
-      m_Data: 
-      m_BitSize: 0
-    m_UVInfo: 0
-  m_LocalAABB:
-    m_Center: {x: 0, y: 0, z: 0}
-    m_Extent: {x: 1.7014117e+38, y: 1.7014117e+38, z: 1.7014117e+38}
-  m_MeshUsageFlags: 0
-  m_BakedConvexCollisionMesh: 
-  m_BakedTriangleCollisionMesh: 
-  m_MeshMetrics[0]: 1
-  m_MeshMetrics[1]: 1
-  m_MeshOptimizationFlags: 1
-  m_StreamData:
-    serializedVersion: 2
-    offset: 0
-    size: 0
-    path: 
 --- !u!1 &1129952195
 GameObject:
   m_ObjectHideFlags: 0
@@ -5254,15 +5255,95 @@ Transform:
   m_CorrespondingSourceObject: {fileID: 0}
   m_PrefabInstance: {fileID: 0}
   m_PrefabAsset: {fileID: 0}
-  m_GameObject: {fileID: 1154278597}
-  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
-  m_LocalPosition: {x: 0, y: 0, z: 0}
-  m_LocalScale: {x: 1, y: 1, z: 1}
-  m_ConstrainProportionsScale: 0
-  m_Children: []
-  m_Father: {fileID: 1813820188}
-  m_RootOrder: 15
-  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_GameObject: {fileID: 1154278597}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1813820188}
+  m_RootOrder: 15
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!1 &1179665528
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1179665529}
+  - component: {fileID: 1179665531}
+  - component: {fileID: 1179665530}
+  m_Layer: 5
+  m_Name: Text
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &1179665529
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1179665528}
+  m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children: []
+  m_Father: {fileID: 1797779335}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 1, y: 1}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 0, y: 0}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &1179665530
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1179665528}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 0
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_FontData:
+    m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
+    m_FontSize: 40
+    m_FontStyle: 0
+    m_BestFit: 0
+    m_MinSize: 2
+    m_MaxSize: 40
+    m_Alignment: 4
+    m_AlignByGeometry: 0
+    m_RichText: 1
+    m_HorizontalOverflow: 0
+    m_VerticalOverflow: 0
+    m_LineSpacing: 1
+  m_Text: "\u4FDD\u5B58"
+--- !u!222 &1179665531
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1179665528}
+  m_CullTransparentMesh: 0
 --- !u!1 &1265688324
 GameObject:
   m_ObjectHideFlags: 0
@@ -6717,7 +6798,7 @@ PrefabInstance:
     - target: {fileID: 2656584712679981451, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -0.0050992616
+      value: -0.0050849374
       objectReference: {fileID: 0}
     - target: {fileID: 2656584712838976906, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
@@ -6847,37 +6928,37 @@ PrefabInstance:
     - target: {fileID: 2656584713474595953, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -0.001961661
+      value: -0.0019344563
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_SizeDelta.x
-      value: 0
+      value: 188
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_SizeDelta.y
-      value: 0
+      value: 61
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.x
-      value: 0
+      value: 100
       objectReference: {fileID: 0}
     - target: {fileID: 2656584713571100915, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -101.5
       objectReference: {fileID: 0}
     - target: {fileID: 2656584714058937656, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
@@ -6887,62 +6968,62 @@ PrefabInstance:
     - target: {fileID: 2656584714091092633, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2656584714091092633, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 2656584714091092633, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_SizeDelta.x
-      value: 0
+      value: 188
       objectReference: {fileID: 0}
     - target: {fileID: 2656584714091092633, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_SizeDelta.y
-      value: 0
+      value: 61
       objectReference: {fileID: 0}
     - target: {fileID: 2656584714091092633, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.x
-      value: 0
+      value: 100
       objectReference: {fileID: 0}
     - target: {fileID: 2656584714091092633, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -35.5
       objectReference: {fileID: 0}
     - target: {fileID: 3618627243639674965, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchorMax.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 3618627243639674965, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchorMin.y
-      value: 0
+      value: 1
       objectReference: {fileID: 0}
     - target: {fileID: 3618627243639674965, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_SizeDelta.x
-      value: 0
+      value: 188
       objectReference: {fileID: 0}
     - target: {fileID: 3618627243639674965, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_SizeDelta.y
-      value: 0
+      value: 61
       objectReference: {fileID: 0}
     - target: {fileID: 3618627243639674965, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.x
-      value: 0
+      value: 100
       objectReference: {fileID: 0}
     - target: {fileID: 3618627243639674965, guid: 3e8996c442fe40541beb734ca45f2bf6,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: 0
+      value: -35.5
       objectReference: {fileID: 0}
     m_RemovedComponents: []
   m_SourcePrefab: {fileID: 100100000, guid: 3e8996c442fe40541beb734ca45f2bf6, type: 3}
@@ -7110,7 +7191,7 @@ PrefabInstance:
     - target: {fileID: 5079657590173202044, guid: 7e724082e3f166747b1152780155e212,
         type: 3}
       propertyPath: m_RootOrder
-      value: 3
+      value: 4
       objectReference: {fileID: 0}
     - target: {fileID: 5079657590173202044, guid: 7e724082e3f166747b1152780155e212,
         type: 3}
@@ -8098,6 +8179,140 @@ CanvasRenderer:
   m_PrefabAsset: {fileID: 0}
   m_GameObject: {fileID: 1778699410}
   m_CullTransparentMesh: 0
+--- !u!1 &1797779334
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1797779335}
+  - component: {fileID: 1797779338}
+  - component: {fileID: 1797779337}
+  - component: {fileID: 1797779336}
+  m_Layer: 5
+  m_Name: SaveBtn
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 1
+--- !u!224 &1797779335
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1797779334}
+  m_LocalRotation: {x: 0.00000006657903, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 1, y: 1, z: 1}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 1179665529}
+  m_Father: {fileID: 1931320906}
+  m_RootOrder: 0
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0.5, y: 0.5}
+  m_AnchorMax: {x: 0.5, y: 0.5}
+  m_AnchoredPosition: {x: 0, y: -67.3}
+  m_SizeDelta: {x: 99, y: 39}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &1797779336
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1797779334}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Navigation:
+    m_Mode: 3
+    m_WrapAround: 0
+    m_SelectOnUp: {fileID: 0}
+    m_SelectOnDown: {fileID: 0}
+    m_SelectOnLeft: {fileID: 0}
+    m_SelectOnRight: {fileID: 0}
+  m_Transition: 1
+  m_Colors:
+    m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
+    m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
+    m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
+    m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
+    m_ColorMultiplier: 1
+    m_FadeDuration: 0.1
+  m_SpriteState:
+    m_HighlightedSprite: {fileID: 0}
+    m_PressedSprite: {fileID: 0}
+    m_SelectedSprite: {fileID: 0}
+    m_DisabledSprite: {fileID: 0}
+  m_AnimationTriggers:
+    m_NormalTrigger: Normal
+    m_HighlightedTrigger: Highlighted
+    m_PressedTrigger: Pressed
+    m_SelectedTrigger: Selected
+    m_DisabledTrigger: Disabled
+  m_Interactable: 1
+  m_TargetGraphic: {fileID: 1797779337}
+  m_OnClick:
+    m_PersistentCalls:
+      m_Calls:
+      - m_Target: {fileID: 588301976}
+        m_TargetAssemblyTypeName: GameManager, Assembly-CSharp
+        m_MethodName: save20All
+        m_Mode: 1
+        m_Arguments:
+          m_ObjectArgument: {fileID: 0}
+          m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
+          m_IntArgument: 0
+          m_FloatArgument: 0
+          m_StringArgument: 
+          m_BoolArgument: 0
+        m_CallState: 2
+--- !u!114 &1797779337
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1797779334}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_Material: {fileID: 0}
+  m_Color: {r: 1, g: 1, b: 1, a: 1}
+  m_RaycastTarget: 1
+  m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
+  m_Maskable: 1
+  m_OnCullStateChanged:
+    m_PersistentCalls:
+      m_Calls: []
+  m_Sprite: {fileID: 21300000, guid: 7ca395b7349c8ba40aba99f44c5b45af, type: 3}
+  m_Type: 0
+  m_PreserveAspect: 0
+  m_FillCenter: 1
+  m_FillMethod: 4
+  m_FillAmount: 1
+  m_FillClockwise: 1
+  m_FillOrigin: 0
+  m_UseSpriteMesh: 0
+  m_PixelsPerUnitMultiplier: 1
+--- !u!222 &1797779338
+CanvasRenderer:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1797779334}
+  m_CullTransparentMesh: 0
 --- !u!850595691 &1800010878
 LightingSettings:
   m_ObjectHideFlags: 0
@@ -9115,6 +9330,107 @@ PrefabInstance:
         type: 2}
     m_RemovedComponents: []
   m_SourcePrefab: {fileID: 100100000, guid: 7f34641aa9b798d4980647aff233a880, type: 3}
+--- !u!1 &1931320905
+GameObject:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  serializedVersion: 6
+  m_Component:
+  - component: {fileID: 1931320906}
+  - component: {fileID: 1931320909}
+  - component: {fileID: 1931320908}
+  - component: {fileID: 1931320907}
+  m_Layer: 0
+  m_Name: Canvas
+  m_TagString: Untagged
+  m_Icon: {fileID: 0}
+  m_NavMeshLayer: 0
+  m_StaticEditorFlags: 0
+  m_IsActive: 0
+--- !u!224 &1931320906
+RectTransform:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1931320905}
+  m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+  m_LocalPosition: {x: 0, y: 0, z: 0}
+  m_LocalScale: {x: 0.001, y: 0.001, z: 0.001}
+  m_ConstrainProportionsScale: 0
+  m_Children:
+  - {fileID: 1797779335}
+  m_Father: {fileID: 2125129375}
+  m_RootOrder: 3
+  m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+  m_AnchorMin: {x: 0, y: 0}
+  m_AnchorMax: {x: 0, y: 0}
+  m_AnchoredPosition: {x: 0, y: 0}
+  m_SizeDelta: {x: 1078.5, y: 539.99994}
+  m_Pivot: {x: 0.5, y: 0.5}
+--- !u!114 &1931320907
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1931320905}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_IgnoreReversedGraphics: 1
+  m_BlockingObjects: 0
+  m_BlockingMask:
+    serializedVersion: 2
+    m_Bits: 4294967295
+--- !u!114 &1931320908
+MonoBehaviour:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1931320905}
+  m_Enabled: 1
+  m_EditorHideFlags: 0
+  m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
+  m_Name: 
+  m_EditorClassIdentifier: 
+  m_UiScaleMode: 0
+  m_ReferencePixelsPerUnit: 100
+  m_ScaleFactor: 1
+  m_ReferenceResolution: {x: 800, y: 600}
+  m_ScreenMatchMode: 0
+  m_MatchWidthOrHeight: 0
+  m_PhysicalUnit: 3
+  m_FallbackScreenDPI: 96
+  m_DefaultSpriteDPI: 96
+  m_DynamicPixelsPerUnit: 1
+  m_PresetInfoIsWorld: 1
+--- !u!223 &1931320909
+Canvas:
+  m_ObjectHideFlags: 0
+  m_CorrespondingSourceObject: {fileID: 0}
+  m_PrefabInstance: {fileID: 0}
+  m_PrefabAsset: {fileID: 0}
+  m_GameObject: {fileID: 1931320905}
+  m_Enabled: 1
+  serializedVersion: 3
+  m_RenderMode: 2
+  m_Camera: {fileID: 0}
+  m_PlaneDistance: 100
+  m_PixelPerfect: 0
+  m_ReceivesEvents: 1
+  m_OverrideSorting: 0
+  m_OverridePixelPerfect: 0
+  m_SortingBucketNormalizedSize: 0
+  m_AdditionalShaderChannelsFlag: 0
+  m_SortingLayerID: 0
+  m_SortingOrder: 0
+  m_TargetDisplay: 0
 --- !u!1 &1942196189
 GameObject:
   m_ObjectHideFlags: 0
@@ -9821,6 +10137,7 @@ Transform:
   - {fileID: 630007990}
   - {fileID: 1346853078}
   - {fileID: 1367052370}
+  - {fileID: 1931320906}
   - {fileID: 1567377502}
   m_Father: {fileID: 8019606655069246675}
   m_RootOrder: 1
@@ -10036,7 +10353,7 @@ PrefabInstance:
     - target: {fileID: 486518953982833418, guid: 6693e68f506a6c944b1783fb7e52a498,
         type: 3}
       propertyPath: m_AnchoredPosition.y
-      value: -0.0012415011
+      value: -0.0012179109
       objectReference: {fileID: 0}
     - target: {fileID: 486518953989235048, guid: 6693e68f506a6c944b1783fb7e52a498,
         type: 3}
@@ -13882,7 +14199,7 @@ RectTransform:
   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
   m_AnchorMin: {x: 0, y: 1}
   m_AnchorMax: {x: 1, y: 1}
-  m_AnchoredPosition: {x: 0, y: -0.00510156}
+  m_AnchoredPosition: {x: 0, y: -0.0050872476}
   m_SizeDelta: {x: 0, y: 0}
   m_Pivot: {x: 0, y: 1}
 --- !u!114 &1180406930876628118

+ 1 - 1
Assets/Resources/Template/Prefab/yangshi3.prefab

@@ -241,9 +241,9 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   yangshiList:
+  - {fileID: 6302481236475042556}
   - {fileID: 857142687480037279}
   - {fileID: 5238914858094985647}
-  - {fileID: 6302481236475042556}
   yangshiText: {fileID: 980858289430729871}
 --- !u!1 &3597496361464080054
 GameObject:

+ 1 - 1
Assets/Resources/Template/Prefab/yangshi4.prefab

@@ -241,9 +241,9 @@ MonoBehaviour:
   m_Name: 
   m_EditorClassIdentifier: 
   yangshiList:
+  - {fileID: 8242148834686610148}
   - {fileID: 1185443743570620915}
   - {fileID: 7883372013195634244}
-  - {fileID: 8242148834686610148}
   yangshiText: {fileID: 1314321694839047835}
 --- !u!1 &112542047808276765
 GameObject:

+ 9 - 0
Assets/Scripts/BaseManager/DataManager.cs

@@ -194,8 +194,17 @@ public class SendSaveAnchor
     public ObjectTransform objectTransform { get; set; }
 
 }
+
+public class sspos
+{
+    public float x;
+    public float y;
+    public float z;
+}
+
 public class SendSaveDataNew
 {
+    public List<sspos> position;
     /// <summary>
     /// 景点ID
     /// </summary>

+ 1 - 1
Assets/Scripts/Blue/Patch/Video/Patch_VideoController.cs

@@ -19,7 +19,7 @@ public class Patch_VideoController : AbstractController
         {
             GetComponent<BoundingBox>().enabled = false;
         }
-
+        if(GameObject.Find("SetBtn/2.1/Canvas/Parent/EditorBtn/Toggle"))
         toggle = GameObject.Find("SetBtn/2.1/Canvas/Parent/EditorBtn/Toggle").GetComponent<Toggle>();
     }
 

+ 4 - 6
Assets/Scripts/Blue/Service/IMinMapService.cs

@@ -18,16 +18,14 @@ public interface IMinMapService : IService
 
 public class MinMapService : IMinMapService
 {
-    private string userInfoGetUrl;
-    private string userInfoSetUrl;
     private string message;
 
     public BindableProperty<int> setMinMap { get; set; } = new BindableProperty<int>(2);
 
     public void OnInit()
     {
-        userInfoGetUrl = "https://api-fat3.ghz-tech.com/mr-navigator/v1/user/getUserInfo";
-        userInfoSetUrl = "https://api-fat3.ghz-tech.com/mr-navigator/v1/user/settings";
+     //   userInfoGetUrl = "https://api-fat3.ghz-tech.com/mr-navigator/v1/user/getUserInfo";
+    //    userInfoSetUrl = "https://api-fat3.ghz-tech.com/mr-navigator/v1/user/settings";
     }
     public void Get()
     {
@@ -41,7 +39,7 @@ public class MinMapService : IMinMapService
 
     private IEnumerator GetRequest()
     {
-        using (UnityWebRequest webRequest = new UnityWebRequest(userInfoGetUrl))
+        using (UnityWebRequest webRequest = new UnityWebRequest(HttpAction.Instance.baseurl+ "/user/getUserInfo"))
         {
             webRequest.downloadHandler = new DownloadHandlerBuffer();
             webRequest.SetRequestHeader("Content-Type", "application/json;charset=utf-8");
@@ -79,7 +77,7 @@ public class MinMapService : IMinMapService
 
     private IEnumerator SetRequest(int isOpen)
     {
-        using (UnityWebRequest webRequest = new UnityWebRequest(userInfoSetUrl, "POST"))
+        using (UnityWebRequest webRequest = new UnityWebRequest(HttpAction.Instance.baseurl + "/user/settings", "POST"))
         {
             GetUserInfo getUserInfo = new GetUserInfo();
             getUserInfo.minMap = isOpen;

+ 4 - 2
Assets/Scripts/LayoutGroup/SRTitleLayout.cs

@@ -162,7 +162,8 @@ public class SRTitleLayout : MonoBehaviour
         List<BaseTemPlate> noText = new List<BaseTemPlate>();
         ModelItem textmat = null;
         List<ObjectValue> objectValues = new List<ObjectValue>();
-
+        Debug.Log("HJj................" + materialObls.materialList.Count);
+        ysm.yangshiText.gameObject.SetActive(false);
         for (int i = 0; i < materialObls.materialList.Count; i++)
         {
             var mat = materialObls.materialList[i];
@@ -170,6 +171,7 @@ public class SRTitleLayout : MonoBehaviour
             switch (mat.type)
             {
                 case (int)MaterialType.None:
+                    ysm.yangshiList[i].Close();
                     break;
                 case (int)MaterialType.Image:
                     go = ysm.yangshiList[i].showimg();
@@ -192,9 +194,9 @@ public class SRTitleLayout : MonoBehaviour
                     go.SetActive(true);
                   //  textitem.SetData(mat, materialObls.updateTime);
                     text = textitem;
-                    go.SetActive(false);
                     break;
                 default:
+                    ysm.yangshiList[i].Close();
                     break;
             }
 

+ 3 - 3
Assets/Scripts/Net/HttpTool.cs

@@ -135,9 +135,9 @@ public class HttpTool : MonoSingleton<HttpTool>
             if (webRequest.result == UnityWebRequest.Result.ProtocolError || webRequest.result == UnityWebRequest.Result.ConnectionError)//
             {
                 Debug.LogError(url + "\n" + webRequest.error + "\n" + webRequest.downloadHandler.text);
-                string error = webRequest.downloadHandler.text;
-                JObject jObject = JObject.Parse(error);
-                CallBack(jObject["message"].ToString());
+                string error = webRequest.downloadHandler.error;
+                //JObject jObject = JObject.Parse(error);
+                CallBack(error);
             }
             else
             {

+ 3 - 1
Assets/Scripts/SettingPanel.cs

@@ -85,7 +85,9 @@ public class SettingPanel : AbstractController
     private void OnClickSaveData()
     {
         this.SendCommand(new MinMapGetSetCommand(m_MinMap.gameObject.activeSelf ? 1 : 0));
-        DataManager.Instance.SaveSpoits();
+     //  DataManager.Instance.SaveSpoits();
+
+         GameManager.Instance.StartCoroutine(UIEditorPanel.Instance.SetSpoitInfo());
         DataManager.Instance.IsSavedData = true;
     }
 }

+ 3 - 18
Assets/Scripts/UI/EdirPanel/UIEditorPanel.cs

@@ -46,8 +46,10 @@ public class UIEditorPanel : AbstractController, EventObserver
     /// </summary>
     private SpoitValue listSpoits;
 
+    public static UIEditorPanel Instance;
     private void Awake()
     {
+        Instance = this;
         InitEvent();
         MaterialObj = null;
         listAlter = new List<objectData>();
@@ -358,24 +360,7 @@ public class UIEditorPanel : AbstractController, EventObserver
                             InstantiateSystem.Instance.BlueObject.SuccessText);
                     CommandSystem.Instance.Send(Command);
 
-                    PosRotScale.PosRotScalePatchList.Clear();
-                    for (int i = 0; i < GameManager.Instance.ObjsParent.childCount; i++)
-                    {
-                        if (i != 0)
-                        {
-                            for (int j = 0; j < GameManager.Instance.ObjsParent.GetChild(i).childCount; j++)
-                            {
-                                for (int k = 0; k < GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).childCount; k++)
-                                {
-                                    PosRotScalePatch PosRotScalePatch = new PosRotScalePatch();
-                                    PosRotScalePatch.PosPatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition;
-                                    PosRotScalePatch.RotPatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localEulerAngles;
-                                    PosRotScalePatch.ScalePatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localScale;
-                                    PosRotScale.PosRotScalePatchList.Add(PosRotScalePatch);
-                                }
-                            }
-                        }
-                    }
+                    GameManager.Instance.saveOldData();
                     return;
                 }
                 else

+ 68 - 27
Assets/Scripts/UI/GameManager.cs

@@ -217,9 +217,10 @@ public class GameManager : MonoSingleton<GameManager>
     public Toggle EditorToggle;
     private void Awake()
     {
-        
-       // Debug.unityLogger.logEnabled = false;
+
+        // Debug.unityLogger.logEnabled = false;
     }
+    public Dictionary<string, Dictionary<string, Dictionary<string, PosRotScalePatch>>> allOldobjs = new Dictionary<string, Dictionary<string, Dictionary<string, PosRotScalePatch>>>();
 
     public Dictionary<string, Dictionary<string, Dictionary<string, GameObject>>> allobjs = new Dictionary<string, Dictionary<string, Dictionary<string, GameObject>>>();
 
@@ -375,6 +376,44 @@ public class GameManager : MonoSingleton<GameManager>
         if(!UserInfo.Instance.is20)
         MQTTClient.Instance.StartSendCameraPos();
     }
+
+    public void saveOldData()
+    {
+        allOldobjs = new Dictionary<string, Dictionary<string, Dictionary<string, PosRotScalePatch>>>();
+        foreach (var i in allobjs.Keys)
+        {
+            allOldobjs.Add(i, new Dictionary<string, Dictionary<string, PosRotScalePatch>>());
+            foreach (var j in allobjs[i].Keys)
+            {
+                allOldobjs[i].Add(j, new Dictionary<string, PosRotScalePatch>());
+                foreach (var k in allobjs[i][j].Keys)
+                {
+                    PosRotScalePatch p = new PosRotScalePatch();
+                    p.PosPatch = allobjs[i][j][k].transform.localPosition;
+                    p.RotPatch = allobjs[i][j][k].transform.localEulerAngles;
+                    p.ScalePatch = allobjs[i][j][k].transform.localScale;
+                    allOldobjs[i][j].Add(k, p);
+                }
+            }
+        }
+    }
+
+    public void refOldData()
+    {
+        foreach (var i in allobjs.Keys)
+        {
+            foreach (var j in allobjs[i].Keys)
+            {
+                foreach (var k in allobjs[i][j].Keys)
+                {
+                    allobjs[i][j][k].transform.localPosition = allOldobjs[i][j][k].PosPatch;
+                    allobjs[i][j][k].transform.localEulerAngles = allOldobjs[i][j][k].RotPatch;
+                    allobjs[i][j][k].transform.localScale = allOldobjs[i][j][k].ScalePatch;
+                }
+            }
+        }
+    }
+
     IEnumerator StartScene( bool isPlayMRZhanTing)
     {
         yield return new WaitForSeconds(0.5f);
@@ -541,8 +580,9 @@ public class GameManager : MonoSingleton<GameManager>
         m_IsStartEditorJD = ison;
         if (!ison)
         {
-            save20All();
+          //  save20All();
         }
+        SaveButton.SetActive(ison);
 
     }
     public static bool m_IsStartEditorzu;
@@ -551,9 +591,10 @@ public class GameManager : MonoSingleton<GameManager>
         m_IsStartEditorzu = ison;
         if (!ison)
         {
-            save20All();
+         //   save20All();
         }
 
+        SaveButton.SetActive(ison);
     }
     //2.0编辑模式 保存
     public void open20Editor(bool ison)
@@ -562,10 +603,13 @@ public class GameManager : MonoSingleton<GameManager>
         m_IsStartEditor = ison;
         if(!ison)
         {
-            save20All();
+          //  save20All();
         }
+            SaveButton.SetActive(ison);
 
     }
+    public GameObject SaveButton;
+
     public void save20All()
     {
 
@@ -576,8 +620,7 @@ public class GameManager : MonoSingleton<GameManager>
             {
                 SpotsItem sp = UserSceneManager.Instance.SceneList[UserSceneManager.Instance.nowId].SpotsList[i.ToString()];
                 SendSaveDataNew data = new SendSaveDataNew();
-
-
+                data.position = sp.position;
                 data.id = int.Parse(sp.id);
                 data.name = sp.name;
                 data.projectId = int.Parse(UserSceneManager.Instance.SceneList[UserSceneManager.Instance.nowId].id);
@@ -644,7 +687,22 @@ public class GameManager : MonoSingleton<GameManager>
             Debug.Log("更新景点数据:  " + sendData);
             HttpTool.Instance.PostTest(HttpAction.viewpoint_update, sendData, (string str) => {
 
+                JsonData jd = JsonMapper.ToObject(str);
+                if(jd["message"].ToString()=="success")
+                {
+
+                    InstantiateCommand Command = new InstantiateCommand(
+                        InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                        InstantiateSystem.Instance.BlueObject.SuccessText);
+                    CommandSystem.Instance.Send(Command);
+                }else
+                {
 
+                    InstantiateCommand Command = new InstantiateCommand(
+                        InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                        InstantiateSystem.Instance.BlueObject.NetErrorText);
+                    CommandSystem.Instance.Send(Command);
+                }
                 Debug.Log("保存回调===》" + str);
             });
 
@@ -687,6 +745,8 @@ public class GameManager : MonoSingleton<GameManager>
 
     public void GetPosRotScale()
     {
+        saveOldData();
+        return;
         PosRotScale.PosRotScalePatchList.Clear();
         for (int i = 0; i < GameManager.Instance.ObjsParent.childCount; i++)
         {
@@ -1658,26 +1718,7 @@ public class GameManager : MonoSingleton<GameManager>
 
     public void SetPosRotScale()
     {
-        if (PosRotScale.PosRotScalePatchList.Count != 0)
-        {
-            int temp = 0;
-            for (int i = 0; i < GameManager.Instance.ObjsParent.childCount; i++)
-            {
-                if (i != 0)
-                {
-                    for (int j = 0; j < GameManager.Instance.ObjsParent.GetChild(i).childCount; j++)
-                    {
-                        for (int k = 0; k < GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).childCount; k++)
-                        {
-                            GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition = PosRotScale.PosRotScalePatchList[temp].PosPatch;
-                            GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localEulerAngles = PosRotScale.PosRotScalePatchList[temp].RotPatch;
-                            GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localScale = PosRotScale.PosRotScalePatchList[temp].ScalePatch;
-                            temp++;
-                        }
-                    }
-                }
-            }
-        }
+        refOldData();
     }
     /// <summary>
     /// 当人物退出触发器范围