📄 rmproc.cpp
字号:
#include "stdafx.h"
#include "LowerLayers\\inetwork.h"
#include "LowerLayers\\ServerTable.h"
#include "RMDefine.h"
#include "HigherLayers\\KickOffAll.h" // BBD 040110
extern void __stdcall ReLoadGameServerDataByKeyInput(DWORD dwValue); //020511 lsw
CKickOffAll g_KickMgr; // BBD 040110
void RMProc(DWORD dwConnectionIndex, char* pMsg, DWORD dwLength)
{
BYTE header;
memcpy(&header, pMsg + 1, 1);
switch (header)
{
case MSG_SHUT_DOWN:
{
g_pServerTable->DestroyServer(FINISH_TYPE_NORMAL);
break;
}
case MSG_RELOAD_GAMESERVER_DATA:
{
ReLoadGameServerDataByKeyInput(0);
break;
}
case MSG_CHANGE_WEATHER: //努扼捞攫飘甸俊霸 皋技瘤 谎妨扼~
{
PACKET_CHANGE_WEATHER *rcvPacket = (PACKET_CHANGE_WEATHER*)pMsg;
t_packet packet;
packet.h.header.type = CMD_RM_CHANGE_WEATHER;
packet.h.header.size = sizeof(t_rm_change_weather);
packet.u.RmChangeWeather.bWeather = rcvPacket->bWeather;
packet.u.RmChangeWeather.dwAmount = rcvPacket->dwAmount;
packet.u.RmChangeWeather.bStopWeather = rcvPacket->bStopWeather;
for (int cn = DRAGON_CONNECTIONS_START ; cn < DRAGON_MAX_CONNECTIONS ; cn ++)
{
if(connections[cn].dwAgentConnectionIndex && connections[cn].state >= CONNECT_JOIN)
{
QueuePacket(connections, cn, &packet, 1);
}
}
break;
}
case MSG_ECHO:
{ // Echo
if (g_pINet)
{
g_pINet->SendToServer(dwConnectionIndex, pMsg, dwLength, FLAG_SEND_NOT_ENCRYPTION);
}
break;
}
//<! BBD 040110 RM栏肺 傈力立加阑 辆丰矫累
case MSG_RM_KICKOFF_USER_ALL: // 傈眉 蜡历甫 甘辑滚啊 瞒肥措肺 肋扼霖促
{
if(!g_KickMgr.IsKicking()) // 柳青吝 促矫 甸绢坷搁 公矫茄促
{
//<! BBD 040401
if(g_KickMgr.InitKickOffUserAll())
{
MyLog( LOG_NORMAL, "Start Blocking Agent -> Map Join" );
MyLog( LOG_NORMAL, "Start Blocking Map -> Map Move" ); // BBD 040329
}
//> BBD 040401
}
break;
}
//> BBD 040110 RM栏肺 傈力立加阑 辆丰矫累
//<! BBD 040110 RM栏肺 老沥荐狼 立加蜡历甫 磊弗促
case MSG_RM_KICKOFF_USER_SEVERAL:
{
g_KickMgr.KickOffSeverlUser();
break;
}
//> BBD 040110 RM栏肺 老沥荐狼 立加蜡历甫 磊弗促
//<! BBD 040110 Agent狼 甘辑滚 炼牢 倾侩
case MSG_RM_KICKOFF_AGENTCANJOIN:
{
//<! BBD 040401
if(g_KickMgr.IsKicking()) // 疟吝老锭父 贸府
{
g_KickMgr.StopKicking();
MyLog( LOG_NORMAL, "End Blocking Agent -> Map Join" );
MyLog( LOG_NORMAL, "End Blocking Map -> Map Move" ); // BBD 040329
}
//> BBD 040401
break;
}
//> BBD 040110 Agent狼 甘辑滚 炼牢 倾侩
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -