46 lines
1.3 KiB
C#
46 lines
1.3 KiB
C#
using Google.Protobuf;
|
|
using Google.Protobuf.WellKnownTypes;
|
|
|
|
|
|
using ServerCore;
|
|
using ServerBase;
|
|
using ServerCommon;
|
|
using ServerCommon.BusinessLogDomain;
|
|
using MetaAssets;
|
|
|
|
|
|
namespace GameServer.PacketHandler;
|
|
|
|
[PacketHandler("", typeof(ServerMessage.Types.KickReq), typeof(ReqKickMQPacketHandler), typeof(RabbitMQ4Game))]
|
|
public class ReqKickMQPacketHandler : PacketRecvHandler
|
|
{
|
|
public override async Task<Result> onProcessPacket(ISession session, IMessage recvMessage)
|
|
{
|
|
var msg = recvMessage as ServerMessage;
|
|
NullReferenceCheckHelper.throwIfNull(msg, () => $"msg is null !!!");
|
|
|
|
ServerMessage message = new ServerMessage();
|
|
message.KickRes = new ServerMessage.Types.KickRes();
|
|
message.KickRes.ReqId = msg.KickReq.ReqId;
|
|
|
|
var server_logic = GameServerApp.getServerLogic();
|
|
|
|
if (await server_logic.getPlayerManager().kickUserByUserGuid(msg.KickReq.Name) == true)
|
|
{
|
|
message.KickRes.ErrCode = ServerErrorCode.Success;
|
|
}
|
|
else
|
|
{
|
|
message.KickRes.ErrCode = ServerErrorCode.KickFail;
|
|
}
|
|
|
|
var owner = session as RabbitMQ4Game;
|
|
NullReferenceCheckHelper.throwIfNull(owner, () => $"owner is null !!!");
|
|
|
|
owner.SendMessage(msg.MessageSender, message);
|
|
|
|
|
|
return new();
|
|
}
|
|
}
|