public override void Parse() { base.Parse(); if (!KeyValues.ContainsKey("sesskey")) { throw new GSException("sesskey is missing."); } int sessKey; if (!int.TryParse(KeyValues["sesskey"], out sessKey)) { throw new GSException("sesskey is not a valid int."); } SessionKey = sessKey; if (!KeyValues.ContainsKey("connid")) { throw new GSException("connid is missing."); } int connectionID; if (!int.TryParse(KeyValues["connid"], out connectionID)) { throw new GSException("connid format is incorrect."); } ConnectionID = connectionID; if (KeyValues.ContainsKey("challenge")) { IsClientLocalStorageAvailable = true; Challenge = KeyValues["challenge"]; } }
public override void Parse() { base.Parse(); if (KeyValues.ContainsKey("pid") && KeyValues.ContainsKey("resp")) { //we parse profileid here int profileID; if (!int.TryParse(KeyValues["pid"], out profileID)) { throw new GSException("pid format is incorrect."); } ProfileId = profileID; RequestType = AuthMethod.ProfileIDAuth; } else if (KeyValues.ContainsKey("authtoken") && KeyValues.ContainsKey("response")) { AuthToken = KeyValues["authtoken"]; Response = KeyValues["response"]; RequestType = AuthMethod.PartnerIDAuth; } else if (KeyValues.ContainsKey("keyhash") && KeyValues.ContainsKey("nick")) { RequestType = AuthMethod.CDkeyAuth; KeyHash = KeyValues["keyhash"]; Nick = KeyValues["nick"]; } else { throw new GSException("Unknown authp request method."); } }
/// <summary> /// 获取场景进入条件码 /// </summary> /// <param name="scene"></param> /// <returns></returns> public int GetSceneEntranceCondition(string scene) { scene = scene.Split('&')[0]; //处理一些特殊格式的 var gamemap = ConfigTable.Get <GameMap>(scene); if (gamemap != null) { //大地图 if (gamemap.Tags == "WORLDMAP") { return(0); } //已经有地图打开的纪录 string key = "SceneEntraceCondition_" + gamemap.Jyx2MapId; if (KeyValues.ContainsKey(key)) { return(int.Parse(GetKeyValues(key))); } //否则取配置表初始值 var map = ConfigTable.Get <Jyx2Map>(gamemap.Jyx2MapId); if (map != null) { return(map.EnterCondition); } } return(-1); }
public override void Parse() { base.Parse(); if (!KeyValues.ContainsKey("gamename")) { throw new GSException("gamename is missing."); } if (!KeyValues.ContainsKey("response")) { throw new GSException("response is missing."); } if (KeyValues.ContainsKey("port")) { int port; if (!int.TryParse(KeyValues["port"], out port)) { throw new GSException("port format is incorrect."); } Port = port; } GameName = KeyValues["gamename"]; }
/// <summary> /// Asserts the validation. /// </summary> /// <param name="keys">The keys.</param> public void AssertValidation(params string[] keys) { var sb = new StringBuilder(); foreach (var item in keys) { if (!KeyValues.ContainsKey(item)) { sb.AppendFormat("{0}, ", item); } else { if (string.IsNullOrEmpty(KeyValues[item])) { sb.AppendFormat("No value for '{0}', which is required. ", item); } } var result = sb.ToString(); if (result.Length > 0) { throw new InvalidDataException("Can't submit to Gateway - missing these input fields: " + result.Trim().TrimEnd(',')); } } }
public override void Parse() { base.Parse(); if (KeyValues.ContainsKey("pid")) { int profileID; if (!int.TryParse(KeyValues["pid"], out profileID)) { throw new GSException("pid format is incorrect."); } ProfileId = profileID; } if (KeyValues.ContainsKey("ptype")) { PersistStorageType storageType; if (!Enum.TryParse(KeyValues["ptype"], out storageType)) { throw new GSException("ptype format is incorrect."); } StorageType = storageType; } if (KeyValues.ContainsKey("dindex")) { int dataIndex; if (!int.TryParse(KeyValues["dindex"], out dataIndex)) { throw new GSException("dindex format is incorrect."); } DataIndex = dataIndex; } if (!KeyValues.ContainsKey("keys")) { throw new GSException("keys is missing."); } string keys = KeyValues["keys"]; if (keys == "") { GetAllDataFlag = true; } else { string[] keyArray = keys.Split('\x1'); foreach (var key in keyArray) { Keys.Add(key); } GetAllDataFlag = false; } }
public string GetModifiedEvent(int scene, int eventId) { string key = "evt_" + scene + "_" + eventId; if (KeyValues.ContainsKey(key)) { return(KeyValues[key]); } return(null); }
//JYX2场景相关记录 public Dictionary <string, string> GetSceneInfo(string scene) { string key = "scene_" + scene; if (KeyValues.ContainsKey(key)) { string str = KeyValues[key]; return(str.ToStrDict()); } return(null); }
public override void Parse() { base.Parse(); if (KeyValues.ContainsKey("dl")) { IsClientLocalStorageAvailable = true; } if (!KeyValues.ContainsKey("done")) { throw new GSException("done is missing."); } if (KeyValues["done"] == "1") { IsDone = true; } else if (KeyValues["done"] == "0") { IsDone = false; } else { throw new GSException("done format is incorrect."); } int sessKey; if (!int.TryParse(KeyValues["sesskey"], out sessKey)) { throw new GSException("sesskey is not a valid int."); } SessionKey = sessKey; if (!KeyValues.ContainsKey("gamedata")) { throw new GSException("gamedata is missing."); } GameData = KeyValues["gamedata"]; if (KeyValues.ContainsKey("connid")) { int connID; if (!int.TryParse(KeyValues["connid"], out connID)) { throw new GSException("connid is not a valid int."); } ConnectionID = connID; } }
public override void Parse() { base.Parse(); if (!KeyValues.ContainsKey("nick") || !KeyValues.ContainsKey("keyhash")) { throw new GSException("nick or keyhash is missing."); } if (KeyValues.ContainsKey("nick")) { Nick = KeyValues["nick"]; } if (KeyValues.ContainsKey("keyhash")) { KeyHash = KeyValues["keyhash"]; } }
async Task LoadUserOrderWithStatus(string value) { LoadingManager.OnLoading(); Status _statusvalue = (Status)Enum.Parse(typeof(Status), value); var orderData = await orderDataStore.GetOrdersOfUserWithSpecificStatus(App.LogUser.UserId, _statusvalue, App.TokenDto.Token); if (!KeyValues.ContainsKey("orderAdded")) { KeyValues.Add("orderAdded", orderData); } switch (_statusvalue) { case Status.Completed: { List <Order> tempData = new List <Order>(); var data = await orderDataStore.GetOrdersOfUserWithSpecificStatusDifferent(KeyValues["orderAdded"], _statusvalue, App.LogUser.UserId); if (data != null) { foreach (var item in KeyValues["orderAdded"]) { if (!tempData.Any(o => o.OrderId == item.OrderId)) { tempData.Add(item); } } foreach (var item in data) { if (!tempData.Any(s => s.StoreId == item.StoreId)) { tempData.Add(item); } } KeyValues.Clear(); KeyValues.Add("orderAdded", tempData); foreach (var item in KeyValues["orderAdded"]) { if (!UserOrders.Any(s => s.OrderId == item.OrderId)) { //Task.Run(async() => //{ // item.StoreOrder = await StoreDataStore.GetItemAsync(item.StoreId.ToString()); //}).Wait(); item.StoreOrder = await StoreDataStore.GetItemAsync(item.StoreId.ToString()); var presenter = new OrderPresenter(item); UserOrders.Add(presenter); } } } break; } case Status.NotSubmited: { List <Order> tempData = new List <Order>(); var data = await orderDataStore.GetOrdersOfUserWithSpecificStatusDifferent(KeyValues["orderAdded"], _statusvalue, App.LogUser.UserId); if (data != null) { foreach (var item in KeyValues["orderAdded"]) { if (!tempData.Any(o => o.OrderId == item.OrderId)) { tempData.Add(item); } } foreach (var item in data) { if (!tempData.Any(s => s.StoreId == item.StoreId)) { tempData.Add(item); } } KeyValues.Clear(); KeyValues.Add("orderAdded", tempData); foreach (var item in KeyValues["orderAdded"]) { if (!UserOrders.Any(s => s.OrderId == item.OrderId)) { item.StoreOrder = await StoreDataStore.GetItemAsync(item.StoreId.ToString()); var presenter = new OrderPresenter(item); UserOrders.Add(presenter); } } } break; //UserOrders.Clear(); //foreach (var item in orderData) //{ // item.StoreOrder = await StoreDataStore.GetItemAsync(item.StoreId.ToString()); // var presenter = new OrderPresenter(item); // UserOrders.Add(presenter); //} } case Status.Submited: { List <Order> tempData = new List <Order>(); var data = await orderDataStore.GetOrdersOfUserWithSpecificStatusDifferent(KeyValues["orderAdded"], _statusvalue, App.LogUser.UserId); if (data != null) { foreach (var item in KeyValues["orderAdded"]) { if (!tempData.Any(o => o.OrderId == item.OrderId)) { tempData.Add(item); } } foreach (var item in data) { if (!tempData.Any(s => s.StoreId == item.StoreId)) { tempData.Add(item); } } KeyValues.Clear(); KeyValues.Add("orderAdded", tempData); foreach (var item in KeyValues["orderAdded"]) { if (!UserOrders.Any(s => s.OrderId == item.OrderId)) { item.StoreOrder = await StoreDataStore.GetItemAsync(item.StoreId.ToString()); var presenter = new OrderPresenter(item); UserOrders.Add(presenter); } } } //UserOrders.Clear(); //foreach (var item in orderData) //{ // item.StoreOrder = await StoreDataStore.GetItemAsync(item.StoreId.ToString()); // var presenter = new OrderPresenter(item); // UserOrders.Add(presenter); //} break; } default: break; } LoadingManager.OffLoading(); }
public override void Parse() { base.Parse(); if (!KeyValues.ContainsKey("pid")) { throw new GSException("length is missing."); } if (!KeyValues.ContainsKey("ptype")) { throw new GSException("length is missing."); } if (!KeyValues.ContainsKey("dindex")) { throw new GSException("length is missing."); } if (!KeyValues.ContainsKey("length")) { throw new GSException("length is missing."); } int profileID; if (!int.TryParse(KeyValues["pid"], out profileID)) { throw new GSException("pid format is incorrect."); } ProfileId = profileID; int storageType; if (!int.TryParse(KeyValues["ptype"], out storageType)) { throw new GSException("ptype is missing."); } if (!Enum.IsDefined(typeof(PersistStorageType), storageType)) { throw new GSException("storage type is incorrect."); } StorageType = (PersistStorageType)storageType; int dindex; if (!int.TryParse(KeyValues["dindex"], out dindex)) { throw new GSException("dindex format is incorrect."); } DataIndex = dindex; int length; if (!int.TryParse(KeyValues["length"], out length)) { throw new GSException("length format is incorrect."); } Length = length; //we extract the key value data foreach (var d in KeyValues.Skip(5)) { if (d.Key == "lid") { break; } KeyValueString += @"\" + d.Key + @"\" + d.Value; } }