本文整理汇总了C++中Mission::GetChildCount方法的典型用法代码示例。如果您正苦于以下问题:C++ Mission::GetChildCount方法的具体用法?C++ Mission::GetChildCount怎么用?C++ Mission::GetChildCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Mission
的用法示例。
在下文中一共展示了Mission::GetChildCount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SendMissionAcceptedResponse
void SendMissionAcceptedResponse(Player* pPlayer, FCULONG mission_id, bool bSuccessFlag, BaseSocket* pRouter, FCSOCKET clientSocket)
{
PEPacket* pkt = new PEPacket;
__FCPKT_MISSION_ACCEPT_RESP* d = NULL;
size_t pktLen = sizeof(__FCPKT_MISSION_ACCEPT_RESP);
Mission* pMission = NULL, *pChild = NULL;
if ( (pMission = pPlayer->GetMission(mission_id)) )
{
size_t numChildren = pMission->GetChildCount();
pktLen += (numChildren-1) * sizeof(__FCPKT_MISSION_ACCEPT_RESP::_child_missions);
if ( (d = (__FCPKT_MISSION_ACCEPT_RESP*) new FCBYTE[pktLen]) )
{
d->bSuccessFlag = bSuccessFlag;
d->mission_id = mission_id;
d->numChildMissions = (FCULONG)numChildren;
for ( size_t i = 0; i < numChildren; i++ )
{
if ( (pChild = pMission->GetChildMission(i)) )
d->child_missions[i].mission_id = pChild->GetID();
}
// send the packet
PEPacketHelper::CreatePacket(*pkt, FCPKT_RESPONSE, FCMSG_MISSION_ACCEPT, ST_None);
PEPacketHelper::SetPacketData(*pkt,
(void*)d,
pktLen);
// send response to Client
pkt->SetFieldValue("target", (void*)&clientSocket);
QueuePacket(pkt, pRouter);
}
else
{
DYNLOG_ADDLOG( "SendMissionAcceptedResponse(): Failed to allocate memory for the packet" );
}
}
else
{
DYNLOG_ADDLOG( "SendMissionAcceptedResponse(): Failed to send response because accepted mission was not found in player's mission list" );
}
}