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

📄 gcnpcinfo.cpp

📁 天之炼狱1服务器端源文件游戏服务端不完整
💻 CPP
字号:
//-------------------------------------------------------------------------------- // // Filename    : GCNPCInfo.cpp // Written By  : reiot@ewestsoft.com// Description : // //--------------------------------------------------------------------------------// include files#include "GCNPCInfo.h"#include "PCSlayerInfo2.h"#include "PCVampireInfo2.h"#include "Assert.h"// for client.. by sigi#ifndef SAFE_DELETE	#define SAFE_DELETE(p)	if (p!=NULL) { delete p; p=NULL; }#endif//--------------------------------------------------------------------------------// constructor//--------------------------------------------------------------------------------GCNPCInfo::GCNPCInfo ()	throw (){}//--------------------------------------------------------------------------------// destructor//--------------------------------------------------------------------------------GCNPCInfo::~GCNPCInfo ()	throw (){#ifdef __GAME_CLIENT__	list<NPCInfo*>::iterator itr = m_NPCInfos.begin();	for (; itr != m_NPCInfos.end(); itr++)	{		NPCInfo* pInfo = *itr;		SAFE_DELETE(pInfo);	}#else	m_NPCInfos.clear();#endif}//--------------------------------------------------------------------------------// 涝仿胶飘覆(滚欺)栏肺何磐 单捞鸥甫 佬绢辑 菩哦阑 檬扁拳茄促.//--------------------------------------------------------------------------------void GCNPCInfo::read ( SocketInputStream & iStream ) 	 throw ( ProtocolException , Error ){	__BEGIN_TRY			//////////////////////////////////////////////////	// read npc info	//////////////////////////////////////////////////	BYTE NPCInfoCount = 0;	iStream.read(NPCInfoCount);	for (BYTE nc=0; nc<NPCInfoCount; nc++)	{		NPCInfo* pInfo = new NPCInfo;		pInfo->read(iStream);		addNPCInfo(pInfo);	}	__END_CATCH}		    //--------------------------------------------------------------------------------// 免仿胶飘覆(滚欺)栏肺 菩哦狼 官捞呈府 捞固瘤甫 焊辰促.//--------------------------------------------------------------------------------void GCNPCInfo::write ( SocketOutputStream & oStream ) const      throw ( ProtocolException , Error ){	__BEGIN_TRY	//////////////////////////////////////////////////	// write npc info	//////////////////////////////////////////////////	BYTE NPCInfoCount = m_NPCInfos.size();	oStream.write(NPCInfoCount);	list<NPCInfo*>::const_iterator itr = m_NPCInfos.begin();	for (; itr != m_NPCInfos.end(); itr++)	{		NPCInfo* pInfo = *itr;		pInfo->write(oStream);	}			__END_CATCH}//--------------------------------------------------------------------------------// execute packet's handler//--------------------------------------------------------------------------------void GCNPCInfo::execute ( Player * pPlayer ) 	 throw ( ProtocolException , Error ){	__BEGIN_TRY			GCNPCInfoHandler::execute( this , pPlayer );	__END_CATCH}//--------------------------------------------------------------------------------// get packet's debug string//--------------------------------------------------------------------------------string GCNPCInfo::toString () const       throw (){	__BEGIN_TRY			StringStream msg;		msg << "GCNPCInfo("		<< "NPCInfos:";	list<NPCInfo*>::const_iterator itr = m_NPCInfos.begin();	for (; itr != m_NPCInfos.end(); itr++)	{		NPCInfo* pInfo = *itr;		msg << pInfo->toString();	}	msg << ")";	return msg.toString();	__END_CATCH}

⌨️ 快捷键说明

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