effectgrandmasterslayer.cpp
来自「天之炼狱1服务器端源文件游戏服务端不完整」· C++ 代码 · 共 116 行
CPP
116 行
//////////////////////////////////////////////////////////////////////////////// Filename : EffectGrandMasterSlayer.cpp// Written by : 江// Description : //////////////////////////////////////////////////////////////////////////////#include "EffectGrandMasterSlayer.h"#include "Creature.h"#include "Player.h"#include "Zone.h"#include "Gpackets/GCAddEffect.h"#include "Gpackets/GCRemoveEffect.h"////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////EffectGrandMasterSlayer::EffectGrandMasterSlayer(Creature* pCreature) throw(Error){ __BEGIN_TRY setTarget(pCreature); __END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectGrandMasterSlayer::affect() throw(Error){ __BEGIN_TRY Creature* pCreature = dynamic_cast<Creature*>(m_pTarget); affect( pCreature ); __END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectGrandMasterSlayer::affect(Creature* pCreature) throw(Error){ __BEGIN_TRY Assert(pCreature->isSlayer()); pCreature->setFlag(Effect::EFFECT_CLASS_GRAND_MASTER_SLAYER); // 林困俊 谎妨霖促. GCAddEffect gcAddEffect; gcAddEffect.setObjectID(pCreature->getObjectID()); gcAddEffect.setEffectID(Effect::EFFECT_CLASS_GRAND_MASTER_SLAYER); gcAddEffect.setDuration(999999); pCreature->getZone()->broadcastPacket(pCreature->getX(), pCreature->getY(), &gcAddEffect); __END_CATCH}void EffectGrandMasterSlayer::unaffect() throw(Error){ __BEGIN_TRY Creature* pCreature = dynamic_cast<Creature *>(m_pTarget); unaffect(pCreature); __END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void EffectGrandMasterSlayer::unaffect(Creature* pCreature) throw(Error){ __BEGIN_TRY __BEGIN_DEBUG //cout << "EffectGrandMasterSlayer" << "unaffect BEGIN" << endl; Assert(pCreature != NULL); // 瓷仿摹甫 沥惑利栏肺 登倒府扁 困秦辑绰 敲贰弊甫 掺绊, // initAllStat阑 阂矾具 茄促. pCreature->removeFlag(Effect::EFFECT_CLASS_GRAND_MASTER_SLAYER); Zone* pZone = pCreature->getZone(); Assert(pZone != NULL); GCRemoveEffect gcRemoveEffect; gcRemoveEffect.setObjectID(pCreature->getObjectID()); gcRemoveEffect.addEffectList(Effect::EFFECT_CLASS_GRAND_MASTER_SLAYER); pZone->broadcastPacket(pCreature->getX(), pCreature->getY(), &gcRemoveEffect); //cout << "EffectGrandMasterSlayer" << "unaffect END" << endl; __END_DEBUG __END_CATCH}////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////string EffectGrandMasterSlayer::toString() const throw(){ __BEGIN_TRY StringStream msg; msg << "EffectGrandMasterSlayer(" << "ObjectID:" << getObjectID() << ")"; return msg.toString(); __END_CATCH}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?