effecthallucination.cpp

来自「天之炼狱1服务器端源文件游戏服务端不完整」· C++ 代码 · 共 104 行

CPP
104
字号
//////////////////////////////////////////////////////////////////////////////// Filename    : EffectHallucination.cpp// Written by  : elca// Description : //////////////////////////////////////////////////////////////////////////////#include "EffectHallucination.h"#include "Creature.h"#include "Slayer.h"#include "Vampire.h"#include "Monster.h"#include "Player.h"#include "Gpackets/GCModifyInformation.h"#include "Gpackets/GCStatusCurrentHP.h"#include "Gpackets/GCRemoveEffect.h"////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////EffectHallucination::EffectHallucination(Creature* pCreature)	throw(Error){	__BEGIN_TRY	setTarget(pCreature);	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectHallucination::affect(Creature* pCreature)	throw(Error){	__BEGIN_TRY																															    		__END_CATCH}void EffectHallucination::unaffect() 	throw(Error){	__BEGIN_TRY	    Creature* pCreature = dynamic_cast<Creature *>(m_pTarget);	unaffect(pCreature);	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectHallucination::unaffect(Creature* pCreature)	throw(Error){	__BEGIN_TRY	__BEGIN_DEBUG	//cout << "EffectHallucination" << "unaffect BEGIN" << endl;	Assert(pCreature != NULL);	// 瓷仿摹甫 沥惑利栏肺 登倒府扁 困秦辑绰 敲贰弊甫 掺绊,	// initAllStat阑 阂矾具 茄促.	pCreature->removeFlag(Effect::EFFECT_CLASS_HALLUCINATION);	Zone* pZone = pCreature->getZone();	Assert(pZone != NULL);	GCRemoveEffect gcRemoveEffect;	gcRemoveEffect.setObjectID(pCreature->getObjectID());	gcRemoveEffect.addEffectList(Effect::EFFECT_CLASS_HALLUCINATION);	pZone->broadcastPacket(pCreature->getX(), pCreature->getY(), &gcRemoveEffect);	if ( pCreature->isMonster() )	{		Monster* pMonster = dynamic_cast<Monster*>(pCreature);		Assert( pMonster != NULL );		pMonster->deleteAllEnemy();		pZone->monsterScan(pMonster, pMonster->getX(), pMonster->getY(), pMonster->getDir());	}	//cout << "EffectHallucination" << "unaffect END" << endl;	__END_DEBUG	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////string EffectHallucination::toString()	const throw(){	__BEGIN_TRY	StringStream msg;	msg << "EffectHallucination("		<< "ObjectID:" << getObjectID()		<< ")";	return msg.toString();	__END_CATCH}

⌨️ 快捷键说明

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