public override void OnSet(object data) { base.OnSet(data); Main.mainData = new List <MainData> (); version = Register.Get(VERSION); WWWClient w = new WWWClient(this, url); w.OnDone = (WWW www) => { string[] line = www.text.Split("\n" [0]); if (line [0] != version) { Register.DeleteAll(); for (int i = 0; i < line.Length; i++) { if (i == 0) { Register.Set(VERSION, line [i]); continue; } Register.Set(i.ToString(), line [i]); } Register.Set(COUNT, line.Length.ToString()); for (int i = 1; i < line.Length; i++) { SetData(line [i]); } } else { SetData(); } NSSceneManager.Instance.Screen(Config.SCENE_MAIN); }; w.OnFail = (WWW www) => { if (NetworkError()) { SetData(); } NSSceneManager.Instance.Screen(Config.SCENE_MAIN); }; w.OnDisposed = () => { if (NetworkError()) { SetData(); } NSSceneManager.Instance.Screen(Config.SCENE_MAIN); }; w.Request(); }
//------------------------------------------------------------- // GETリクエスト // @param // @リクエストURL // @callback // @brif POSTの時に使用したデータを消してやらないとPOSTだと判断されてしまう //------------------------------------------------------------- public void Get(GET url, UnityAction <Dictionary <string, object> > callback) { mClient = new WWWClient(this); mClient.URL = string.Format(getUrl [url], GlobalDataPool.Instance.playId); mClient.Timeout = timeout; mClient.OnDone = (WWW www) => { callback(JsonParser.Instance.Parse(www)); }; mClient.Request(); }
//------------------------------------------------------------- // POSTリクエスト // @param // @リクエストURL // @callback //------------------------------------------------------------- public void Post(POST url, Dictionary <string, string> post, UnityAction <Dictionary <string, object> > callback) { mClient = new WWWClient(this); mClient.URL = postUrl[url]; foreach (KeyValuePair <string, string> post_arg in post) { mClient.AddData(post_arg.Key, post_arg.Value); } mClient.Timeout = timeout; mClient.OnDone = (WWW www) => { callback(JsonParser.Instance.Parse(www)); }; mClient.Request(); }