초기커밋
This commit is contained in:
71
GameServer/Contents/GameMode/Helper/GameModeHelper.cs
Normal file
71
GameServer/Contents/GameMode/Helper/GameModeHelper.cs
Normal file
@@ -0,0 +1,71 @@
|
||||
using Google.Protobuf;
|
||||
using Google.Protobuf.WellKnownTypes;
|
||||
|
||||
|
||||
using ServerCore;
|
||||
using ServerBase;
|
||||
using ServerCommon;
|
||||
using ServerCommon.BusinessLogDomain;
|
||||
using MetaAssets;
|
||||
|
||||
|
||||
|
||||
namespace GameServer;
|
||||
|
||||
|
||||
public class GameModeHelper
|
||||
{
|
||||
public static (Result, IGameModeJoinHandler) getGameModeJoinHandler(InstanceRoom instanceRoom, EPlaceType placeType)
|
||||
{
|
||||
var result = new Result();
|
||||
switch (placeType)
|
||||
{
|
||||
case EPlaceType.BattleRoom:
|
||||
return (result, new BattleInstanceJoinHandler(instanceRoom));
|
||||
case EPlaceType.ArcadeRunning:
|
||||
return (result, new ArcadeRunningInstanceJoinHandler(instanceRoom));
|
||||
case EPlaceType.GameRoom:
|
||||
return (result, new GameRoomJoinHandler(instanceRoom));
|
||||
default:
|
||||
var err_msg = $"invalid placeType in this mode!!!! placeType : {placeType}";
|
||||
result.setFail(ServerErrorCode.GameModeJoinHandlerNotExist, err_msg);
|
||||
return (result, new BattleInstanceJoinHandler(instanceRoom));
|
||||
}
|
||||
}
|
||||
|
||||
public static (Result, IGameModeInitHandler) getGameModeInitHandler(InstanceRoom instanceRoom, EPlaceType placeType)
|
||||
{
|
||||
var result = new Result();
|
||||
switch (placeType)
|
||||
{
|
||||
case EPlaceType.BattleRoom:
|
||||
return (result, new BattleInstanceInitHandler(instanceRoom));
|
||||
case EPlaceType.ArcadeRunning:
|
||||
return (result, new ArcadeRunningInstanceInitHandler(instanceRoom));
|
||||
case EPlaceType.GameRoom:
|
||||
return (result, new GameRoomInitHandler(instanceRoom));
|
||||
default:
|
||||
var err_msg = $"getGameModeInitHandler not!!!! placeType : {placeType}";
|
||||
result.setFail(ServerErrorCode.GameModeInitHandlerNotExist, err_msg);
|
||||
return (result, new BattleInstanceInitHandler(instanceRoom));
|
||||
}
|
||||
}
|
||||
|
||||
public static (Result, IGameModeJoinSuccessHandler?) getGameModeJoinSuccessHandler(Player player, InstanceRoom instanceRoom, EPlaceType placeType)
|
||||
{
|
||||
var result = new Result();
|
||||
switch (placeType)
|
||||
{
|
||||
case EPlaceType.BattleRoom:
|
||||
return (result, new BattleInstanceJoinSuccessHandler(player, instanceRoom));
|
||||
case EPlaceType.ArcadeRunning:
|
||||
return (result, new ArcadeRunningInstanceJoinSuccessHandler(player, instanceRoom));
|
||||
case EPlaceType.GameRoom:
|
||||
return (result, new GameRoomJoinSuccessHandler(player, instanceRoom));
|
||||
default:
|
||||
var err_msg = $"getGameModeInitHandler not!!!! placeType : {placeType}";
|
||||
result.setFail(ServerErrorCode.GameModeJoinSuccessHandlerNotExist, err_msg);
|
||||
return (result, null);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user