本文整理汇总了C++中CNpc::MoveResult方法的典型用法代码示例。如果您正苦于以下问题:C++ CNpc::MoveResult方法的具体用法?C++ CNpc::MoveResult怎么用?C++ CNpc::MoveResult使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CNpc
的用法示例。
在下文中一共展示了CNpc::MoveResult方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: RecvNpcMoveResult
void CAISocket::RecvNpcMoveResult(char *pBuf)
{
// sungyong tw
char send_buff[256];
int index = 0, send_index = 0;
BYTE flag; // 01(INFO_MODIFY) : NPC 정보 변경
// 02(INFO_DELETE) : NPC 정보 삭제
short nid; // NPC index
float fPosX; // X Position
float fPosZ; // Z Position
float fPosY; // Y Position
float fSecForMetor; // Sec당 metor
flag = GetByte(pBuf,index);
nid = GetShort(pBuf,index);
fPosX = Getfloat(pBuf, index);
fPosZ = Getfloat(pBuf, index);
fPosY = Getfloat(pBuf, index);
fSecForMetor = Getfloat(pBuf, index);
CNpc* pNpc = m_pMain->m_arNpcArray.GetData( nid );
if(!pNpc)
return;
if( pNpc->m_NpcState == NPC_DEAD || pNpc->m_iHP <= 0 ) { // Npc 상태 동기화 불량,, 재요청..
SetByte( send_buff, AG_NPC_HP_REQ, send_index);
SetShort( send_buff, nid, send_index );
SetDWORD( send_buff, pNpc->m_iHP, send_index );
Send( send_buff, send_index );
}
// ~sungyong tw
pNpc->MoveResult(fPosX, fPosY, fPosZ, fSecForMetor);
}
示例2: RecvNpcMoveResult
void CAISocket::RecvNpcMoveResult(Packet & pkt)
{
uint8 flag; // 01(INFO_MODIFY), 02(INFO_DELETE)
uint16 sNid;
float fX, fY, fZ, fSecForMetor;
pkt >> flag >> sNid >> fX >> fZ >> fY >> fSecForMetor;
CNpc * pNpc = g_pMain->GetNpcPtr(sNid);
if (pNpc == nullptr)
return;
if (pNpc->isDead())
{
Packet result(AG_NPC_HP_REQ);
result << sNid << pNpc->m_iHP;
Send(&result);
}
pNpc->MoveResult(fX, fY, fZ, fSecForMetor);
}