本文整理汇总了C++中ZObject::GetItems方法的典型用法代码示例。如果您正苦于以下问题:C++ ZObject::GetItems方法的具体用法?C++ ZObject::GetItems怎么用?C++ ZObject::GetItems使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ZObject
的用法示例。
在下文中一共展示了ZObject::GetItems方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnPeerNPCAttackRange
bool ZSurvival::OnPeerNPCAttackRange(MCommand* pCommand)
{
MUID uidOwner;
pCommand->GetParameter(&uidOwner, 0, MPT_UID);
MCommandParameter* pParam = pCommand->GetParameter(1);
if(pParam->GetType()!=MPT_BLOB) return false; // 문제가 있다
ZPACKEDSHOTINFO *pinfo =(ZPACKEDSHOTINFO*)pParam->GetPointer();
rvector pos = rvector(pinfo->posx,pinfo->posy,pinfo->posz);
rvector to = rvector(pinfo->tox,pinfo->toy,pinfo->toz);
// rocket 테스트로 넣어봤다.
ZObject* pOwner = ZGetGame()->m_ObjectManager.GetObject(uidOwner);
MMatchItemDesc* pDesc = NULL;
if(pOwner==NULL) return false; // 보통 치트키를 쓸경우...
if( pOwner->GetItems() )
if( pOwner->GetItems()->GetSelectedWeapon() )
pDesc = pOwner->GetItems()->GetSelectedWeapon()->GetDesc();
if (pDesc)
{
if (pDesc->m_nWeaponType.Ref() == MWT_ROCKET)
{
rvector dir = to - pos;
Normalize(dir);
ZGetGame()->m_WeaponManager.AddRocket(pos,dir,pOwner);
ZApplication::GetSoundEngine()->PlaySEFire(pDesc, pos.x, pos.y, pos.z, false);
return true;
}
else if (pDesc->m_nWeaponType.Ref() == MWT_SKILL)
{
rvector dir = to - pos;
Normalize(dir);
ZSkill skill;
skill.Init(pDesc->m_nGadgetID.Ref(), pOwner);
ZApplication::GetSoundEngine()->PlaySEFire(pDesc, pos.x, pos.y, pos.z, false);
ZGetGame()->m_WeaponManager.AddMagic(&skill, pos, dir, pOwner);
return true;
}
}
else
return false;
ZGetGame()->OnPeerShot_Range((MMatchCharItemParts)pinfo->sel_type,uidOwner,ZGetGame()->GetTime(),pos,to);
return true;
}
示例2: InitStatus
// 초기화 할때 저항치를 계산해 둔다
void ZModule_Resistance::InitStatus()
{
m_nFR = 0;
m_nCR = 0;
m_nPR = 0;
m_nLR = 0;
// 캐릭터가 아니라면 적절한방법으로 구해놓는다
ZObject *pThisObj = MStaticCast(ZObject,m_pContainer);
ZCharacterItem *pItems = pThisObj->GetItems();
for(int i=0;i<MMCIP_END;i++)
{
ZItem *pItem = pItems->GetItem((CCMatchCharItemParts)i);
if(pItem) {
CCMatchItemDesc *pDesc = pItem->GetDesc();
if(pDesc) {
m_nFR += pDesc->m_nFR.Ref();
m_nCR += pDesc->m_nCR.Ref();
m_nLR += pDesc->m_nLR.Ref();
m_nPR += pDesc->m_nPR.Ref();
}
}
}
m_nFR = max(min(m_nFR,100),0);
m_nCR = max(min(m_nCR,100),0);
m_nPR = max(min(m_nPR,100),0);
m_nLR = max(min(m_nLR,100),0);
}