更新刷新房间的逻辑 (#4)

This commit is contained in:
milimoe 2023-04-07 00:34:46 +08:00 committed by GitHub
parent 2e0772157e
commit 59d5d50853
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 8 deletions

View File

@ -327,15 +327,18 @@ namespace Milimoe.FunGame.Server.Model
return Send(socket, type, false, msg);
case SocketMessageType.UpdateRoom:
Config.RoomList = new(Server);
DataSet DsRoom = SQLHelper.ExecuteDataSet(RoomQuery.Select_Rooms, out SQLResult TestResult);
Config.RoomList ??= new(Server);
Config.RoomList.Clear();
DataSet DsRoomTemp = new(), DsUserTemp = new();
DsRoomTemp = SQLHelper.ExecuteDataSet(RoomQuery.Select_Rooms, out SQLResult TestResult);
if (TestResult == SQLResult.Success)
{
DataSet DsUser = SQLHelper.ExecuteDataSet(UserQuery.Select_Users, out TestResult);
List<Room> rooms = Factory.GetList<Room>(DsRoom, DsUser);
Config.RoomList.AddRooms(rooms);
DsUserTemp = SQLHelper.ExecuteDataSet(UserQuery.Select_Users, out TestResult);
List<Room> rooms = Factory.GetList<Room>(DsRoomTemp, DsUserTemp);
Config.RoomList.AddRoom(General.HallInstance); // 添加空房间
Config.RoomList.AddRooms(rooms); // 更新服务器中的房间列表
}
return Send(socket, type, Config.RoomList.GetRoomIDList());
return Send(socket, type, DsRoomTemp, DsUserTemp); // 将Ds传递给客户端在客户端中构建Room
case SocketMessageType.CreateRoom:
msg = "-1";
@ -351,10 +354,11 @@ namespace Milimoe.FunGame.Server.Model
{
RoomType roomtype = roomtype_string switch
{
GameMode.GameMode_Mix => RoomType.Mix,
GameMode.GameMode_Team => RoomType.Team,
GameMode.GameMode_MixHasPass => RoomType.MixHasPass,
GameMode.GameMode_TeamHasPass => RoomType.TeamHasPass,
_ => RoomType.Mix,
_ => RoomType.None
};
string roomid = Verification.CreateVerifyCode(VerifyCodeType.MixVerifyCode, 7).ToUpper();
SQLHelper.Execute(RoomQuery.Insert_CreateRoom(roomid, userid, roomtype, password ?? ""), out SQLResult result);
@ -390,6 +394,9 @@ namespace Milimoe.FunGame.Server.Model
}
return Send(socket, type, false);
case SocketMessageType.MatchRoom:
break;
case SocketMessageType.ChangeRoomSetting:
break;
}

View File

@ -144,7 +144,7 @@ namespace Milimoe.FunGame.Server.Utility
private string GetClientName()
{
if (ServerModel is null) return "";
return SocketHelper.MakeClientName(ServerModel.ClientName, ServerModel.User) + " ";
return ServerHelper.MakeClientName(ServerModel.ClientName, ServerModel.User) + " ";
}
}
}