本文整理汇总了C++中NFDataList::Object方法的典型用法代码示例。如果您正苦于以下问题:C++ NFDataList::Object方法的具体用法?C++ NFDataList::Object怎么用?C++ NFDataList::Object使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NFDataList
的用法示例。
在下文中一共展示了NFDataList::Object方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: DestroySceneNPC
bool NFCSceneAOIModule::DestroySceneNPC(const int nSceneID, const int nGroupID)
{
NF_SHARE_PTR<NFCSceneInfo> pSceneInfo = GetElement(nSceneID);
if (pSceneInfo)
{
if (pSceneInfo->GetElement(nGroupID))
{
NFDataList xMonsterlistObject;
if (m_pKernelModule->GetGroupObjectList(nSceneID, nGroupID, xMonsterlistObject, false))
{
for (int i = 0; i < xMonsterlistObject.GetCount(); ++i)
{
NFGUID ident = xMonsterlistObject.Object(i);
m_pKernelModule->DestroyObject(ident);
}
}
pSceneInfo->RemoveElement(nGroupID);
return true;
}
}
return false;
}
示例2: SendMsgToGame
bool NFCWorldNet_ServerModule::SendMsgToGame(const NFDataList& argObjectVar, const NFDataList& argGameID, const NFMsg::EGameMsgID eMsgID, google::protobuf::Message& xData)
{
if (argGameID.GetCount() != argObjectVar.GetCount())
{
return false;
}
for (int i = 0; i < argObjectVar.GetCount(); i++)
{
const NFGUID& identOther = argObjectVar.Object(i);
const int nGameID = (int) argGameID.Int(i);
SendMsgToGame(nGameID, eMsgID, xData, identOther);
}
return true;
}
示例3: OnPlayerGroupEvent
int NFCSceneAOIModule::OnPlayerGroupEvent(const NFGUID & self, const std::string & strPropertyName, const NFData & oldVar, const NFData & newVar)
{
//this event only happened in the same scene
int nSceneID = m_pKernelModule->GetPropertyInt32(self, NFrame::IObject::SceneID());
int nOldGroupID = oldVar.GetInt32();
int nNewGroupID = newVar.GetInt32();
//maybe form 0, maybe not, only three stuation
//example1: 0 -> 1 ==> new_group > 0 && old_group <= 0
//example2: 1 -> 2 ==> new_group > 0 && old_group > 0
//example3: 5 -> 0 ==> new_group <= 0 && old_group > 0
if (nNewGroupID > 0)
{
if (nOldGroupID > 0)
{
//example2: 1 -> 2 ==> new_group > 0 && old_group > 0
//step1: leave
NFDataList valueAllOldNPCListNoSelf;
NFDataList valueAllOldPlayerListNoSelf;
m_pKernelModule->GetGroupObjectList(nSceneID, nOldGroupID, valueAllOldNPCListNoSelf, false, self);
m_pKernelModule->GetGroupObjectList(nSceneID, nOldGroupID, valueAllOldPlayerListNoSelf, true, self);
OnObjectListLeave(valueAllOldPlayerListNoSelf, NFDataList() << self);
OnObjectListLeave(NFDataList() << self, valueAllOldPlayerListNoSelf);
OnObjectListLeave(NFDataList() << self, valueAllOldNPCListNoSelf);
}
else
{
//example1: 0 -> 1 == > new_group > 0 && old_group <= 0
//only use step2 that enough
}
//step2: enter
NFDataList valueAllNewNPCListNoSelf;
NFDataList valueAllNewPlayerListNoSelf;
m_pKernelModule->GetGroupObjectList(nSceneID, nNewGroupID, valueAllNewNPCListNoSelf, false, self);
m_pKernelModule->GetGroupObjectList(nSceneID, nNewGroupID, valueAllNewPlayerListNoSelf, true, self);
OnObjectListEnter(valueAllNewPlayerListNoSelf, NFDataList() << self);
OnObjectListEnter(NFDataList() << self, valueAllNewPlayerListNoSelf);
OnObjectListEnter(NFDataList() << self, valueAllNewNPCListNoSelf);
//bc others data to u
for (int i = 0; i < valueAllNewNPCListNoSelf.GetCount(); i++)
{
NFGUID identOld = valueAllNewNPCListNoSelf.Object(i);
OnPropertyEnter(NFDataList() << self, identOld);
OnRecordEnter(NFDataList() << self, identOld);
OnObjectListEnterFinished(NFDataList() << self, NFDataList() << identOld);
}
//bc others data to u
for (int i = 0; i < valueAllNewPlayerListNoSelf.GetCount(); i++)
{
NFGUID identOld = valueAllNewPlayerListNoSelf.Object(i);
OnPropertyEnter(NFDataList() << self, identOld);
OnRecordEnter(NFDataList() << self, identOld);
OnObjectListEnterFinished(NFDataList() << self, NFDataList() << identOld);
}
//bc u data to others
OnPropertyEnter(valueAllNewPlayerListNoSelf, self);
OnRecordEnter(valueAllNewPlayerListNoSelf, self);
OnObjectListEnterFinished(valueAllNewPlayerListNoSelf, NFDataList() << self);
}
else
{
if (nOldGroupID > 0)
{
//example3: 5 -> 0 ==> new_group <= 0 && old_group > 0
//step1: leave
NFDataList valueAllOldNPCListNoSelf;
NFDataList valueAllOldPlayerListNoSelf;
m_pKernelModule->GetGroupObjectList(nSceneID, nOldGroupID, valueAllOldNPCListNoSelf, false, self);
m_pKernelModule->GetGroupObjectList(nSceneID, nOldGroupID, valueAllOldPlayerListNoSelf, true, self);
OnObjectListLeave(valueAllOldPlayerListNoSelf, NFDataList() << self);
OnObjectListLeave(NFDataList() << self, valueAllOldPlayerListNoSelf);
OnObjectListLeave(NFDataList() << self, valueAllOldNPCListNoSelf);
}
}
return 0;
}