mirror of
https://github.com/project-redbud/FunGame-Server.git
synced 2025-04-21 19:49:36 +08:00
完善GameMode和GameMap的运用
This commit is contained in:
parent
3cb2e4a75f
commit
fbe9f29cc3
@ -3,6 +3,7 @@ using System.Data;
|
|||||||
using Milimoe.FunGame.Core.Api.Transmittal;
|
using Milimoe.FunGame.Core.Api.Transmittal;
|
||||||
using Milimoe.FunGame.Core.Api.Utility;
|
using Milimoe.FunGame.Core.Api.Utility;
|
||||||
using Milimoe.FunGame.Core.Entity;
|
using Milimoe.FunGame.Core.Entity;
|
||||||
|
using Milimoe.FunGame.Core.Library.Common.Addon;
|
||||||
using Milimoe.FunGame.Core.Library.Common.Network;
|
using Milimoe.FunGame.Core.Library.Common.Network;
|
||||||
using Milimoe.FunGame.Core.Library.Constant;
|
using Milimoe.FunGame.Core.Library.Constant;
|
||||||
using Milimoe.FunGame.Core.Library.SQLScript.Common;
|
using Milimoe.FunGame.Core.Library.SQLScript.Common;
|
||||||
@ -170,8 +171,16 @@ namespace Milimoe.FunGame.Server.Controller
|
|||||||
Room room = General.HallInstance;
|
Room room = General.HallInstance;
|
||||||
if (RequestData.Count >= 3)
|
if (RequestData.Count >= 3)
|
||||||
{
|
{
|
||||||
ServerHelper.WriteLine("[" + ServerSocket.GetTypeString(SocketMessageType.DataRequest) + "] " + Server.GetClientName() + " -> CreateRoom");
|
|
||||||
string roomtype_string = DataRequest.GetHashtableJsonObject<string>(RequestData, "roomtype") ?? RoomSet.All;
|
string roomtype_string = DataRequest.GetHashtableJsonObject<string>(RequestData, "roomtype") ?? RoomSet.All;
|
||||||
|
string gamemode = DataRequest.GetHashtableJsonObject<string>(RequestData, "gamemode") ?? "";
|
||||||
|
string gamemap = DataRequest.GetHashtableJsonObject<string>(RequestData, "gamemap") ?? "";
|
||||||
|
ServerHelper.WriteLine("[" + ServerSocket.GetTypeString(SocketMessageType.DataRequest) + "] " + Server.GetClientName() + " -> CreateRoom: " + roomtype_string + " (" + string.Join(", ", [gamemode, gamemap]) + ")");
|
||||||
|
if (gamemode == "" || gamemap == "")
|
||||||
|
{
|
||||||
|
ServerHelper.WriteLine("缺少对应的模组或地图,无法创建房间。");
|
||||||
|
ResultData.Add("room", room);
|
||||||
|
return;
|
||||||
|
}
|
||||||
User user = DataRequest.GetHashtableJsonObject<User>(RequestData, "master") ?? Factory.GetUser();
|
User user = DataRequest.GetHashtableJsonObject<User>(RequestData, "master") ?? Factory.GetUser();
|
||||||
string password = DataRequest.GetHashtableJsonObject<string>(RequestData, "password") ?? "";
|
string password = DataRequest.GetHashtableJsonObject<string>(RequestData, "password") ?? "";
|
||||||
|
|
||||||
@ -179,7 +188,7 @@ namespace Milimoe.FunGame.Server.Controller
|
|||||||
{
|
{
|
||||||
RoomType roomtype = RoomSet.GetRoomType(roomtype_string);
|
RoomType roomtype = RoomSet.GetRoomType(roomtype_string);
|
||||||
string roomid = Verification.CreateVerifyCode(VerifyCodeType.MixVerifyCode, 7).ToUpper();
|
string roomid = Verification.CreateVerifyCode(VerifyCodeType.MixVerifyCode, 7).ToUpper();
|
||||||
SQLHelper.Execute(RoomQuery.Insert_CreateRoom(roomid, user.Id, roomtype, "", "", password ?? ""));
|
SQLHelper.Execute(RoomQuery.Insert_CreateRoom(roomid, user.Id, roomtype, gamemode, gamemap, password ?? ""));
|
||||||
if (SQLHelper.Result == SQLResult.Success)
|
if (SQLHelper.Result == SQLResult.Success)
|
||||||
{
|
{
|
||||||
ServerHelper.WriteLine("[CreateRoom] Master: " + user.Username + " RoomID: " + roomid);
|
ServerHelper.WriteLine("[CreateRoom] Master: " + user.Username + " RoomID: " + roomid);
|
||||||
|
@ -175,7 +175,7 @@ bool GetGameModeList()
|
|||||||
foreach (GameMode mode in loader.Modes.Values)
|
foreach (GameMode mode in loader.Modes.Values)
|
||||||
{
|
{
|
||||||
string modename = mode.Name;
|
string modename = mode.Name;
|
||||||
if (loader.Maps.ContainsKey(mode.Map))
|
if (loader.Maps.ContainsKey(mode.DefaultMap))
|
||||||
{
|
{
|
||||||
supported.Add(modename);
|
supported.Add(modename);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user