초기커밋
This commit is contained in:
149
GameServer/Contents/MyHome/Helper/MyhomeNotifyHelper.cs
Normal file
149
GameServer/Contents/MyHome/Helper/MyhomeNotifyHelper.cs
Normal file
@@ -0,0 +1,149 @@
|
||||
using MongoDB.Bson.Serialization.Conventions;
|
||||
using ServerCommon;
|
||||
using ServerCore; using ServerBase;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using static ClientToGameMessage.Types;
|
||||
|
||||
namespace GameServer
|
||||
{
|
||||
internal static class MyhomeNotifyHelper
|
||||
{
|
||||
public static bool send_S2C_MYHOME_INFO_NOTI(this Player player)
|
||||
{
|
||||
var ntf_packet = new ClientToGame();
|
||||
ntf_packet.Message = new ClientToGameMessage();
|
||||
ntf_packet.Message.MyHomeInfoNoti = new MyHomeInfoNoti();
|
||||
|
||||
var myhome_agent_action = player.getEntityAction<MyhomeAgentAction>();
|
||||
NullReferenceCheckHelper.throwIfNull(myhome_agent_action, () => $"myhome_agent_action is null !!!");
|
||||
|
||||
if (myhome_agent_action.tryGetSelectedMyhome(out var select_myhome))
|
||||
{
|
||||
var myhome_attribute = select_myhome.getEntityAttribute<MyhomeAttribute>();
|
||||
NullReferenceCheckHelper.throwIfNull(myhome_attribute, () => $"myhome_attribute is null !!!");
|
||||
|
||||
ntf_packet.Message.MyHomeInfoNoti.SelectedMyhomeGuid = myhome_attribute.MyhomeGuid;
|
||||
}
|
||||
|
||||
var user_contents_setting_attribute = player.getEntityAttribute<UserContentsSettingAttribute>();
|
||||
NullReferenceCheckHelper.throwIfNull(user_contents_setting_attribute, () => $"user_contents_setting_attribute is null !!!");
|
||||
|
||||
ntf_packet.Message.MyHomeInfoNoti.OpenSlotCount = user_contents_setting_attribute.MyhomeSlotOpenCount;
|
||||
|
||||
if (false == GameServerApp.getServerLogic().onSendPacket(player, ntf_packet))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static bool send_S2C_NTF_MYHOME_INFO(this Player player)
|
||||
{
|
||||
var myhome_agent_action = player.getEntityAction<MyhomeAgentAction>();
|
||||
NullReferenceCheckHelper.throwIfNull(myhome_agent_action, () => $"myhome_agent_action is null !!!");
|
||||
|
||||
var myhomes = myhome_agent_action.getMyHomes();
|
||||
foreach (var myhome in myhomes)
|
||||
{
|
||||
var ntf_packet = new ClientToGame();
|
||||
ntf_packet.Message = new ClientToGameMessage();
|
||||
ntf_packet.Message.NtfMyhomeInfo = new GS2C_NTF_MYHOME_INFO();
|
||||
|
||||
var myhome_action = myhome.getEntityAction<MyhomeAction>();
|
||||
NullReferenceCheckHelper.throwIfNull(myhome_action, () => $"myhome_action is null !!!");
|
||||
|
||||
var myhome_info = myhome_action.toMyHomeInfo();
|
||||
ntf_packet.Message.NtfMyhomeInfo.MyhomeInfo = myhome_info;
|
||||
|
||||
if (false == GameServerApp.getServerLogic().onSendPacket(player, ntf_packet))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
public static ClientToGame makeNtfMyHomeAddPacket(int myhome_meta_id)
|
||||
{
|
||||
var ntf_packet = new ClientToGame();
|
||||
ntf_packet.Message = new ClientToGameMessage();
|
||||
ntf_packet.Message.MyHomeAddNoti = new MyHomeAddNoti();
|
||||
|
||||
ntf_packet.Message.MyHomeAddNoti.MyHomeId = myhome_meta_id;
|
||||
|
||||
return ntf_packet;
|
||||
}
|
||||
|
||||
public static bool send_S2C_NTF_MYHOME_UGC_INFO(Player player, MyHomeInfo myhomeInfo)
|
||||
{
|
||||
var ntf_packet = new ClientToGame();
|
||||
ntf_packet.Message = new ClientToGameMessage();
|
||||
ntf_packet.Message.NtfMyhomeUgcInfo = new GS2C_NTF_MYHOME_UGC_INFO();
|
||||
ntf_packet.Message.NtfMyhomeUgcInfo.MyhomeGuid = myhomeInfo.MyhomeGuid;
|
||||
ntf_packet.Message.NtfMyhomeUgcInfo.MyhomeUgcInfo = myhomeInfo.MyhomeUgcInfo;
|
||||
|
||||
if (false == GameServerApp.getServerLogic().onSendPacket(player, ntf_packet))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static bool send_GS2GS_NTF_EXCHANGE_MYHOME(string destServer, string roomId, string myhomeGuid, MyHomeInfo myhomeInfo)
|
||||
{
|
||||
var message = new ServerMessage();
|
||||
message.NtfExchangeMyhome = new();
|
||||
message.NtfExchangeMyhome.RoomId = roomId;
|
||||
message.NtfExchangeMyhome.MyhomeGuid = myhomeGuid;
|
||||
message.NtfExchangeMyhome.MyhomeInfo = myhomeInfo;
|
||||
|
||||
var server_logic = GameServerApp.getServerLogic();
|
||||
|
||||
var rabbit_mq = server_logic.getRabbitMqConnector() as RabbitMQ4Game;
|
||||
ArgumentNullException.ThrowIfNull(rabbit_mq);
|
||||
|
||||
rabbit_mq.SendMessage(destServer, message);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static bool send_GS2C_NTF_MYHOME_HOST_ENTER_EDIT_ROOM(Player player)
|
||||
{
|
||||
var ntf_packet = new ClientToGame();
|
||||
ntf_packet.Message = new ClientToGameMessage();
|
||||
ntf_packet.Message.NtfMyhomeHostEnterEditRoom = new GS2C_NTF_MYHOME_HOST_ENTER_EDIT_ROOM();
|
||||
|
||||
if (false == GameServerApp.getServerLogic().onSendPacket(player, ntf_packet))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
public static bool send_GS2GS_NTF_MYHOME_HOST_ENTER_EDIT_ROOM(string destServer, string roomId, string exceptUserGuid)
|
||||
{
|
||||
var message = new ServerMessage();
|
||||
message.NtfMyhomeHostEnterEditRoom = new();
|
||||
message.NtfMyhomeHostEnterEditRoom.RoomId = roomId;
|
||||
message.NtfMyhomeHostEnterEditRoom.ExceptUserGuid = exceptUserGuid;
|
||||
|
||||
var server_logic = GameServerApp.getServerLogic();
|
||||
|
||||
var rabbit_mq = server_logic.getRabbitMqConnector() as RabbitMQ4Game;
|
||||
ArgumentNullException.ThrowIfNull(rabbit_mq);
|
||||
|
||||
rabbit_mq.SendMessage(destServer, message);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user