effectdetectinvisibility.cpp

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

CPP
120
字号
//////////////////////////////////////////////////////////////////////////////// Filename    : EffectDetectInvisibility.cpp// Written by  : elca// Description : //////////////////////////////////////////////////////////////////////////////#include "EffectDetectInvisibility.h"#include "Creature.h"#include "DB.h"#include "Slayer.h"#include "Gpackets/GCRemoveEffect.h"////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////EffectDetectInvisibility::EffectDetectInvisibility(Creature* pCreature)	throw(Error){	__BEGIN_TRY	// 叼咆飘 牢厚历呼矾萍绰 浇饭捞绢父捞 镜 荐 乐促.	Assert(pCreature != NULL);	Assert(pCreature->isSlayer());	setTarget(pCreature);	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectDetectInvisibility::affect(Creature* pCreature)	throw(Error){	__BEGIN_TRY	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectDetectInvisibility::affect(Zone* pZone , ZoneCoord_t x , ZoneCoord_t y , Object* pObject)	throw(Error){	__BEGIN_TRY	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectDetectInvisibility::unaffect(Creature* pCreature)	throw(Error){	__BEGIN_TRY	//cout << "EffectDetectInvisibility " << "unaffect BEGIN" << endl;	Assert(pCreature != NULL);	Assert(pCreature->isSlayer());	// 敲贰弊甫 力芭茄促.	pCreature->removeFlag(Effect::EFFECT_CLASS_DETECT_INVISIBILITY);	// 付过狼 塞栏肺 焊绊 乐带 农府媚甸阑 昏力茄促.	Zone* pZone = pCreature->getZone();	Assert(pZone != NULL);	pZone->updateInvisibleScan(pCreature);	// 捞棋飘啊 荤扼脸促绊 舅妨霖促.	GCRemoveEffect gcRemoveEffect;	gcRemoveEffect.setObjectID(pCreature->getObjectID());	gcRemoveEffect.addEffectList(Effect::EFFECT_CLASS_DETECT_INVISIBILITY);	pZone->broadcastPacket(pCreature->getX(), pCreature->getY(), &gcRemoveEffect);	//cout << "EffectDetectInvisibility " << "unaffect END" << endl;	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectDetectInvisibility::unaffect()	throw(Error){	__BEGIN_TRY	//cout << "EffectDetectInvisibility " << "unaffect BEGIN" << endl;	Creature* pCreature = dynamic_cast<Creature*>(m_pTarget);	unaffect(pCreature);	//cout << "EffectDetectInvisibility " << "unaffect END" << endl;	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectDetectInvisibility::unaffect(Zone* pZone , ZoneCoord_t x , ZoneCoord_t y , Object* pObject)	throw(Error){	__BEGIN_TRY	__END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////string EffectDetectInvisibility::toString()	const throw(){	__BEGIN_TRY	StringStream msg;	msg << "EffectDetectInvisibility("		<< "ObjectID:" << getObjectID()		<< ")";	return msg.toString();	__END_CATCH}

⌨️ 快捷键说明

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