public int res_role_list(Bit_Buffer buffer) { int length = (int)buffer.read_uint(3); for (int i = 0; i < length; ++i) { Role_Info role_info; role_info.role_id = buffer.read_int64(); role_info.role_name = buffer.read_string(); role_info.gender = (byte)buffer.read_uint(1); role_info.career = (byte)buffer.read_uint(2); role_info.level = (byte)buffer.read_uint(8); role_info.combat = buffer.read_uint(32); role_list_.Add(role_info); } if (length > 0) { Log.debug_log("账号名:" + account_ + "角色数量:" + length.ToString()); Random random = new Random(); int index = random.Next(0, length - 1); long role_id = role_list_[index].role_id; req_enter_game(role_id); } else { req_create_role(); } return(0); }
public int res_select_gate(Bit_Buffer buffer) { string gate_ip = buffer.read_string(); uint gate_port = buffer.read_uint(16); token_ = buffer.read_string(); player_log("\r\n" + "{" + "\r\n" + " gate_ip:" + gate_ip + "\r\n" + " gate_port:" + gate_port.ToString() + "\r\n" + " token:" + token_ + "\r\n" + "}"); robot_status_ = 1;//准备连接gate服务器 end_point_.disconnect(); end_point_.connect(gate_ip, (int)gate_port); return(1); }
private string get_arg_string(Field_Info info, Bit_Buffer buffer, bool from_vector = false) { string ret = ""; if (!from_vector) { ret = (info.field_name + ":"); } if (info.field_type == "int") { int val = buffer.read_int(info.field_bit); ret += val.ToString(); } else if (info.field_type == "uint") { uint val = buffer.read_uint(info.field_bit); ret += val.ToString(); } else if (info.field_type == "int64") { long val = buffer.read_int64(); ret += val.ToString(); } else if (info.field_type == "uint64") { ulong val = buffer.read_uint64(); ret += val.ToString(); } else if (info.field_type == "float") { float val = buffer.read_decimal(32); ret += val.ToString(); } else if (info.field_type == "bool") { bool val = buffer.read_bool(); ret += val.ToString(); } else if (info.field_type == "string") { string val = buffer.read_string(); ret += "\"" + val + "\""; } return(ret + ", "); }