public IEnumerator Load(string levelid) { var postdata = new Dictionary <String, String>(); postdata.Add("levelid", levelid); string url; WWWForm post; Playtomic_Request.Prepare(SECTION, LOAD, postdata, out url, out post); WWW www = new WWW(url, post); yield return(www); var response = Playtomic_Request.Process(www); if (response.Success) { var item = response.JSON; var level = new Playtomic_PlayerLevel(); level.LevelId = (string)item["LevelId"]; level.PlayerSource = (string)item["PlayerSource"]; level.PlayerName = WWW.UnEscapeURL((string)item["PlayerName"]); level.Name = WWW.UnEscapeURL((string)item["Name"]); level.Votes = (int)(double)item["Votes"]; level.Plays = (int)(double)item["Plays"]; level.Rating = (double)item["Rating"]; level.Score = (int)(double)item["Score"]; level.SDate = DateTime.Parse((string)item["SDate"]); level.RDate = WWW.UnEscapeURL((string)item["RDate"]); if (item.ContainsKey("Data")) { level.Data = (string)item["Data"]; } if (item.ContainsKey("CustomData")) { Hashtable customdata = (Hashtable)item["CustomData"]; foreach (var key in customdata.Keys) { level.CustomData.Add((string)key, WWW.UnEscapeURL((string)customdata[key])); } } response.Levels = new List <Playtomic_PlayerLevel>(); response.Levels.Add(level); } SetResponse(response, "Load"); }
public IEnumerator Save(Playtomic_PlayerLevel level) { var postdata = new Dictionary <String, String>(); postdata.Add("data", level.Data); postdata.Add("playerid", level.PlayerId); postdata.Add("playername", level.PlayerName); postdata.Add("playersource", Playtomic.SourceUrl); postdata.Add("name", level.Name); postdata.Add("nothumb", "y"); postdata.Add("customfields", level.CustomData.Count.ToString()); var n = 0; foreach (var key in level.CustomData.Keys) { postdata.Add("ckey" + n, key); postdata.Add("cdata" + n, level.CustomData[key]); n++; } string url; WWWForm post; Playtomic_Request.Prepare(SECTION, SAVE, postdata, out url, out post); WWW www = new WWW(url, post); yield return(www); var response = Playtomic_Request.Process(www); if (response.Success) { var data = (Hashtable)response.JSON; foreach (string key in data.Keys) { var name = WWW.UnEscapeURL(key); var value = WWW.UnEscapeURL((string)data[key]); response.Data.Add(name, value); } } SetResponse(response, "Save"); }
IEnumerator SaveLevel() { var level = new Playtomic_PlayerLevel(); level.Name = "this is a level"; level.PlayerName = "Ben"; level.Data = "Asdfasdfasdfasdf"; yield return(StartCoroutine(Playtomic.PlayerLevels.Save(level))); var response = Playtomic.PlayerLevels.GetResponse("Save"); if (response.Success) { Debug.Log("Level saved!"); } else { Debug.Log("Level failed to save because of " + response.ErrorCode + ": " + response.ErrorDescription); } }
public IEnumerator List(string mode, int page, int perpage, bool includedata, bool includethumbs, Dictionary<string,string> customdata, DateTime datemin, DateTime datemax) { var postdata = new Dictionary<String, String>(); postdata.Add("mode", mode); postdata.Add("page", page.ToString()); postdata.Add("perpage", perpage.ToString()); postdata.Add("thumbs", includethumbs ? "y" : "n"); postdata.Add("data", includedata ? "y" : "n"); postdata.Add("datemin", datemin.ToString("MM/dd/yyyy")); postdata.Add("datemax", datemax.ToString("MM/dd/yyyy")); if(customdata != null) { var n = 0; foreach(var key in customdata.Keys) { postdata.Add("ckey" + n, key); postdata.Add("cdata" + n, customdata[key]); n++; } postdata.Add("filters", customdata.Count.ToString()); } else { postdata.Add("filters", "0"); } string url; WWWForm post; Playtomic_Request.Prepare(SECTION, LIST, postdata, out url, out post); WWW www = new WWW(url, post); yield return www; var response = Playtomic_Request.Process(www); if (response.Success) { var data = (Hashtable)response.JSON; var levels = (ArrayList)data["Levels"]; var len = levels.Count; response.NumItems = (int)(double)data["NumLevels"]; response.Levels = new List<Playtomic_PlayerLevel>(); for(var i=0; i<len; i++) { Hashtable item = (Hashtable)levels[i]; var level = new Playtomic_PlayerLevel(); level.LevelId = (string)item["LevelId"]; level.PlayerSource = (string)item["PlayerSource"]; level.PlayerName = WWW.UnEscapeURL((string)item["PlayerName"]); level.Name = WWW.UnEscapeURL((string)item["Name"]); level.Votes = (int)(double)item["Votes"]; level.Plays = (int)(double)item["Plays"]; level.Rating = (double)item["Rating"]; level.Score = (int)(double)item["Score"]; level.SDate = DateTime.Parse((string)item["SDate"]); level.RDate = WWW.UnEscapeURL((string)item["RDate"]); if(item.ContainsKey("Data")) level.Data = (string)item["Data"]; if(item.ContainsKey("CustomData")) { Hashtable cd = (Hashtable)item["CustomData"]; foreach(var key in cd) level.CustomData.Add((string)key, WWW.UnEscapeURL((string)cd[key])); } response.Levels.Add(level); } } SetResponse(response, "List"); }
public IEnumerator Save(Playtomic_PlayerLevel level) { var postdata = new Dictionary<String, String>(); postdata.Add("data", level.Data); postdata.Add("playerid", level.PlayerId); postdata.Add("playername", level.PlayerName); postdata.Add("playersource", Playtomic.SourceUrl); postdata.Add("name", level.Name); postdata.Add("nothumb", "y"); postdata.Add("customfields", level.CustomData.Count.ToString()); var n = 0; foreach(var key in level.CustomData.Keys) { postdata.Add("ckey" + n, key); postdata.Add("cdata" + n, level.CustomData[key]); n++; } string url; WWWForm post; Playtomic_Request.Prepare(SECTION, SAVE, postdata, out url, out post); WWW www = new WWW(url, post); yield return www; var response = Playtomic_Request.Process(www); if (response.Success) { var data = (Hashtable)response.JSON; foreach(string key in data.Keys) { var name = WWW.UnEscapeURL(key); var value = WWW.UnEscapeURL((string)data[key]); response.Data.Add(name, value); } } SetResponse(response, "Save"); }
public IEnumerator Load(string levelid) { var postdata = new Dictionary<String, String>(); postdata.Add("levelid", levelid); string url; WWWForm post; Playtomic_Request.Prepare(SECTION, LOAD, postdata, out url, out post); WWW www = new WWW(url, post); yield return www; var response = Playtomic_Request.Process(www); if (response.Success) { var item = response.JSON; var level = new Playtomic_PlayerLevel(); level.LevelId = (string)item["LevelId"]; level.PlayerSource = (string)item["PlayerSource"]; level.PlayerName = WWW.UnEscapeURL((string)item["PlayerName"]); level.Name = WWW.UnEscapeURL((string)item["Name"]); level.Votes = (int)(double)item["Votes"]; level.Plays = (int)(double)item["Plays"]; level.Rating = (double)item["Rating"]; level.Score = (int)(double)item["Score"]; level.SDate = DateTime.Parse((string)item["SDate"]); level.RDate = WWW.UnEscapeURL((string)item["RDate"]); if(item.ContainsKey("Data")) level.Data = (string)item["Data"]; if(item.ContainsKey("CustomData")) { Hashtable customdata = (Hashtable)item["CustomData"]; foreach(var key in customdata.Keys) level.CustomData.Add((string)key, WWW.UnEscapeURL((string)customdata[key])); } response.Levels = new List<Playtomic_PlayerLevel>(); response.Levels.Add(level); } SetResponse(response, "Load"); }
public IEnumerator List(string mode, int page, int perpage, bool includedata, bool includethumbs, DateTime datemin, DateTime datemax) { var postdata = new Dictionary <String, String>(); postdata.Add("mode", mode); postdata.Add("page", page.ToString()); postdata.Add("perpage", perpage.ToString()); postdata.Add("thumbs", includethumbs ? "y" : "n"); postdata.Add("data", includedata ? "y" : "n"); postdata.Add("datemin", datemin.ToString("MM/dd/yyyy")); postdata.Add("datemax", datemax.ToString("MM/dd/yyyy")); /*var n = 0; * * foreach(var key in level.CustomData.Keys) * { * postdata.Add("ckey" + n, key); * postdata.Add("cdata" + n, level.CustomData[key]); * n++; * }*/ postdata.Add("filters", "0"); string url; WWWForm post; Playtomic_Request.Prepare(SECTION, LIST, postdata, out url, out post); WWW www = new WWW(url, post); yield return(www); var response = Playtomic_Request.Process(www); if (response.Success) { var data = (Hashtable)response.JSON; var levels = (ArrayList)data["Levels"]; var len = levels.Count; response.NumItems = (int)(double)data["NumLevels"]; response.Levels = new List <Playtomic_PlayerLevel>(); for (var i = 0; i < len; i++) { Hashtable item = (Hashtable)levels[i]; var level = new Playtomic_PlayerLevel(); level.LevelId = (string)item["LevelId"]; level.PlayerSource = (string)item["PlayerSource"]; level.PlayerName = WWW.UnEscapeURL((string)item["PlayerName"]); level.Name = WWW.UnEscapeURL((string)item["Name"]); level.Votes = (int)(double)item["Votes"]; level.Plays = (int)(double)item["Plays"]; level.Rating = (double)item["Rating"]; level.Score = (int)(double)item["Score"]; level.SDate = DateTime.Parse((string)item["SDate"]); level.RDate = WWW.UnEscapeURL((string)item["RDate"]); if (item.ContainsKey("Data")) { level.Data = (string)item["Data"]; } if (item.ContainsKey("CustomData")) { Hashtable customdata = (Hashtable)item["CustomData"]; foreach (var key in customdata.Keys) { level.CustomData.Add((string)key, WWW.UnEscapeURL((string)customdata[key])); } } response.Levels.Add(level); } } SetResponse(response, "List"); }
private IEnumerator SaveLevel() { var level = new Playtomic_PlayerLevel(); level.Name = "this is a level"; level.PlayerName = "Ben"; level.Data = "Asdfasdfasdfasdf"; yield return StartCoroutine(Playtomic.PlayerLevels.Save(level)); var response = Playtomic.PlayerLevels.GetResponse("Save"); if(response.Success) { Debug.Log("Level saved!"); } else { Debug.Log("Level failed to save because of " + response.ErrorCode + ": " + response.ErrorDescription); } }