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

📄 eventtransport.cpp

📁 天之炼狱1服务器端源文件游戏服务端不完整
💻 CPP
字号:
//////////////////////////////////////////////////////////////////////////////// Filename    : EventTransport.cpp// Written by  : Reiot// Description : //////////////////////////////////////////////////////////////////////////////#include "EventTransport.h"#include "GamePlayer.h"#include "Zone.h"#include "PlayerStatus.h"#include "ZoneGroup.h"#include "ZonePlayerManager.h"#include "PlayerStatus.h"#include "ZoneUtil.h"#include "PlayerCreature.h"#include "RelicUtil.h"#include "CreatureUtil.h"#include "StringPool.h"	#include "Gpackets/GCSystemMessage.h"#include <stdio.h>//////////////////////////////////////////////////////////////////////////////// class EventTransport member methods//////////////////////////////////////////////////////////////////////////////EventTransport::EventTransport(GamePlayer* pGamePlayer) 	throw(): Event(pGamePlayer){//	m_pTransportZone = NULL;//	m_X = m_Y = 0;}EventTransport::~EventTransport() 	throw(){}//----------------------------------------------------------------------// affect//----------------------------------------------------------------------void EventTransport::sendMessage()	throw(Error){	__BEGIN_TRY	Assert(m_pGamePlayer != NULL);	Creature * pCreature = m_pGamePlayer->getCreature();	Timeval currentTime;	getCurrentTime(currentTime);	Turn_t       RemainTime = max(0, (int)(m_Deadline.tv_sec-currentTime.tv_sec));//	StringStream msg;//	msg << (int)RemainTime << "檬 饶俊 " << m_ZoneName << "肺 捞悼邓聪促.";    char msg[50];    sprintf( msg, g_pStringPool->c_str( STRID_TRANSPORT_CREATURE ),                    (int)RemainTime,                    m_ZoneName.c_str() );    string sMsg( msg );	GCSystemMessage gcSystemMessage;	gcSystemMessage.setMessage(sMsg);	pCreature->getPlayer()->sendPacket( &gcSystemMessage );	//setNextTime( m_MessageTick );	__END_CATCH}void EventTransport::activate () 	throw (Error){	__BEGIN_TRY	__BEGIN_DEBUG	Assert(m_pGamePlayer != NULL);	Creature * pCreature = m_pGamePlayer->getCreature();	Zone* pOldZone = pCreature->getZone();	Assert(pOldZone != NULL);	PlayerCreature* pPC = dynamic_cast<PlayerCreature*>(pCreature);	Assert(pPC!=NULL);	bool bSendPacket = true;	dropRelicToZone( pPC, bSendPacket );	dropFlagToZone( pPC, bSendPacket );	dropSweeperToZone( pPC, bSendPacket );	// Zone俊辑 力芭茄促.	pOldZone->deleteCreature( pCreature, pCreature->getX(), pCreature->getY() );	// 捞悼秦具且 Zone阑 汲沥茄促.	pCreature->setNewZone( getZoneByZoneID(m_ZoneID) );	pCreature->setNewXY( m_X, m_Y );	try 	{		// 粮弊缝狼 ZPM俊辑 敲饭捞绢甫 昏力茄促.		pOldZone->getZoneGroup()->getZonePlayerManager()->deletePlayer(m_pGamePlayer->getSocket()->getSOCKET());		// 咯扁辑 汲沥秦拎具瘤父 Save 捞亥飘啊 IPM俊辑 悼累窍瘤 臼绰促.		m_pGamePlayer->setPlayerStatus(GPS_WAITING_FOR_CG_READY);		// IPM栏肺 敲饭捞绢甫 颗变促.		//g_pIncomingPlayerManager->pushPlayer(m_pGamePlayer);		pOldZone->getZoneGroup()->getZonePlayerManager()->pushOutPlayer(m_pGamePlayer);	} 	catch (NoSuchElementException& t) 	{		filelog("eventTransport.txt", "%s", t.toString().c_str());		cerr << "EventTransport::activate() : NoSuchElementException" << endl;		throw Error("粮俊 敲饭捞绢啊 粮犁窍瘤 臼嚼聪促.");	}	__END_DEBUG	__END_CATCH}string EventTransport::toString () const 	throw (){	StringStream msg;	msg << "EventTransport("		<< ")";	return msg.toString();}

⌨️ 快捷键说明

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