public async Task <int> Exit(string id) { var iret = 1; var roomid = GetUserRoomId(id); if (roomid == null) { return(iret); } //var tu_data = await tu.GetTableUser_Data(); ITableRoom tr = GetTableRoom(roomid); if (tr == null) { iret = 3; return(iret); } iret = await tr.Exit(id); if (iret > 0) { roomid = string.Empty; this.SetUserRoomId(id, roomid); } return(iret); }
public ITableRoom GetTableRoom(string id) { ITableRoom itr = default; m_Dict_TableRoom.TryGetValue(id, out itr); return(itr); }
public async Task <int> Join(TableUser_Data user_data) { var iret = 1; ITableRoom tr = null; var roomid = GetUserRoomId(user_data.Id); if (roomid != null) { user_data.RoomId = roomid; //iret = -2;//已经在别的房间 //return iret; } /* * var tu_data = GetTableUser_Data(user_data.Id); //this.GetITableUser(user_data.Id); * if(tu_data == null) * { * AddTableUser_Data(user_data); * }*/ if (user_data.RoomId == string.Empty) { tr = await CreateTableRoom(); } else { tr = GetTableRoom(user_data.RoomId); if (tr != null) { iret = 2;//已经在房间中 return(iret); } else { tr = await CreateTableRoom(); } } iret = await tr.Join(user_data); if (iret > 0) { var trinfo = await tr.GetTableRoomInfo(); SetUserRoomId(user_data.Id, trinfo.Id); } return(iret); }
public void SetTableRoom(string roomid, ITableRoom itr) { m_Dict_TableRoom[roomid] = itr; }