1204 lines
53 KiB
C#
1204 lines
53 KiB
C#
//using GameServer.BusinessLogInvoker;
|
|
//using Google.Protobuf;
|
|
//using Nettention.Proud;
|
|
//using Newtonsoft.Json;
|
|
//using RabbitMQ.Client;
|
|
//using RabbitMQ.Client.Events;
|
|
//using ServerCommon;
|
|
//using ServerCore; using ServerBase;
|
|
//using System.Numerics;
|
|
//using System.Text;
|
|
|
|
|
|
//namespace GameServer
|
|
//{
|
|
// using static ServerMessage.Types;
|
|
// using pb = global::Google.Protobuf;
|
|
// using TimeStamp = global::Google.Protobuf.WellKnownTypes.Timestamp;
|
|
|
|
// internal class RabbitMQ4Game : RabbitMQ4Server
|
|
// {
|
|
// public const string EXCHANGE_GAMECHANNELSERVER_NAME = "allgamechannelserver";
|
|
// private IModel? _exchange_game_channelserver_channel = null;
|
|
|
|
// public const string EXCHANGE_GAMEINDUNSERVER_NAME = "allgameindunserver";
|
|
// private IModel? _exchange_game_indunserver_channel = null;
|
|
|
|
// public const string EXCHANGE_NAME = "allgameserver";
|
|
// private IModel? _exchange_channel = null;
|
|
|
|
// public const string AllEXCHANGE_NAME = "allserver";
|
|
// private IModel? _allexchange_channel = null;
|
|
|
|
// public RabbitMQ4Game(string serverName, string address, int port, string username, string password, bool useSSL)
|
|
// : base(serverName, address, port, username, password, useSSL)
|
|
// {
|
|
// }
|
|
|
|
// public bool StartConsumer4Game()
|
|
// {
|
|
// _exchange_channel = base.createExchangeChannel(EXCHANGE_NAME, ExchangeType.Fanout);
|
|
// _allexchange_channel = base.createExchangeChannel(AllEXCHANGE_NAME, ExchangeType.Fanout);
|
|
|
|
// if(GameServerApp.Instance.Config.GameServerType == EGameServerType.Indun)
|
|
// {
|
|
// _exchange_game_indunserver_channel = base.createExchangeChannel(EXCHANGE_GAMEINDUNSERVER_NAME, ExchangeType.Fanout);
|
|
// }
|
|
// else
|
|
// {
|
|
// _exchange_game_channelserver_channel = base.createExchangeChannel(EXCHANGE_GAMECHANNELSERVER_NAME, ExchangeType.Fanout);
|
|
// }
|
|
|
|
// return base.StartConsumer4Server(this.OnProcessMessage);
|
|
// }
|
|
|
|
// private async Task OnProcessMessage(ServerMessage message, BasicDeliverEventArgs ea)
|
|
// {
|
|
// Log.getLogger().debug($"consume {message}");
|
|
|
|
// // EXCHANGE_CHANNEL 메시지인 경우
|
|
// if (true == ea.Exchange.Equals(EXCHANGE_NAME, StringComparison.OrdinalIgnoreCase))
|
|
// {
|
|
// // 10초 전에 생성된 메시지는 드랍
|
|
// if (message.MessageTime.ToDateTime() < DateTime.UtcNow.AddSeconds(-10))
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// switch (message.MsgCase)
|
|
// {
|
|
// case ServerMessage.MsgOneofCase.CallPlayersFromGroupReq:
|
|
// await HandleCallPlayersFromGroupReq(message.MessageSender, message.CallPlayersFromGroupReq);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ExchangeMannequinDisplayItemNoti:
|
|
// await HandleExchangeMannequinDisplayItemNoti(message.ExchangeMannequinDisplayItemNoti);
|
|
// break;
|
|
|
|
// }
|
|
// }
|
|
// else
|
|
// {
|
|
// switch (message.MsgCase)
|
|
// {
|
|
// case ServerMessage.MsgOneofCase.KickReq:
|
|
// await HandleKickReq(message.MessageSender, message.KickReq);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.InvitePartyNoti:
|
|
// await HandleInvitePartyNoti(message.MessageSender, message.InvitePartyNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ReplyInvitePartyNoti:
|
|
// await HandleReplyInvitePartyNoti(message.MessageSender, message.ReplyInvitePartyNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.CreatePartyNoti:
|
|
// await HandleCreatePartyNoti(message.MessageSender, message.CreatePartyNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.JoinPartyMemberNoti:
|
|
// HandleJoinPartyMemberNoti(message.JoinPartyMemberNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.LeavePartyMemberNoti:
|
|
// await HandleLeavePartyMemberNoti(message.LeavePartyMemberNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.AddPartyServerNameNoti:
|
|
// HandleAddPartyServerNameNoti(message.AddPartyServerNameNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.RemovePartyServerNameNoti:
|
|
// HandleRemovePartyServerNameNoti(message.RemovePartyServerNameNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ChangePartyLeaderNoti:
|
|
// HandleChangePartyLeaderNoti(message.ChangePartyLeaderNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ExchangePartyNameNoti:
|
|
// HandleExchangePartyNameNoti(message.ExchangePartyNameNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.JoiningPartyFlagResetNoti:
|
|
// await HandleJoiningPartyFlagResetNoti(message.JoiningPartyFlagResetNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ExchangePartyMemberMarkNoti:
|
|
// HandleExchangePartyMemberMarkNoti(message.ExchangePartyMemberMarkNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.BanPartyNoti:
|
|
// await HandleBanPartyNoti(message.BanPartyNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.SummonPartyMemberNoti:
|
|
// await HandleSummonPartyMemberNoti(message.SummonPartyMemberNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ReplySummonPartyMemberNoti:
|
|
// await HandleReplySummonPartyMemberNoti(message.ReplySummonPartyMemberNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.PartyVoteNoti:
|
|
// HandlePartyVoteNoti(message.PartyVoteNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ReplyPartyVoteNoti:
|
|
// HandleReplyPartyVoteNoti(message.ReplyPartyVoteNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.PartyVoteResultNoti:
|
|
// HandlePartyVoteResultNoti(message.PartyVoteResultNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.PartyInstanceInfoNoti:
|
|
// HandlePartyInstanceInfoNoti(message.PartyInstanceInfoNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.PartyMemberInfoNoti:
|
|
// HandlePartyMemberInfoNoti(message.PartyMemberInfoNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.CancelSummonPartyMemberNoti:
|
|
// await HandleCancelSummonPartyMemberNoti(message.CancelSummonPartyMemberNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.PartyMemberLocationNoti:
|
|
// HandlePartyMemberLocationNoti(message.PartyMemberLocationNoti);
|
|
// break;
|
|
// }
|
|
// }
|
|
|
|
// switch (message.MsgCase)
|
|
// {
|
|
// case ServerMessage.MsgOneofCase.Chat:
|
|
// await HandleChat(message.Chat);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.WhiteListUpdateNoti:
|
|
// await HandleWhiteListUpdateNoti();
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.BlackListUpdateNoti:
|
|
// await HandleBlackListUpdateNoti();
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.InspectionReq:
|
|
// await HandleInspectionReq(message.InspectionReq);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ReadyForDistroyReq:
|
|
// await HandleReadyForDistroyReq(message.ReadyForDistroyReq);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ChangeServerConfigReq:
|
|
// await HandleChangeServerConfigReq(message.ChangeServerConfigReq);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.AllKickNormalUserNoti:
|
|
// await HandleAllKickNormalUserNoti(message.AllKickNormalUserNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.ReceiveMailNoti:
|
|
// await HandleReceiveMailNoti(message.ReceiveMailNoti);
|
|
// break;
|
|
|
|
// case ServerMessage.MsgOneofCase.NtfFriendLeavingHome:
|
|
// handleNtfFriendLeavingHome(message.NtfFriendLeavingHome);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.NoticeChatNoti:
|
|
// await HandleNoticeChatNoti(message.NoticeChatNoti);
|
|
// break;
|
|
// case ServerMessage.MsgOneofCase.SystemMailNoti:
|
|
// await HandleSystemMailNoti(message.SystemMailNoti);
|
|
// break;
|
|
// default:
|
|
// break;
|
|
// }
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleChat(ServerMessage.Types.Chat chat)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
// ClientToGame clientToGame = new ClientToGame();
|
|
// clientToGame.Message = new ClientToGameMessage();
|
|
|
|
// clientToGame.Message.Chat = new ClientToGameMessage.Types.Chat();
|
|
// clientToGame.Message.Chat.Type = chat.Type;
|
|
// clientToGame.Message.Chat.Sender = chat.Sender;
|
|
// clientToGame.Message.Chat.Receiver = chat.Receiver;
|
|
// clientToGame.Message.Chat.Receiverstate = chat.Receiverstate;
|
|
// clientToGame.Message.Chat.Message = chat.Message;
|
|
|
|
// if (chat.Receiver == string.Empty && chat.Type == (int)EChatType.NOTICE)
|
|
// {
|
|
// ClientSessionManager.Instance.Broadcast(clientToGame);
|
|
// }
|
|
// else if (chat.Type == (int)EChatType.WHISPER)
|
|
// {
|
|
// ClientSession? session = ClientSessionManager.Instance.GetSessionByName(chat.Receiverid);
|
|
// if (session == null)
|
|
// {
|
|
// return;
|
|
// }
|
|
// session.Send(RmiContext.ReliableSend, clientToGame);
|
|
// }
|
|
// else if (chat.Type == (int)EChatType.PARTY)
|
|
// {
|
|
// await PartyManager.Instance.ChatBroadcast(chat.Receiver, clientToGame);
|
|
// }
|
|
// else
|
|
// {
|
|
// Log.getLogger().error($"invalid Chat Type:{chat.Type}");
|
|
// }
|
|
// }
|
|
|
|
|
|
|
|
// async Task HandleKickReq(string sender, ServerMessage.Types.KickReq kick)
|
|
// {
|
|
// Log.getLogger().info($"HandleKick {sender}, {kick.Name}");
|
|
|
|
// ServerMessage message = new ServerMessage();
|
|
// message.KickRes = new ServerMessage.Types.KickRes();
|
|
// message.KickRes.ReqId = kick.ReqId;
|
|
|
|
// if (await ClientSessionManager.Instance.Kick(kick.Name) == true)
|
|
// {
|
|
// message.KickRes.ErrCode = ServerErrorCode.Success;
|
|
// }
|
|
// else
|
|
// {
|
|
// message.KickRes.ErrCode = ServerErrorCode.KickFail;
|
|
// }
|
|
|
|
// SendMessage(sender, message);
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleCallPlayersFromGroupReq(string sender, ServerMessage.Types.CallPlayersFromGroupReq callPlayer)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
// Log.getLogger().info($"HandleCallplayersFromGroup {sender}, {callPlayer.UserGroup}");
|
|
|
|
// List<ClientSession> clientSessionList = new(2000);
|
|
// ClientSessionManager.Instance.ForEach((ClientSession session) =>
|
|
// {
|
|
// if (callPlayer.UserGroup == session._selectedChar?._charEntity.CharInfo.Usergroup)
|
|
// {
|
|
// clientSessionList.Add(session);
|
|
// }
|
|
// return true;
|
|
// }, CancellationToken.None);
|
|
|
|
// Pos pos = new Pos() { X = callPlayer.PosX, Y = callPlayer.PosY, Z = callPlayer.PosZ, Angle = 0 };
|
|
// DateTime expireTime = DateTime.UtcNow;
|
|
// expireTime = expireTime.AddMinutes(5);
|
|
|
|
// GameServerApp.ForcedMoveConnectInfo forcedMoveConnectInfo = new GameServerApp.ForcedMoveConnectInfo
|
|
// {
|
|
// ServerName = callPlayer.ServerName,
|
|
// RoomId = callPlayer.RoomId,
|
|
// Pos = pos,
|
|
// ExpireDate = expireTime,
|
|
// };
|
|
|
|
// GameServerApp.Instance.SetForecedMoveInfoFromGM(callPlayer.GMName, forcedMoveConnectInfo);
|
|
|
|
// ClientToGame clientToGameNoti = new ClientToGame();
|
|
// clientToGameNoti.Message = new ClientToGameMessage();
|
|
// clientToGameNoti.Message.CallPlayersFromGroupNoti = new ClientToGameMessage.Types.CallPlayersFromGroupNoti();
|
|
// clientToGameNoti.Message.CallPlayersFromGroupNoti.GMName = callPlayer.GMName;
|
|
|
|
// var array = clientSessionList.Where(x => (x._selectedChar != null && x._selectedChar.accountId != callPlayer.GMName && x._selectedChar._charEntity.CharInfo.Operator != 1)).Select(x => x.HostId).ToArray();
|
|
// GameServer.Instance.Send(array, clientToGameNoti);
|
|
// }
|
|
|
|
// async Task HandleWhiteListUpdateNoti()
|
|
// {
|
|
// Log.getLogger().info($"HandleWhiteListUpdateNoti");
|
|
|
|
// await AccountAuthorityManager.Instance.UpdateWhiteList();
|
|
// }
|
|
|
|
// async Task HandleBlackListUpdateNoti()
|
|
// {
|
|
// Log.getLogger().info($"HandleBlackListUpdateNoti");
|
|
|
|
// await AccountAuthorityManager.Instance.UpdateBlackList();
|
|
// //_ = Task.Run(async () =>
|
|
// {
|
|
// await ClientSessionManager.Instance.ForEach(async (ClientSession session) =>
|
|
// {
|
|
// if (session != null)
|
|
// {
|
|
// if (AccountAuthorityManager.Instance.IsBlackListUser(session.Id) == true)
|
|
// {
|
|
// await session.Close();
|
|
// }
|
|
// }
|
|
|
|
// return true;
|
|
// });
|
|
|
|
// Log.getLogger().info($"KickBlackListUser");
|
|
// }//);
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleInspectionReq(ServerMessage.Types.InspectionReq message)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
// Log.getLogger().info($"HandleInspectionReq");
|
|
|
|
// AccountAuthorityManager.Instance.isInspection = Convert.ToBoolean(message.IsInspection);
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleReadyForDistroyReq(ServerMessage.Types.ReadyForDistroyReq message)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
// Log.getLogger().info($"HandleReadyForDistroyReq");
|
|
|
|
// AccountAuthorityManager.Instance.isReadyForDistroy = Convert.ToBoolean(message.IsReadyForDistroy);
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleChangeServerConfigReq(ServerMessage.Types.ChangeServerConfigReq message)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
// Log.getLogger().info($"HandleChangeServerConfigReq");
|
|
|
|
// Constant.g_MaxUser = message.MaxUser;
|
|
// }
|
|
|
|
// async Task HandleAllKickNormalUserNoti(ServerMessage.Types.AllKickNormalUserNoti message)
|
|
// {
|
|
// Log.getLogger().info($"HandleAllKickNormalUserNoti");
|
|
|
|
// if(AccountAuthorityManager.Instance.isInspection == true)
|
|
// {
|
|
// await ClientSessionManager.Instance.ForEach(async (ClientSession session) =>
|
|
// {
|
|
// if (session != null &&
|
|
// session._selectedChar != null &&
|
|
// session._selectedChar._charEntity.CharInfo.Operator != 1)
|
|
// {
|
|
// await session.Close();
|
|
// }
|
|
// return true;
|
|
// });
|
|
// Log.getLogger().info($"kick NormalUser");
|
|
// }
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleReceiveMailNoti(ServerMessage.Types.ReceiveMailNoti message)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
|
|
// ClientSession? session = ClientSessionManager.Instance.GetSessionByName(message.AccountId);
|
|
|
|
// if (session == null)
|
|
// {
|
|
// return;
|
|
// }
|
|
// ClientToGame clientToGameNoti = new();
|
|
// clientToGameNoti.Message = new();
|
|
// clientToGameNoti.Message.NewMailNoti = new();
|
|
// clientToGameNoti.Message.NewMailNoti.IsLoginNoti = 0;
|
|
|
|
// session.ownedMail.newMailNoti();
|
|
|
|
// session.Send(RmiContext.ReliableSend, clientToGameNoti);
|
|
|
|
// if (session._selectedChar is not null)
|
|
// {
|
|
// }
|
|
// }
|
|
|
|
|
|
|
|
// public void handleNtfFriendLeavingHome(ServerMessage.Types.GS2C_NTF_FRIEND_LEAVING_HOME message)
|
|
// {
|
|
// ClientSession? session = ClientSessionManager.Instance.GetSessionByName(message.ReceiverId);
|
|
// if (session == null)
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// ClientToGame clientToGame = new();
|
|
// clientToGame.Message = new();
|
|
// clientToGame.Message.NtfFriendLeavingHome = new();
|
|
// clientToGame.Message.NtfFriendLeavingHome.Guid = message.Guid;
|
|
// clientToGame.Message.NtfFriendLeavingHome.NickName = message.NickName;
|
|
// session.Send(RmiContext.ReliableSend, clientToGame);
|
|
// }
|
|
|
|
|
|
|
|
|
|
// public async Task HandleNoticeChatNoti(ServerMessage.Types.NoticeChatNoti message)
|
|
// {
|
|
// await NoticeChatManager.Instance.LoadNoticeChat();
|
|
// }
|
|
|
|
// public async Task HandleSystemMailNoti(ServerMessage.Types.SystemMailNoti message)
|
|
// {
|
|
// await SystemMailManager.Instance.LoadSystemMail();
|
|
// ClientSessionManager.Instance.AllPlayerSystemMailNoti();
|
|
// }
|
|
|
|
//#pragma warning disable CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// async Task HandleExchangeMannequinDisplayItemNoti(ServerMessage.Types.ExchangeMannequinDisplayItemNoti message)
|
|
//#pragma warning restore CS1998 // 이 비동기 메서드에는 'await' 연산자가 없으며 메서드가 동시에 실행됩니다.
|
|
// {
|
|
// Log.getLogger().info($"HandleExchangeMannequinDisplayItemNoti");
|
|
|
|
// MapManager.Instance.ExchangeMannequinDisplayItem(message.AnchorGuid, message.DisplayItemIds.ToList());
|
|
|
|
// GameServer.Instance.Map?.PropModifyNoti(message.AnchorGuid);
|
|
// }
|
|
|
|
// async Task HandleInvitePartyNoti(string sender, InvitePartyNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleInvitePartyNoti");
|
|
|
|
// ClientSession? session = ClientSessionManager.Instance.GetSessionByName(noti.InviteMemberAccountId);
|
|
// if (session is null)
|
|
// {
|
|
// LoginInfo? loginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.InviteMemberAccountId);
|
|
// if (loginInfo is null)
|
|
// return;
|
|
|
|
// SendInvitePartyNoti(loginInfo.CurrentServer, noti.InviteHostNickname, noti.InviteMemberAccountId);
|
|
|
|
// return;
|
|
// }
|
|
|
|
// if (session.PartyGuid != string.Empty)
|
|
// return;
|
|
|
|
// {
|
|
// ClientToGame clientToGameNoti = new ClientToGame();
|
|
// clientToGameNoti.Message = new ClientToGameMessage();
|
|
// clientToGameNoti.Message.InvitePartyNoti = new ClientToGameMessage.Types.InvitePartyNoti();
|
|
// clientToGameNoti.Message.InvitePartyNoti.InviteHostNickname = noti.InviteHostNickname;
|
|
|
|
// session.Send(RmiContext.ReliableSend, clientToGameNoti);
|
|
// }
|
|
// }
|
|
|
|
// async Task HandleReplyInvitePartyNoti(string sender, ReplyInvitePartyNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleInvitePartyResultNoti");
|
|
|
|
// ClientSession? InviteHostSession = ClientSessionManager.Instance.GetSessionByName(noti.InviteHostAccountId);
|
|
// if (InviteHostSession is null)
|
|
// {
|
|
// LoginInfo? hostLoginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.InviteHostAccountId);
|
|
// if (hostLoginInfo is null)
|
|
// {
|
|
// if (noti.Result == 1)
|
|
// SendJoiningPartyFlagResetNoti(sender, noti.InviteMemberAccountId);
|
|
|
|
// return;
|
|
// }
|
|
|
|
// SendReplyInvitePartyNoti(hostLoginInfo.CurrentServer, noti.InviteHostAccountId, noti.InviteMemberAccountId, noti.InviteMemberNickname, noti.Result);
|
|
// return;
|
|
// }
|
|
|
|
// if (noti.Result == 1)
|
|
// {
|
|
// if (InviteHostSession.PartyGuid == string.Empty)
|
|
// {
|
|
// if (InviteHostSession.isJoiningParty)
|
|
// {
|
|
// SendJoiningPartyFlagResetNoti(sender, noti.InviteMemberAccountId);
|
|
// return;
|
|
// }
|
|
|
|
// InviteHostSession.isJoiningParty = true;
|
|
// }
|
|
// }
|
|
|
|
// {
|
|
// ClientToGame clientToGameNoti = new ClientToGame();
|
|
// clientToGameNoti.Message = new ClientToGameMessage();
|
|
// clientToGameNoti.Message.ReplyInvitePartyNoti = new ClientToGameMessage.Types.ReplyInvitePartyNoti();
|
|
// clientToGameNoti.Message.ReplyInvitePartyNoti.InviteMemberNickname = noti.InviteMemberNickname;
|
|
// clientToGameNoti.Message.ReplyInvitePartyNoti.Result = noti.Result;
|
|
|
|
// InviteHostSession.Send(RmiContext.ReliableSend, clientToGameNoti);
|
|
// }
|
|
|
|
// if (noti.Result == 1)
|
|
// {
|
|
// if (InviteHostSession.PartyGuid == string.Empty)
|
|
// {
|
|
// string createPartyGuid = await PartyHandler.CreateParty(InviteHostSession);
|
|
// if (createPartyGuid == string.Empty)
|
|
// {
|
|
// InviteHostSession.isJoiningParty = false;
|
|
// SendJoiningPartyFlagResetNoti(sender, noti.InviteMemberAccountId);
|
|
// return;
|
|
// }
|
|
|
|
// SendCreatePartyNoti(sender, noti.InviteMemberAccountId, createPartyGuid);
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// async Task HandleCreatePartyNoti(string sender, CreatePartyNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleCreatePartyNoti");
|
|
|
|
// ClientSession? joinPartyMemberSession = ClientSessionManager.Instance.GetSessionByName(noti.JoinPartyMemberAccountId);
|
|
// if (joinPartyMemberSession is null)
|
|
// {
|
|
// LoginInfo? memberLoginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.JoinPartyMemberAccountId);
|
|
// if (memberLoginInfo is null)
|
|
// {
|
|
// // 파티 나가기 처리
|
|
|
|
// return;
|
|
// }
|
|
|
|
// SendCreatePartyNoti(memberLoginInfo.CurrentServer, noti.JoinPartyMemberAccountId, noti.CreatePartyGuid);
|
|
|
|
// return;
|
|
// }
|
|
|
|
// var error_code = await PartyHandler.JoinParty(noti.CreatePartyGuid, joinPartyMemberSession);
|
|
// if (error_code.isFail())
|
|
// {
|
|
// joinPartyMemberSession.isJoiningParty = false;
|
|
// // 파티 나가기 처리
|
|
|
|
// return;
|
|
// }
|
|
// }
|
|
|
|
// void HandleJoinPartyMemberNoti(JoinPartyMemberNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleJoinPartyMemberNoti");
|
|
|
|
// var joinMemberInfo = JsonConvert.DeserializeObject<PartyMemberInfo>(noti.JoinPartyMemberInfo);
|
|
// if (joinMemberInfo == null)
|
|
// return;
|
|
|
|
// PartyManager.Instance.AddPartyMember(noti.PartyGuid, joinMemberInfo);
|
|
|
|
// var message = Party.MakeJoinPartyMemberNoti(joinMemberInfo);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
|
|
// async Task HandleLeavePartyMemberNoti(LeavePartyMemberNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleLeavePartyMemberNoti");
|
|
|
|
// var leave_party_member_char_entity = await GameServerApp.Instance.MainDB.GetChar(noti.LeavePartyMemberCharGuid);
|
|
// if (leave_party_member_char_entity == null)
|
|
// {
|
|
// Log.getLogger().error($"Not Found CharEntity {noti.LeavePartyMemberCharGuid}");
|
|
// return;
|
|
// }
|
|
|
|
// PartyManager.Instance.RemovePartyMember(noti.PartyGuid, leave_party_member_char_entity.CharInfo.DisplayName);
|
|
|
|
// var message = Party.MakeLeavePartyMemberNoti(leave_party_member_char_entity.CharInfo.DisplayName, noti.LeavePartyMemberCharGuid, noti.IsBan);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
|
|
// var partyMemberCount = await GameServerApp.Instance.PartyStorage.GetPartyMemberCount(noti.PartyGuid);
|
|
// if (partyMemberCount < 2)
|
|
// {
|
|
// await PartyManager.Instance.DestroyParty(noti.PartyGuid);
|
|
// }
|
|
// }
|
|
|
|
// void HandleAddPartyServerNameNoti(AddPartyServerNameNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleAddPartyServerNameNoti");
|
|
|
|
// PartyManager.Instance.AddPartyServerName(noti.PartyGuid, noti.AddServerName);
|
|
// }
|
|
|
|
// void HandleRemovePartyServerNameNoti(RemovePartyServerNameNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleRemovePartyServerNameNoti");
|
|
|
|
// PartyManager.Instance.RemovePartyServerName(noti.PartyGuid, noti.RemoveServerName);
|
|
// }
|
|
|
|
// void HandleChangePartyLeaderNoti(ChangePartyLeaderNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleChangePartyLeaderNoti");
|
|
|
|
// PartyManager.Instance.ChangePartyLeader(noti.PartyGuid, noti.NewPartyLeaderNickname);
|
|
|
|
// var message = Party.MakeChangePartyLeaderNoti(noti.NewPartyLeaderNickname);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
|
|
// void HandleExchangePartyNameNoti(ExchangePartyNameNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleExchangePartyNameNoti");
|
|
|
|
// PartyManager.Instance.ExchangePartyName(noti.PartyGuid, noti.NewPartyName, out _);
|
|
|
|
// var message = Party.MakeExchangePartyNameNoti(noti.NewPartyName);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
|
|
// async Task HandleJoiningPartyFlagResetNoti(JoiningPartyFlagResetNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleJoiningPartyFlagResetNoti");
|
|
|
|
// ClientSession? targetSession = ClientSessionManager.Instance.GetSessionByName(noti.TargetAccountId);
|
|
// if (targetSession is null)
|
|
// {
|
|
// LoginInfo? memberLoginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.TargetAccountId);
|
|
// if (memberLoginInfo is null)
|
|
// return;
|
|
|
|
// SendJoiningPartyFlagResetNoti(memberLoginInfo.CurrentServer, noti.TargetAccountId);
|
|
|
|
// return;
|
|
// }
|
|
|
|
// targetSession.isJoiningParty = false;
|
|
// }
|
|
|
|
// void HandleExchangePartyMemberMarkNoti(ExchangePartyMemberMarkNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleExchangePartyMemberMarkNoti");
|
|
|
|
// PartyManager.Instance.ExchangePartyMemberMark(noti.PartyGuid, noti.MemberNickname, noti.MarkId, out var oldMarkId, out var modifiedMemberNickname);
|
|
|
|
// var message = Party.MakeExchangePartyMemberMarkNoti(noti.MemberNickname, noti.MarkId);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
|
|
// if (modifiedMemberNickname.isNullOrWhiteSpace())
|
|
// {
|
|
// message = Party.MakeExchangePartyMemberMarkNoti(modifiedMemberNickname, oldMarkId);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
// }
|
|
|
|
// async Task HandleBanPartyNoti(BanPartyNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleBanPartyNoti");
|
|
|
|
// ClientSession? banMemberSession = ClientSessionManager.Instance.GetSessionByName(noti.BanMemberAccountId);
|
|
// if (banMemberSession is null)
|
|
// {
|
|
// LoginInfo? memberLoginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.BanMemberAccountId);
|
|
// if (memberLoginInfo is null)
|
|
// return;
|
|
|
|
// SendBanPartyNoti(memberLoginInfo.CurrentServer, noti.PartyGuid, noti.BanMemberAccountId);
|
|
|
|
// return;
|
|
// }
|
|
|
|
// await PartyManager.Instance.LeaveParty(noti.PartyGuid, banMemberSession);
|
|
// await GameServerApp.Instance.LoginStorage.ChangePartyGuid(banMemberSession.Id, string.Empty);
|
|
|
|
// banMemberSession.PartyGuid = string.Empty;
|
|
|
|
// ClientToGame clientToGame = new();
|
|
// clientToGame.Message = new();
|
|
// clientToGame.Message.BanPartyNoti = new();
|
|
|
|
// banMemberSession.Send(RmiContext.ReliableSend, clientToGame);
|
|
|
|
// if (banMemberSession._selectedChar != null)
|
|
// {
|
|
// QuestManager.Instance.QuestCheck(banMemberSession._selectedChar, new QuestParty(EQuestEventTargetType.PARTY, EQuestEventNameType.EXITED));
|
|
// }
|
|
// }
|
|
|
|
// async Task HandleSummonPartyMemberNoti(SummonPartyMemberNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleSummonPartyMemberNoti");
|
|
|
|
// ClientSession? summonMemberSession = ClientSessionManager.Instance.GetSessionByName(noti.SummonMemberAccountId);
|
|
// if (summonMemberSession is null)
|
|
// {
|
|
// LoginInfo? memberLoginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.SummonMemberAccountId);
|
|
// if (memberLoginInfo is null)
|
|
// {
|
|
// SendReplySummonPartyMemberNoti(noti.SummonServerName, noti.SummonerAccountId, noti.SummonMemberNickname, SummonPartyMemberResultType.LogOut);
|
|
// return;
|
|
// }
|
|
|
|
// SendSummonPartyMemberNoti(memberLoginInfo.CurrentServer, noti.SummonerAccountId, noti.SummonMemberAccountId, noti.SummonMemberNickname, noti.SummonServerName, noti.SummonPos);
|
|
// return;
|
|
// }
|
|
|
|
// if (summonMemberSession.PartyGuid == string.Empty)
|
|
// {
|
|
// SendReplySummonPartyMemberNoti(noti.SummonServerName, noti.SummonerAccountId, noti.SummonMemberNickname, SummonPartyMemberResultType.LeaveParty);
|
|
// return;
|
|
// }
|
|
|
|
// summonMemberSession.SummonWorldName = noti.SummonServerName;
|
|
// summonMemberSession.SummonPos = noti.SummonPos;
|
|
// summonMemberSession.SummonerAccountId = noti.SummonerAccountId;
|
|
|
|
// {
|
|
// ClientToGame clientToGameNoti = new ClientToGame();
|
|
|
|
// clientToGameNoti.Message = new ClientToGameMessage();
|
|
// clientToGameNoti.Message.SummonPartyMemberNoti = new ClientToGameMessage.Types.SummonPartyMemberNoti();
|
|
|
|
// summonMemberSession.Send(RmiContext.ReliableSend, clientToGameNoti);
|
|
// }
|
|
// }
|
|
|
|
// async Task HandleReplySummonPartyMemberNoti(ReplySummonPartyMemberNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleReplySummonPartyMemberNoti");
|
|
|
|
// ClientSession? summonerSession = ClientSessionManager.Instance.GetSessionByName(noti.SummonerAccountId);
|
|
// if (summonerSession is null)
|
|
// {
|
|
// LoginInfo? memberLoginInfo = await GameServerApp.Instance.LoginStorage.GetLoginInfo(noti.SummonerAccountId);
|
|
// if (memberLoginInfo is null)
|
|
// return;
|
|
|
|
// SendReplySummonPartyMemberNoti(memberLoginInfo.CurrentServer, noti.SummonerAccountId, noti.SummonMemberNickname, noti.Result);
|
|
// return;
|
|
// }
|
|
|
|
// if(summonerSession._selectedChar == null)
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// List<ILogInvoker> invokers = new List<ILogInvoker>();
|
|
|
|
// ClientToGame clientToGameNoti = new ClientToGame();
|
|
|
|
// clientToGameNoti.Message = new ClientToGameMessage();
|
|
// clientToGameNoti.Message.ReplySummonPartyMemberNoti = new ClientToGameMessage.Types.ReplySummonPartyMemberNoti();
|
|
// clientToGameNoti.Message.ReplySummonPartyMemberNoti.SummonMemberNickname = noti.SummonMemberNickname;
|
|
// clientToGameNoti.Message.ReplySummonPartyMemberNoti.Result = noti.Result;
|
|
|
|
// if (noti.Result != SummonPartyMemberResultType.Accept)
|
|
// {
|
|
// // 소환석 복구
|
|
// List<DBDocumentInfo> dBDocumentInfos = new();
|
|
// summonerSession._selectedChar._inventory.CopyInventoryEntityForTransaction(out var newInventoryEntity);
|
|
|
|
// if (summonerSession._selectedChar._inventory.AddItem(ServerCommon.Constant.PARTY_MEMBER_SUMMON_ITEM_ID, 1, newInventoryEntity, out var addItems, out var errorCode, out var itemlogDatas))
|
|
// {
|
|
// dBDocumentInfos.Add(new DBDocumentInfo(newInventoryEntity.DocumentForUpdate(), EDBExecuteType.Update));
|
|
// foreach (var addItem in addItems)
|
|
// {
|
|
// dBDocumentInfos.Add(new DBDocumentInfo(addItem.DocumentForUpdate(), EDBExecuteType.Update));
|
|
// }
|
|
|
|
// if (await GameServerApp.Instance.MainDB.Transaction(dBDocumentInfos, 2))
|
|
// {
|
|
// summonerSession._selectedChar._inventory.UpdateInventoryDBToMemory(newInventoryEntity.DocumentForUpdate());
|
|
// summonerSession._selectedChar._inventory.UpdateItemDBToMemory(addItems);
|
|
|
|
// foreach (var addItem in addItems)
|
|
// {
|
|
// clientToGameNoti.Message.ReplySummonPartyMemberNoti.Items.Add(addItem.ConvetToItem());
|
|
// }
|
|
|
|
// foreach (var itemInfoLog in itemlogDatas)
|
|
// {
|
|
// invokers.Add(new ItemLog(itemInfoLog));
|
|
// }
|
|
// }
|
|
// }
|
|
// }
|
|
|
|
// summonerSession.Send(RmiContext.ReliableSend, clientToGameNoti);
|
|
|
|
// var log_action = new LogActionEx(LogActionType.PartySummonMemberReply);
|
|
// BusinessLogger.collectLogs(log_action, summonerSession._selectedChar, invokers);
|
|
// }
|
|
|
|
// void HandlePartyVoteNoti(PartyVoteNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandlePartyVoteNoti");
|
|
|
|
// var message = Party.MakePartyVoteNoti(noti.VoteInfo);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// PartyManager.Instance.WaitReplyPartyVote(noti.PartyGuid);
|
|
// }
|
|
|
|
// void HandleReplyPartyVoteNoti(ReplyPartyVoteNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleReplyPartyVoteNoti");
|
|
|
|
// PartyManager.Instance.Vote(noti.PartyGuid, noti.Result);
|
|
// }
|
|
|
|
// void HandlePartyVoteResultNoti(PartyVoteResultNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandlePartyVoteResultNoti");
|
|
|
|
// var message = Party.MakePartyVoteResultNoti(noti.ResultTrue, noti.ResultFalse, noti.Abandon);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
|
|
// void HandlePartyInstanceInfoNoti(PartyInstanceInfoNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandlePartyInstanceInfoNoti");
|
|
|
|
// var partyInstanceInfo = JsonConvert.DeserializeObject<PartyInstanceInfo>(noti.PartyInstanceInfo);
|
|
// if (partyInstanceInfo == null)
|
|
// return;
|
|
|
|
// PartyManager.Instance.SetPartyInstanceInfo(noti.PartyGuid, partyInstanceInfo);
|
|
|
|
// var message = Party.MakePartyInstanceInfoNoti(partyInstanceInfo);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
|
|
// void HandlePartyMemberInfoNoti(PartyMemberInfoNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandlePartyMemberInfoNoti");
|
|
|
|
// var memberInfo = JsonConvert.DeserializeObject<PartyMemberInfo>(noti.MemberInfo);
|
|
// if (memberInfo == null)
|
|
// return;
|
|
|
|
// PartyManager.Instance.UpdatePartyMemberInfo(noti.PartyGuid, memberInfo);
|
|
// }
|
|
|
|
// async Task HandleCancelSummonPartyMemberNoti(CancelSummonPartyMemberNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandleCancelSummonPartyMemberNoti");
|
|
|
|
// await PartyManager.Instance.cancelSummonPartyMember(noti.PartyGuid);
|
|
|
|
|
|
// }
|
|
|
|
// void HandlePartyMemberLocationNoti(PartyMemberLocationNoti noti)
|
|
// {
|
|
// Log.getLogger().info($"HandlePartyMemberLocationNoti");
|
|
|
|
// var memberInfo = JsonConvert.DeserializeObject<PartyMemberInfo>(noti.MemberInfo);
|
|
// if (memberInfo == null)
|
|
// return;
|
|
|
|
// PartyManager.Instance.UpdatePartyMemberInfo(noti.PartyGuid, memberInfo);
|
|
|
|
// var message = Party.makePartyMemberLocationNoti(memberInfo);
|
|
// PartyManager.Instance.Broadcast(noti.PartyGuid, message);
|
|
// }
|
|
|
|
// public void SendCallPlayersFromGroup(string sender, string userGroup, string GMName, Pos pos, string roomId)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
// message.MessageTime = TimeStamp.FromDateTime(DateTime.UtcNow);
|
|
// message.CallPlayersFromGroupReq = new ServerMessage.Types.CallPlayersFromGroupReq
|
|
// {
|
|
// UserGroup = userGroup,
|
|
// ServerName = GameServer.Instance.ServerName,
|
|
// GMName = GMName,
|
|
// PosX = pos.X,
|
|
// PosY = pos.Y,
|
|
// PosZ = pos.Z,
|
|
// RoomId = roomId
|
|
// };
|
|
|
|
// string messageJson = pb.JsonFormatter.Default.Format(message);
|
|
// var body = Encoding.UTF8.GetBytes(messageJson);
|
|
|
|
// if (null == _exchange_channel)
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// _exchange_channel.BasicPublish(exchange: EXCHANGE_NAME,
|
|
// routingKey: "",
|
|
// basicProperties: null,
|
|
// body: body);
|
|
// }
|
|
|
|
// public void SendChat(string chatMessage, string sender, int chatType)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
// message.MessageTime = TimeStamp.FromDateTime(DateTime.UtcNow);
|
|
// message.Chat = new ServerMessage.Types.Chat();
|
|
// message.Chat.Sender = sender;
|
|
// message.Chat.Message = chatMessage;
|
|
// message.Chat.Receiver = "";
|
|
// message.Chat.Receiverid = "";
|
|
// message.Chat.Receiverstate = 0;
|
|
// message.Chat.Type = chatType;
|
|
|
|
// string messageJson = pb.JsonFormatter.Default.Format(message);
|
|
// var body = Encoding.UTF8.GetBytes(messageJson);
|
|
|
|
// if (null == _exchange_channel)
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// _exchange_channel.BasicPublish( exchange: EXCHANGE_NAME,
|
|
// routingKey: "",
|
|
// basicProperties: null,
|
|
// body: body);
|
|
// }
|
|
|
|
// public void SendExchangeMannequinDisplayItemNoti(string anchorGuid, List<int> displayItmeIds)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
// message.MessageTime = TimeStamp.FromDateTime(DateTime.UtcNow);
|
|
// message.ExchangeMannequinDisplayItemNoti = new();
|
|
// message.ExchangeMannequinDisplayItemNoti.AnchorGuid = anchorGuid;
|
|
// message.ExchangeMannequinDisplayItemNoti.DisplayItemIds.AddRange(displayItmeIds);
|
|
|
|
// string messageJson = pb.JsonFormatter.Default.Format(message);
|
|
// var body = Encoding.UTF8.GetBytes(messageJson);
|
|
|
|
// if (null == _exchange_channel)
|
|
// {
|
|
// return;
|
|
// }
|
|
|
|
// _exchange_channel.BasicPublish(exchange: EXCHANGE_NAME,
|
|
// routingKey: "",
|
|
// basicProperties: null,
|
|
// body: body);
|
|
// }
|
|
|
|
// public void SendInvitePartyNoti(string destServer , string inviteHostNickname, string inviteMemberAccountId)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.InvitePartyNoti = new();
|
|
// message.InvitePartyNoti.InviteHostNickname = inviteHostNickname;
|
|
// message.InvitePartyNoti.InviteMemberAccountId = inviteMemberAccountId;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendReplyInvitePartyNoti(string destServer, string inviteHostAccountId, string inviteMemberAccountId, string inviteMemberNickname, int result)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.ReplyInvitePartyNoti = new();
|
|
// message.ReplyInvitePartyNoti.InviteHostAccountId = inviteHostAccountId;
|
|
// message.ReplyInvitePartyNoti.InviteMemberAccountId = inviteMemberAccountId;
|
|
// message.ReplyInvitePartyNoti.InviteMemberNickname = inviteMemberNickname;
|
|
// message.ReplyInvitePartyNoti.Result = result;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendJoiningPartyFlagResetNoti(string destServer, string targetAccountId)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.JoiningPartyFlagResetNoti = new();
|
|
// message.JoiningPartyFlagResetNoti.TargetAccountId = targetAccountId;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendCreatePartyNoti(string destServer, string joinPartyMemberAccountId, string createPartyGuid)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.CreatePartyNoti = new();
|
|
// message.CreatePartyNoti.JoinPartyMemberAccountId = joinPartyMemberAccountId;
|
|
// message.CreatePartyNoti.CreatePartyGuid = createPartyGuid;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendJoinPartyMemberNoti(string destServer, string partyGuid, PartyMemberInfo joinMemberInfo)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.JoinPartyMemberNoti = new();
|
|
// message.JoinPartyMemberNoti.PartyGuid = partyGuid;
|
|
// message.JoinPartyMemberNoti.JoinPartyMemberInfo = JsonConvert.SerializeObject(joinMemberInfo);
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendLeavePartyMemberNoti(string destServer, string partyGuid, string leavePartyMemberCharGuid, int isBan)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.LeavePartyMemberNoti = new();
|
|
// message.LeavePartyMemberNoti.PartyGuid = partyGuid;
|
|
// message.LeavePartyMemberNoti.LeavePartyMemberCharGuid = leavePartyMemberCharGuid;
|
|
// message.LeavePartyMemberNoti.IsBan = isBan;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendAddPartyServerNameNoti(string destServer, string partyGuid, string addServerName)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.AddPartyServerNameNoti = new();
|
|
// message.AddPartyServerNameNoti.PartyGuid = partyGuid;
|
|
// message.AddPartyServerNameNoti.AddServerName = addServerName;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendRemovePartyServerNameNoti(string destServer, string partyGuid, string removeServerName)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.RemovePartyServerNameNoti = new();
|
|
// message.RemovePartyServerNameNoti.PartyGuid = partyGuid;
|
|
// message.RemovePartyServerNameNoti.RemoveServerName = removeServerName;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendChangePartyLeaderNoti(string destServer, string partyGuid, string newPartyLeaderNickname)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.ChangePartyLeaderNoti = new();
|
|
// message.ChangePartyLeaderNoti.PartyGuid = partyGuid;
|
|
// message.ChangePartyLeaderNoti.NewPartyLeaderNickname = newPartyLeaderNickname;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendExchangePartyNameNoti(string destServer, string partyGuid, string newPartyName)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.ExchangePartyNameNoti = new();
|
|
// message.ExchangePartyNameNoti.PartyGuid = partyGuid;
|
|
// message.ExchangePartyNameNoti.NewPartyName = newPartyName;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendExchangePartyMemberMarkNoti(string destServer, string partyGuid, string memberNickname, int markId)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.ExchangePartyMemberMarkNoti = new();
|
|
// message.ExchangePartyMemberMarkNoti.PartyGuid = partyGuid;
|
|
// message.ExchangePartyMemberMarkNoti.MemberNickname = memberNickname;
|
|
// message.ExchangePartyMemberMarkNoti.MarkId = markId;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendBanPartyNoti(string destServer, string partyGuid, string memberAccountId)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.BanPartyNoti = new();
|
|
// message.BanPartyNoti.PartyGuid = partyGuid;
|
|
// message.BanPartyNoti.BanMemberAccountId = memberAccountId;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendSummonPartyMemberNoti(string destServer, string summonerAccountId, string memberAccountId, string memberNickname, string serverName, Pos pos)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.SummonPartyMemberNoti = new();
|
|
// message.SummonPartyMemberNoti.SummonerAccountId = summonerAccountId;
|
|
// message.SummonPartyMemberNoti.SummonMemberAccountId = memberAccountId;
|
|
// message.SummonPartyMemberNoti.SummonMemberNickname = memberNickname;
|
|
// message.SummonPartyMemberNoti.SummonServerName = serverName;
|
|
// message.SummonPartyMemberNoti.SummonPos = pos;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendReplySummonPartyMemberNoti(string destServer, string summonerAccountId, string summonMemberNickname, SummonPartyMemberResultType result)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.ReplySummonPartyMemberNoti = new();
|
|
// message.ReplySummonPartyMemberNoti.SummonerAccountId = summonerAccountId;
|
|
// message.ReplySummonPartyMemberNoti.SummonMemberNickname = summonMemberNickname;
|
|
// message.ReplySummonPartyMemberNoti.Result = result;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendPartyVoteNoti(string destServer, string partyGuid, string voteInfo)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.PartyVoteNoti = new();
|
|
// message.PartyVoteNoti.PartyGuid = partyGuid;
|
|
// message.PartyVoteNoti.VoteInfo = voteInfo;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendReplyPartyVoteNoti(string destServer, string partyGuid, int result)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.ReplyPartyVoteNoti = new();
|
|
// message.ReplyPartyVoteNoti.PartyGuid = partyGuid;
|
|
// message.ReplyPartyVoteNoti.Result = result;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendPartyVoteResultNoti(string destServer, string partyGuid, int resultTrue, int resultFalse, int abandon)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.PartyVoteResultNoti = new();
|
|
// message.PartyVoteResultNoti.PartyGuid = partyGuid;
|
|
// message.PartyVoteResultNoti.ResultTrue = resultTrue;
|
|
// message.PartyVoteResultNoti.ResultFalse = resultFalse;
|
|
// message.PartyVoteResultNoti.Abandon = abandon;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendPartyInstanceInfoNoti(string destServer, string partyGuid, PartyInstanceInfo partyInstanceInfo)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.PartyInstanceInfoNoti = new();
|
|
// message.PartyInstanceInfoNoti.PartyGuid = partyGuid;
|
|
// message.PartyInstanceInfoNoti.PartyInstanceInfo = JsonConvert.SerializeObject(partyInstanceInfo);
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendPartyChat(string destServer, string partyGuid, ClientToGame chatMessage)
|
|
// {
|
|
// ServerMessage message = new();
|
|
|
|
// message.Chat = new();
|
|
// message.Chat.Type = chatMessage.Message.Chat.Type;
|
|
// message.Chat.Sender = chatMessage.Message.Chat.Sender;
|
|
// message.Chat.Receiver = partyGuid;
|
|
// message.Chat.Receiverstate = chatMessage.Message.Chat.Receiverstate;
|
|
// message.Chat.Message = chatMessage.Message.Chat.Message;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendPartyMemberInfoNoti(string destServer, string partyGuid, PartyMemberInfo partyMemberInfo)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.PartyMemberInfoNoti = new();
|
|
// message.PartyMemberInfoNoti.PartyGuid = partyGuid;
|
|
// message.PartyMemberInfoNoti.MemberInfo = JsonConvert.SerializeObject(partyMemberInfo);
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void SendCancelSummonPartyMemberNoti(string destServer, string partyGuid)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.CancelSummonPartyMemberNoti = new();
|
|
// message.CancelSummonPartyMemberNoti.PartyGuid = partyGuid;
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
|
|
// public void sendPartyMemberLocationNoti(string destServer, string partyGuid, PartyMemberInfo partyMemberInfo)
|
|
// {
|
|
// ServerMessage message = new ServerMessage();
|
|
|
|
// message.PartyMemberLocationNoti = new();
|
|
// message.PartyMemberLocationNoti.PartyGuid = partyGuid;
|
|
// message.PartyMemberLocationNoti.MemberInfo = JsonConvert.SerializeObject(partyMemberInfo);
|
|
|
|
// SendMessage(destServer, message);
|
|
// }
|
|
// }
|
|
//}
|