⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cudpsocket.cpp

📁 韩国英雄王座倒闭后流出来部分源代码
💻 CPP
📖 第 1 页 / 共 3 页
字号:
////////////////////////////////////////////////////////////////////////////////////////
//	World Server俊辑 八祸	荤侩磊 沥焊甫	掘澜
//
////////////////////////////////////////////////////////////////////////////////////////
void UDPPacket_Rep_FindPlayer(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{
	if( !lpUdpPacket->pSocketFD )	return;

	_LPZC_FINDPLAYER_REP p = (_LPZC_FINDPLAYER_REP)lpUdpPacket->strPacket;

	switch( p->nOP )
	{
	//	--------------------------------------------------------------------------------
	//	老馆 蓖加富 荤侩磊 茫扁 
	//	--------------------------------------------------------------------------------
	case 0:	
			{
				MessagePrint("Player FD(%d) (%s) (%d/%d)", lpUdpPacket->pSocketFD, p->strPlayerID,p->wX,p->wY) ;
				g_pServer->PacketSend_FindPlayer( (_LPSOCKET_FD)lpUdpPacket->pSocketFD , p->strPlayerID, p->nResult );
			}		
			break;

	//	--------------------------------------------------------------------------------
	//	GM 荤侩磊 困摹	免仿
	//	--------------------------------------------------------------------------------
	case GM_CMD_FINDPLAYER:
			{
				//	秦寸 荤侩磊甫 茫瘤 给茄 版快
				if( !p->nResult	)
				{
						g_pServer->PacketSend_WarningMsg
						(
							(_LPSOCKET_FD) lpUdpPacket->pSocketFD,
							MSG_GM_DONTFINDPLAYER_GAMEWORLD	
						);
				}
				//	秦寸 荤侩磊甫 茫篮	版快
				else
				{
					g_pServer->PacketSend_WarningMsg
						(
							(_LPSOCKET_FD) lpUdpPacket->pSocketFD	,
							MSG_GM_PLAYERFIND_REMOTELOCALMAP		,
							p->strPlayerID, p->dwMapID, p->wX,	p->wY
						);
				}

			}		
			break;

	//	--------------------------------------------------------------------------------
	//	102	:	GM捞  荤侩磊 困摹肺 捞悼 
	//	--------------------------------------------------------------------------------
	case GM_CMD_TELEPORTPLAYER:
			{
				//	--------------------------------------------------------------------
				//	秦寸 荤侩磊甫 茫瘤 给茄 版快
				//	--------------------------------------------------------------------
				if( !p->nResult	)
				{
					g_pServer->PacketSend_WarningMsg(
							(_LPSOCKET_FD) lpUdpPacket->pSocketFD,
							MSG_GM_DONTFINDPLAYER_GAMEWORLD	);
				}
				//	--------------------------------------------------------------------
				//	秦寸 荤侩磊甫 茫篮 版快 - 秦寸 甘 困摹肺 捞悼
				//
				//	-	眠饶 包访 风凭阑 埃家拳 矫糯
				//	--------------------------------------------------------------------
				else
				{
					_LPZEMIPACKET lpSendPacket  =	 g_pServerMem->ZemiPacket_Pop();	
					
						_LPZG_MOVEMAP_ASK	pMoveMap = (_LPZG_MOVEMAP_ASK)lpSendPacket->strPacket;

						memcpy( pMoveMap->strPlayerID, p->strPlayerID, sizeof( pMoveMap->strPlayerID ) );
						pMoveMap->dwMapID		=	p->dwMapID;
						pMoveMap->nX			=	p->wX;
						pMoveMap->nY			=	p->wY;

						PacketGM_MoveMap(g_pServer, (_LPSOCKET_FD) lpUdpPacket->pSocketFD, lpSendPacket );
							
					g_pServerMem->ZemiPacket_Push( lpSendPacket );
				}

			}		
			break;

	default	:	break;
	}
}

////////////////////////////////////////////////////////////////////////////////////////
//
//
////////////////////////////////////////////////////////////////////////////////////////
void UDPPacket_Rep_ChatWhisper(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{
	_LPZC_CHATWHISPER_REP p = (_LPZC_CHATWHISPER_REP)(lpUdpPacket->strPacket);

	if (p->nResult == 0)
	{
		g_pServer->PacketSend_WarningMsg((_LPSOCKET_FD) lpUdpPacket->pSocketFD , MSG_CHAT_DONTFINDPLAYER );
	}
	else
	{
		g_pServer->PacketSend_WarningMsg((_LPSOCKET_FD) lpUdpPacket->pSocketFD , MSG_CHAT_CHATREFUSE );
	}
}


////////////////////////////////////////////////////////////////////////////////////////
//
//
////////////////////////////////////////////////////////////////////////////////////////
void UDPPacket_Ask_ChatWhisper(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{
	_LPZP_CHATWHISPER_ASK p = (_LPZP_CHATWHISPER_ASK)(lpUdpPacket->strPacket);
		
	//	庇富 惑措甫 茫澜 
	_LPSOCKET_FD pToSocket = g_pMap->Find_Player( p->strToPlayerID );
	
	if (pToSocket)
	{
		// 庇加富 汲沥捞 登绢 乐栏搁 
		if(pToSocket->pPlayer->m_bOptionWhisper )
		{
			
#ifdef DEF_CHATWHISPER
			p->nResult = 1;
#endif
			g_pServer->PacketSend_ChatWhisperMsg( pToSocket, p	);	//	庇富 措惑磊 俊霸 Message傈价 
		}
		else
		{
		// 庇加富 汲沥捞 登绢 乐瘤 臼栏搁 庇加富 芭何 惑怕扼绊 舅妨霖促. 
			_LPUDPPACKET lpPacket = (_LPUDPPACKET) lpUdpSocket->m_pUDPIOPool->Alloc() ;

			memcpy(lpPacket , lpUdpPacket ,sizeof(_UDPPACKET)) ;

			_LPZP_CHATWHISPER_REP lpSendPacket = (_LPZP_CHATWHISPER_REP)		lpPacket->strPacket ;

			lpSendPacket->nResult = 2 ;

			lpPacket->dwCommand = ZC_CHATWHISPER_REP ;

			lpUdpSocket->SendtoWorldServer(lpPacket) ;

		}
		
	}
	
}


////////////////////////////////////////////////////////////////////////////////////////
//
//
////////////////////////////////////////////////////////////////////////////////////////
void UDPPacket_Ask_PartyChat(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{
	_LPZW_PARTYCHAT_ASK p = (_LPZW_PARTYCHAT_ASK)lpUdpPacket->strPacket;

	// 秦寸 颇萍甫 茫澜 
	CParty *pParty = g_pMap->Find_Party( p->dwPartyHandle );

	if( !pParty )	return;				//	坷幅 贸府 风凭阑眠啊 矫糯 

	pParty->Send_ChatMsg_World( p );	//	颇萍 眉泼 皋矫瘤 傈价
}


////////////////////////////////////////////////////////////////////////////////////////
//
////////////////////////////////////////////////////////////////////////////////////////
void UDPPacket_Notice(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{
	_LPZW_NOTICEMSG pNotice = (_LPZW_NOTICEMSG)(lpUdpPacket->strPacket);
	

	_LPZEMIPACKET lpSendPacket  = g_pServerMem->ZemiPacket_Pop();
	
		lpSendPacket->dwCommand	= ZP_LOGMSG_REP;
		lpSendPacket->dwSize	= sizeof( _ZP_LOGMSG_REP );

		_LPZP_LOGMSG_REP p		= (_LPZP_LOGMSG_REP)(lpSendPacket->strPacket);

		p->dwPlayerHandle		= 0;
		p->nType				= 102;					//	傍瘤 Type	
		memcpy( p->strMsg, pNotice->strMsg	, 100 );	//	Message 郴侩

		g_pServer->Send_Multi( lpSendPacket );

	g_pServerMem->ZemiPacket_Push( lpSendPacket );
}




////////////////////////////////////////////////////////////////////////////////////////
//	傍瘤 MSG傈价
////////////////////////////////////////////////////////////////////////////////////////
void  UDPPacket_GuildNoticeMsg(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{	
	g_pServer->PacketSend_GuildNoticeMsg((_LPZW_GUILDNOTICEMSG)lpUdpPacket->strPacket);	
}



////////////////////////////////////////////////////////////////////////////////////////
//	SERVER 疙飞绢 贸府
//
//	-	SERVER包访 EVENT疙飞绢
////////////////////////////////////////////////////////////////////////////////////////
#ifdef DEF_EVENTCHANGE

void  UDPPacket_ServerCommand(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{	
	_LPZC_SERVERCOMMAND p = (_LPZC_SERVERCOMMAND)lpUdpPacket->strPacket ;

	switch(p->nCOMMAND )
	{
	
	case DEF_GMCMD_DISABLEEVENT	:
		_Module.GMEventClear() ;
		break;

	case DEF_GMCMD_USERLOG:
		{
			//漂沥 某腐磐甫 茫酒 肺弊甫 巢变促.
			_LPSOCKET_FD pFindPlayer = g_pMap->Find_Player(p->strPlayerID);

			if(pFindPlayer)
			{
				pFindPlayer->bLog = p->bOnOff;
				
				//Jason Added
				_LPSOCKET_FD pGM = g_pMap->Find_Player(p->strOperator);
				if(pGM)
				{
					if(p->bOnOff)
					{
						g_pServer->PacketSend_WarningMsg( pGM,	MSG_GM_USERLOG_ON, p->strPlayerID );
					}
					else
					{
						g_pServer->PacketSend_WarningMsg( pGM,	MSG_GM_USERLOG_OFF, p->strPlayerID );
					}
				}
			}
			else //Jason Added
			{
				_LPSOCKET_FD pGM = g_pMap->Find_Player(p->strOperator);
				if(pGM)
				{
					g_pServer->PacketSend_WarningMsg( pGM,	MSG_GM_USERLOG_NOPLAYER, p->strPlayerID );
				}
			}
		}
		break;

	default:
		_Module.SetGMEvent(p->nCOMMAND,				p->bOnOff );
		break;

	}

	return ;

}

#else //  #ifdef DEF_EVENTCHANGE

////////////////////////////////////////////////////////////////////////////////////////
//	GM EVENT 疙飞阑 World Server UDP傈价窃
//
////////////////////////////////////////////////////////////////////////////////////////
void  UDPPacket_ServerCommand(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{	
	_LPZC_SERVERCOMMAND p = (_LPZC_SERVERCOMMAND)lpUdpPacket->strPacket ;

	switch(p->nCOMMAND )
	{
	case DEF_GMCMD_DROPLUCKYBAG			:	_Module.SetGMEvent(DEF_GMCMD_DROPLUCKYBAG,				p->bOnOff );	break;		//	汗林赣聪 捞亥飘

	case DEF_GMCMD_DROPGIFTBOX			:	_Module.SetGMEvent(DEF_GMCMD_DROPGIFTBOX,				p->bOnOff );	break;		//	急拱惑磊 捞亥飘

	case DEF_GMCMD_DROPRICECAKE			:	_Module.SetGMEvent(DEF_GMCMD_DROPRICECAKE,				p->bOnOff );	break;

	case DEF_GMCMD_DROPITEMONRMORE		:	_Module.SetGMEvent(DEF_GMCMD_DROPITEMONRMORE,			p->bOnOff );	break;

	case DEF_GMCMD_MONSTERSTRIKEBACK	:	_Module.SetGMEvent(DEF_GMCMD_MONSTERSTRIKEBACK,			p->bOnOff );	break;

	case DEF_GMCMD_RAREMONSTERSPAWN		:	_Module.SetGMEvent(DEF_GMCMD_RAREMONSTERSPAWN,			p->bOnOff );	break;

	case DEF_GMCMD_RAREMONSTERSTRIKEBACK:	_Module.SetGMEvent(DEF_GMCMD_RAREMONSTERSTRIKEBACK,		p->bOnOff );	break;
		
	case DEF_GMCMD_UPGRADESCROLL		:	_Module.SetGMEvent(DEF_GMCMD_UPGRADESCROLL,				p->bOnOff );	break;

	case DEF_GMCMD_JACKPOT				:	_Module.SetGMEvent(DEF_GMCMD_JACKPOT,					p->bOnOff );	break;

	case DEF_GMCMD_LEVELUP				:	_Module.SetGMEvent(DEF_GMCMD_LEVELUP,					p->bOnOff );	break;

	case DEF_GMCMD_DISABLEEVENT			:
		_Module.GMEventClear() ;
		break;

	case DEF_GMCMD_USERLOG:
		{
			//漂沥 某腐磐甫 茫酒 肺弊甫 巢变促.
			_LPSOCKET_FD pFindPlayer = g_pMap->Find_Player(p->strPlayerID);

			if(pFindPlayer)
			{
				pFindPlayer->bLog = p->bOnOff;
				
				if(p->bOnOff)
				{
					g_pServer->PacketSend_WarningMsg( pFindPlayer,	MSG_GM_USERLOG_ON, p->strPlayerID );
				}
				else
				{
					g_pServer->PacketSend_WarningMsg( pFindPlayer,	MSG_GM_USERLOG_OFF, p->strPlayerID );
				}
			}
		}
		break;

	//Jason 2004-08-26-china
	case DEF_GMCMD_BOMB:
		{
			g_pServer->ShutdownServer();
		}
		break;

	}

	return ;

}
#endif  // #ifdef DEF_EVENTCHANGE




////////////////////////////////////////////////////////////////////////////////////////
// 肋给等 皋技瘤啊 柯 版快甫 措厚秦辑 父电 窃荐 
////////////////////////////////////////////////////////////////////////////////////////
void UDPPacket_Nothing(_LPUDPSOCKET lpUdpSocket  ,_LPUDPPACKET lpUdpPacket) 
{

}


	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -