void loadData() { BattleStartRequest battleStartRequest = new BattleStartRequest(); battleStartRequest.BattleId = GameData.g_battleId; ByteBuffer buffer = new ByteBuffer(); buffer.WriteShort(132); buffer.WriteBytes(battleStartRequest.ToByteArray()); networkManager.SendMessage(buffer); SkillRequest skillRequest = new SkillRequest(); ByteBuffer skillBuffer = new ByteBuffer(); skillBuffer.WriteShort(110); skillBuffer.WriteBytes(skillRequest.ToByteArray()); networkManager.SendMessage(skillBuffer); EquipRequest itemRequest = new EquipRequest(); ByteBuffer itemBuffer = new ByteBuffer(); itemBuffer.WriteShort(112); itemBuffer.WriteBytes(itemRequest.ToByteArray()); networkManager.SendMessage(itemBuffer); }
//------------------------------------------------------------------------- async void c2sEquipRequest(EquipRequest equip_request) { IRpcSession s = EntityMgr.LastRpcSession; ClientInfo client_info = CoApp.getClientInfo(s); if (client_info == null) { return; } var task = await Task.Factory.StartNew <Task <MethodData> >(async() => { MethodData method_data = new MethodData(); method_data.method_id = MethodType.c2sEquipRequest; method_data.param1 = EbTool.protobufSerialize <EquipRequest>(equip_request); MethodData r = null; try { var grain_playerproxy = GrainClient.GrainFactory.GetGrain <ICellPlayer>(new Guid(client_info.et_player_guid)); r = await grain_playerproxy.c2sRequest(method_data); } catch (Exception ex) { EbLog.Error(ex.ToString()); } return(r); }); if (task.Status == TaskStatus.Faulted || task.Result == null) { if (task.Exception != null) { EbLog.Error(task.Exception.ToString()); } return; } MethodData result = task.Result; if (result.method_id == MethodType.None) { return; } lock (CoApp.RpcLock) { var equip_response = EbTool.protobufDeserialize <EquipResponse>(result.param1); CoApp.rpcBySession(s, (ushort)MethodType.s2cEquipResponse, equip_response); } }
public void equipRequest(int c2s_gridIndex, Action <PomeloException, EquipResponse> cb, object option = null) { var request = new EquipRequest(); request.c2s_gridIndex = c2s_gridIndex; _socket.request <EquipResponse>(request, (object msg, out int s2c_code, out string s2c_msg) => { var rsp = msg as EquipResponse; s2c_code = rsp.s2c_code; s2c_msg = rsp.s2c_msg; return(s2c_code == 200); }, cb, option); }