Пример #1
0
 private static void GetData(string path, SceneDataJson serverJson)
 {
     string[] dirs = Directory.GetDirectories(path);
     for (int i = 0; i < dirs.Length; i++)
     {
         GetData(dirs[i], serverJson);
     }
     string[] files = Directory.GetFiles(path);
     for (int i = 0; i < files.Length; i++)
     {
         if (!files[i].Contains(".json") || files[i].Contains("meta"))
         {
             continue;
         }
         FileInfo     fileinfo = new FileInfo(files[i]);
         StreamReader reader   = new StreamReader(files[i]);
         string       jsonStr  = reader.ReadToEnd();
         reader.Close();
         SceneItemJson groupData = fastJSON.JSON.ToObject <SceneItemJson>(jsonStr);
         string        fileName  = fileinfo.Name.Replace(".json", "");
         long          groupID   = -1;
         long.TryParse(fileName, out groupID);
         if (groupID > 0)
         {
             SceneItemServerJson itemServerJson = new SceneItemServerJson(groupData);
             itemServerJson.groupId = groupID;
             serverJson.sceneDatas.Add(itemServerJson);
         }
     }
 }
Пример #2
0
    /// <summary>
    /// 保存位置数据
    /// </summary>
    void SaveJsonData()
    {
        if (!Directory.Exists(jsonPath))
        {
            Directory.CreateDirectory(jsonPath);
        }
        ///获取服务端数据
        //SceneItemServerJson serverJson = fastJSON.JSON.ToObject<SceneItemServerJson>();
        SceneDataJson serverJson = getServerData();

        if (serverJson == null)
        {
            serverJson            = new SceneDataJson(); //服务端数据
            serverJson.sceneDatas = new List <SceneItemServerJson>();
        }
        //SceneDataJson sceneDataJson = new SceneDataJson(); //服务端数据
        //sceneDataJson.sceneDatas = new List<SceneItemServerJson>();
        for (int i = 0; i < m_allItemInfo.Count; i++)
        {
            SceneItemInfo scenePageData = m_allItemInfo[i];//AssetDatabase.LoadAssetAtPath<SceneItemInfo>(m_allAssetPath[i]);
            if (scenePageData != null)
            {
                SceneItemJson itemJson = new SceneItemJson(scenePageData);
                //sceneDataJson.sceneDatas.Add(itemJson);
                string jsonStr = fastJSON.JSON.ToJSON(itemJson);
                SceneLightHelper.CreateJson(jsonPath + scenePageData.jsonName, jsonStr);

                int groupID = int.Parse(scenePageData.jsonName.Split('.')[0]);
                SceneItemServerJson itemServerJson = new SceneItemServerJson(scenePageData);
                itemServerJson.groupId = groupID;
                //sceneDataJson.sceneDatas.Add(itemServerJson);
                bool isexist = false;
                for (int j = 0; j < serverJson.sceneDatas.Count; j++)
                {
                    SceneItemServerJson serverJson00 = serverJson.sceneDatas[j];
                    if (serverJson00.groupId == groupID)
                    {
                        serverJson.sceneDatas[j] = itemServerJson;
                        isexist = true;
                        break;
                    }
                }
                if (!isexist)
                {
                    serverJson.sceneDatas.Add(itemServerJson);
                }
            }
        }

        //服务端数据
        string serverJsonStr = fastJSON.JSON.ToJSON(serverJson);

        SceneLightHelper.CreateJson(Application.streamingAssetsPath + "/SceneData/scenedata.json", serverJsonStr);
    }
Пример #3
0
    public static void CreateServerSceneData()
    {
        string        path       = Application.dataPath + "/Res/SceneConfig/";
        SceneDataJson serverJson = new SceneDataJson(); //服务端数据

        serverJson.sceneDatas = new List <SceneItemServerJson>();
        GetData(path, serverJson);
        //服务端数据
        string serverJsonStr = fastJSON.JSON.ToJSON(serverJson);

        SceneLightHelper.CreateServerJson("../config/scenedata.json", serverJsonStr);
    }
        public void LoadSceneData()
        {
            if (sceneData != null)
            {
                return;
            }
            StreamReader reader  = new StreamReader(ResourceData.sceneDataConfigPath);
            string       content = reader.ReadToEnd();

            reader.Close();
            sceneData = fastJSON.JSON.ToObject <SceneDataJson>(content);
        }
Пример #5
0
    SceneDataJson getServerData()
    {
        string serverPath = Application.streamingAssetsPath + "/SceneData/scenedata.json";

        if (!File.Exists(serverPath))
        {
            return(new SceneDataJson());
        }
        StreamReader reader  = new StreamReader(serverPath);
        string       datastr = reader.ReadToEnd();

        reader.Close();
        SceneDataJson serverJson = fastJSON.JSON.ToObject <SceneDataJson>(datastr);

        return(serverJson);
    }