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

📄 gmserverinfo.cpp

📁 天之炼狱1服务器端源文件游戏服务端不完整
💻 CPP
字号:
//////////////////////////////////////////////////////////////////////// // Filename    : GMServerInfo.cpp // Written By  : reiot@ewestsoft.com// Description : // //////////////////////////////////////////////////////////////////////// include files#include "GMServerInfo.h"//////////////////////////////////////////////////////////////////////////////// constructor//////////////////////////////////////////////////////////////////////////////GMServerInfo::GMServerInfo ()      throw (){	__BEGIN_TRY	m_ZoneCount = 0;	__END_CATCH}	//////////////////////////////////////////////////////////////////////////////// destructor//////////////////////////////////////////////////////////////////////////////GMServerInfo::~GMServerInfo ()     throw (){	__BEGIN_TRY	m_ZoneUserList.clear();	__END_CATCH}//////////////////////////////////////////////////////////////////////// execute packet's handler//////////////////////////////////////////////////////////////////////void GMServerInfo::execute ( Player * pPlayer ) 	 throw ( ProtocolException , Error ){	__BEGIN_TRY			GMServerInfoHandler::execute( this );			__END_CATCH}//////////////////////////////////////////////////////////////////////////////// 涝仿胶飘覆(滚欺)栏肺何磐 单捞鸥甫 佬绢辑 菩哦阑 檬扁拳茄促.//////////////////////////////////////////////////////////////////////////////void GMServerInfo::read ( Datagram & iDatagram ) 	 throw ( ProtocolException , Error ){	__BEGIN_TRY			iDatagram.read(m_WorldID);	iDatagram.read(m_ServerID);	ZONEUSERDATA zoneuser_data;	iDatagram.read(m_ZoneCount);	for (BYTE s=0; s<m_ZoneCount; s++)	{		iDatagram.read(zoneuser_data.ZoneID);		iDatagram.read(zoneuser_data.UserNum);		m_ZoneUserList.push_back(zoneuser_data);	}	__END_CATCH}//////////////////////////////////////////////////////////////////////////////// 免仿胶飘覆(滚欺)栏肺 菩哦狼 官捞呈府 捞固瘤甫 焊辰促.//////////////////////////////////////////////////////////////////////////////void GMServerInfo::write ( Datagram & oDatagram )      const throw ( ProtocolException , Error ){	__BEGIN_TRY		oDatagram.write(m_WorldID);	oDatagram.write(m_ServerID);	oDatagram.write(m_ZoneCount);	list<ZONEUSERDATA>::const_iterator zoneuser_itr = m_ZoneUserList.begin();	for (; zoneuser_itr != m_ZoneUserList.end(); zoneuser_itr++)	{		ZONEUSERDATA zoneuser_data = *zoneuser_itr;		oDatagram.write(zoneuser_data.ZoneID);		oDatagram.write((WORD)zoneuser_data.UserNum);	}	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////string GMServerInfo::toString () 	const throw (){	__BEGIN_TRY	StringStream msg;	msg << "[GMServerInfo]"		<< "ZoneNum:" << (int)m_ZoneCount		<< ", ZoneUser(";	int total = 0;	list<ZONEUSERDATA>::const_iterator zoneuser_itr = m_ZoneUserList.begin();	for (; zoneuser_itr != m_ZoneUserList.end(); zoneuser_itr++)	{		ZONEUSERDATA zoneuser_data = *zoneuser_itr;		msg << (int)zoneuser_data.ZoneID << ":"			<< (int)zoneuser_data.UserNum << ", ";		total += zoneuser_data.UserNum;	}	msg << "), Total( " << total << " )";	return msg.toString();	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void GMServerInfo::addZoneUserData(ZoneID_t ZoneID, DWORD UserNum)	    throw(){	__BEGIN_TRY	ZONEUSERDATA zoneuser_data;	zoneuser_data.ZoneID = ZoneID;	zoneuser_data.UserNum = UserNum;	m_ZoneUserList.push_back(zoneuser_data);	m_ZoneCount++;	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void GMServerInfo::popZoneUserData(ZONEUSERDATA& rData)	    throw(){	__BEGIN_TRY	ZONEUSERDATA zoneuser_data = m_ZoneUserList.front();	rData.ZoneID = zoneuser_data.ZoneID;	rData.UserNum = zoneuser_data.UserNum;	m_ZoneUserList.pop_front();	m_ZoneCount--;	__END_CATCH}

⌨️ 快捷键说明

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