Esempio n. 1
0
 public void Login(string code, NetworkTool.RequestCallback callback)
 {
     StartCoroutine(NetworkTool.GetRequest($"/login_code/{code}", (result =>
     {
         user = JsonConvert.DeserializeObject <GameUserInfoDTO>(result);
         loginSucceedEvent.Send();
         // Debug.Log(user);
         isInitMapInfos = false; // 让地图信息也初始化
         callback(result);
     })));
 }
Esempio n. 2
0
        /// <summary>
        /// 通过地图 Id 取得地图数据
        /// </summary>
        /// <param name="mapId"></param>
        /// <param name="callback"></param>
        private void GetMap(string mapId, NetworkTool.RequestCallback callback)
        {
            // 先检查缓存里面有没有
            if (mapCache.TryGetValue(mapId, out var value))
            {
                callback(value);
                return;
            }

            StartCoroutine(NetworkTool.GetRequest($"/get_map/{mapId}", result =>
            {
                // 先添加到缓存里面
                mapCache.Add(mapId, result);
                callback(result);
            }));
        }
Esempio n. 3
0
        /// <summary>
        /// 用于初始化地图信息
        /// </summary>
        /// <param name="callback"></param>
        public void InitMapInfoList(NetworkTool.RequestCallback callback)
        {
            if (isInitMapInfos)
            {
                callback("");
                return;
            }

            StartCoroutine(NetworkTool.GetRequest("/get_map_infos", result =>
            {
                // 先清空
                mapInfos.Clear();
                var array = JArray.Parse(result);
                foreach (var item in array)
                {
                    mapInfos.Add(JsonConvert.DeserializeObject <GameMapInfoDTO>(item.ToString()));
                }

                callback(result);
                isInitMapInfos = true;
            }));
        }