📄 effectsanctuary.cpp
字号:
//////////////////////////////////////////////////////////////////////////////// Filename : EffectSanctuary.cpp// Written by : elca// Description : //////////////////////////////////////////////////////////////////////////////#include "EffectSanctuary.h"#include "Creature.h"#include "Zone.h"#include "Tile.h"////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////EffectSanctuary::EffectSanctuary(Zone* pZone , ZoneCoord_t ZoneX, ZoneCoord_t ZoneY, ZoneCoord_t CenterX, ZoneCoord_t CenterY) throw(Error){ __BEGIN_TRY m_pZone = pZone; m_X = ZoneX; m_Y = ZoneY; m_CenterX = CenterX; m_CenterY = CenterY; __END_CATCH}//////////////////////////////////////////////////////////////////////////////// EffectSanctuary::affectCreature()// bAffectByMove啊 false搁 力磊府俊辑 寸窍绰 巴捞骨肺.. // 寇何狼 SkillOK俊辑 modify info甫 焊辰促. 蝶扼辑 GCModifyInformation阑 // 焊尘 鞘夸啊 绝促.// pTarget狼 矫具啊 函茄 版快 true甫 return//////////////////////////////////////////////////////////////////////////////bool EffectSanctuary::affectObject(Object* pTarget, bool bAffectByMove) throw(Error){ __BEGIN_TRY// if (pTarget->getObjectClass() == Object::OBJECT_CLASS_CREATURE)// {// Creature* pTargetCreature = dynamic_cast<Creature*>(pTarget);// // 捞固 吧妨乐绰 版快俊绰 促矫 吧瘤 臼绰促.// if (pTargetCreature->isFlag(Effect::EFFECT_CLASS_SANCTUARY))// {// return false; // }//// pTargetCreature->setFlag(Effect::EFFECT_CLASS_SANCTUARY);// return true;// }// return false; __END_CATCH}void EffectSanctuary::unaffectObject(Object* pTarget, bool bUnaffectByMove) throw(Error){ __BEGIN_TRY// Assert(pTarget != NULL);// // if (pTarget->getObjectClass() == Object::OBJECT_CLASS_CREATURE)// {// Creature* pTargetCreature = dynamic_cast<Creature*>(pTarget);//// pTargetCreature->removeFlag(Effect::EFFECT_CLASS_SANCTUARY);// } __END_CATCH}//////////////////////////////////////////////////////////////////////////////// EffectSanctuary::affect()//////////////////////////////////////////////////////////////////////////////void EffectSanctuary::affect(Creature* pTargetCreature) throw(Error){ __BEGIN_TRY __END_CATCH}//////////////////////////////////////////////////////////////////////////////// EffectSanctuary::affect()//////////////////////////////////////////////////////////////////////////////void EffectSanctuary::affect(Zone* pZone , ZoneCoord_t x , ZoneCoord_t y , Object* pObject) throw(Error){ __BEGIN_TRY __END_CATCH}//////////////////////////////////////////////////////////////////////////////// unaffect()//////////////////////////////////////////////////////////////////////////////void EffectSanctuary::unaffect() throw(Error){ __BEGIN_TRY //cout << "EffectSanctuary " << "unaffect BEGIN" << endl; Tile & tile = m_pZone->getTile(m_X, m_Y);//// // unaffect creatures on tile// const slist<Object*>& oList = tile.getObjectList();// for (slist<Object*>::const_iterator itr = oList.begin(); itr != oList.end(); itr++) // {// if (*itr != this) // {// EffectSanctuary::unaffectObject((Object*)(*itr), false);// }// } tile.deleteEffect(m_ObjectID); //cout << "EffectSanctuary " << "unaffect END" << endl; __END_CATCH}void EffectSanctuary::unaffect(Zone* pZone , ZoneCoord_t x , ZoneCoord_t y , Object* pObject) throw(Error){ __BEGIN_TRY __END_CATCH}string EffectSanctuary::toString() const throw(){ __BEGIN_TRY StringStream msg; msg << "EffectSanctuary(" << "DayTime:" << m_Deadline.tv_sec << ")"; return msg.toString(); __END_CATCH}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -