本文整理汇总了C++中Corpse::getObjectID方法的典型用法代码示例。如果您正苦于以下问题:C++ Corpse::getObjectID方法的具体用法?C++ Corpse::getObjectID怎么用?C++ Corpse::getObjectID使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Corpse
的用法示例。
在下文中一共展示了Corpse::getObjectID方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: unaffect
void EffectDecayCorpse::unaffect (Zone* pZone , ZoneCoord_t x , ZoneCoord_t y , Object* pTarget)
throw(Error)
{
__BEGIN_TRY
// 올바른 좌표이어야 한다.
Assert(isValidZoneCoord(pZone, x, y));
// 시체에 접근한다.
if (pZone->getTile(x,y).hasItem())
{
Item* pItem = pZone->getTile(x,y).getItem();
if (pItem != NULL)
{
// 타일위에 아이템이 있고 그 아이템의 오브젝트 아이디가 똑같아야만 똑 같은 시체이다.
if (pItem->getObjectID() == m_ObjectID)
{
Corpse* pCorpse = dynamic_cast<Corpse*>(pTarget);
try
{
// 시체를 존에서 삭제한다.
Assert(pZone->getTile(x,y).getItem() == pCorpse);
pZone->deleteItem(pCorpse , x, y);
}
catch (NoSuchElementException & nsee)
{
cerr << "EffectDecayCorpse::unaffect() : NoSuchElementException" << endl;
throw Error(nsee.toString());
}
GCDeleteObject gcDeleteObject;
gcDeleteObject.setObjectID(pCorpse->getObjectID());
pZone->broadcastPacket(x, y , &gcDeleteObject);
// 시체 자체를 삭제한다.
SAFE_DELETE(pCorpse);
}
}
}
pTarget = NULL;
__END_CATCH
}