actionwarplevelwarzone.cpp

来自「dk1游戏的原代码文件,完整.编译系统redhat7.3,mysql 3.23 」· C++ 代码 · 共 123 行

CPP
123
字号
////////////////////////////////////////////////////////////////////////////////// Filename    : ActionWarpLevelWarZone.cpp// Written By  : // Description :////////////////////////////////////////////////////////////////////////////////#include "ActionWarpLevelWarZone.h"#include "Creature.h"#include "GamePlayer.h"#include "NPC.h"#include "Utility.h"#include "ZoneInfo.h"#include "ZoneUtil.h"#include "PacketUtil.h"#include "Properties.h"#include "StringPool.h"#include "VariableManager.h"#include "ZoneInfoManager.h"#include "LevelWarManager.h"#include "LevelWarZoneInfoManager.h"#include "Gpackets/GCSystemMessage.h"////////////////////////////////////////////////////////////////////////////////// read from PropertyBuffer////////////////////////////////////////////////////////////////////////////////void ActionWarpLevelWarZone::read (PropertyBuffer & propertyBuffer)    throw (Error){    __BEGIN_TRY    __END_CATCH}////////////////////////////////////////////////////////////////////////////////// 咀记阑 角青茄促.////////////////////////////////////////////////////////////////////////////////void ActionWarpLevelWarZone::execute (Creature * pCreature1 , Creature * pCreature2) 	throw (Error){	__BEGIN_TRY	Assert( pCreature2 != NULL );	Assert( pCreature2->isPC() );	GamePlayer* pGamePlayer = dynamic_cast<GamePlayer*>(pCreature2->getPlayer());		GCSystemMessage gcSystemMessage;	if ( g_pVariableManager->getVariable( ACTIVE_LEVEL_WAR ) == 0 )	{		gcSystemMessage.setMessage( g_pStringPool->getString( STRID_CANNOT_ENTER ) );		pGamePlayer->sendPacket( &gcSystemMessage );		return;	}	// 饭骇 呈公 臭篮 某腐磐绰 甸绢哎 荐 绝促	if ( g_pLevelWarZoneInfoManager->getCreatureLevelGrade( pCreature2 ) == -1 )	{		gcSystemMessage.setMessage( g_pStringPool->getString( STRID_TO_HIGH_LEVEL_FOR_LEVEL_WAR ) );		pGamePlayer->sendPacket (&gcSystemMessage);		return;	}	// 农府媚 沥焊 焊绊 舅酒辑 屁败林磊 =_=;;	ZONE_COORD pos(g_pLevelWarZoneInfoManager->getCreatureZoneID( pCreature2 ));	if ( pCreature2->isSlayer() )	{		pos.x = 12;		pos.y =  9;	}	else if ( pCreature2->isVampire() )	{		pos.x = 117;		pos.y =   8;	}	else if ( pCreature2->isOusters() )	{		pos.x =   9;		pos.y = 111;	}	#if defined(__PAY_SYSTEM_ZONE__) || defined(__PAY_SYSTEM_FREE_LIMIT__)	Zone* pZone = getZoneByZoneID( pos.id );	Assert( pZone != NULL );	LevelWarManager* pLevelWarManager = pZone->getLevelWarManager();	Assert( pLevelWarManager != NULL );	if ( !pLevelWarManager->hasWar() && !g_pVariableManager->canEnterLevelWarZoneFree() && !pGamePlayer->isPayPlaying() && !pLevelWarManager->canEnterFreeUser() )	{		gcSystemMessage.setMessage( g_pStringPool->getString( STRID_CANNOT_ENTER_LEVEL_WAR_ZONE ) );		pGamePlayer->sendPacket (&gcSystemMessage);		return;	}#endif		transportCreature(pCreature2, pos.id, pos.x, pos.y, false);	return;	__END_CATCH}////////////////////////////////////////////////////////////////////////////////// get debug string////////////////////////////////////////////////////////////////////////////////string ActionWarpLevelWarZone::toString () const	throw (){	__BEGIN_TRY	StringStream msg;	msg << "ActionWarpLevelWarZone("		<< ")";	return msg.toString();	__END_CATCH}

⌨️ 快捷键说明

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