本文整理汇总了C++中CvPromotionEntry::getOrderPriority方法的典型用法代码示例。如果您正苦于以下问题:C++ CvPromotionEntry::getOrderPriority方法的具体用法?C++ CvPromotionEntry::getOrderPriority怎么用?C++ CvPromotionEntry::getOrderPriority使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CvPromotionEntry
的用法示例。
在下文中一共展示了CvPromotionEntry::getOrderPriority方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SetGlobalActionInfo
//------------------------------------------------------------------------------------------------------
//
// FUNCTION: SetGlobalActionInfo(CvActionInfo** ppActionInfo, int* iNumVals)
//
// PURPOSE : Takes the szTagName parameter and if it exists in the xml it loads the ppActionInfo
// with the value under it and sets the value of the iNumVals parameter to the total number
// of occurances of the szTagName tag in the xml.
//
//------------------------------------------------------------------------------------------------------
bool CvDllDatabaseUtility::SetGlobalActionInfo()
{
cvStopWatch kPerfTest("SetGlobalActionInfo", "xml-perf.log");
LogMsg("SetGlobalActionInfo\n");
typedef std::vector<CvActionInfo*> ActionInfoVector;
ActionInfoVector& actionInfos = GC.getActionInfo();
//First, clear out action info data
for(ActionInfoVector::iterator it = actionInfos.begin(); it != actionInfos.end(); ++it)
{
CvActionInfo* pActionInfo = (*it);
delete pActionInfo;
}
actionInfos.clear();
const int iNumMissionTypes = CvTypes::getNUM_MISSION_TYPES();
//Verify action counts
if(!(NUM_INTERFACEMODE_TYPES > 0))
{
LogMsg("NUM_INTERFACE_TYPES is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(GC.getNumBuildInfos() > 0))
{
LogMsg("GC.getNumBuildInfos() is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(GC.getNumPromotionInfos() > 0))
{
LogMsg("GC.getNumPromotionInfos() is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(GC.getNumSpecialistInfos() > 0))
{
LogMsg("GC.getNumSpecialistInfos() is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(NUM_CONTROL_TYPES > 0))
{
LogMsg("NUM_CONTROL_TYPES is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(GC.getNumAutomateInfos() > 0))
{
LogMsg("GC.getNumAutomateInfos() is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(NUM_COMMAND_TYPES > 0))
{
LogMsg("NUM_COMMAND_TYPES is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
if(!(iNumMissionTypes > 0))
{
LogMsg("NUM_MISSION_TYPES is not greater than zero in CvDllDatabaseUtility::SetGlobalActionInfo.");
}
int iEstimatedNumActionInfos =
NUM_INTERFACEMODE_TYPES +
GC.getNumBuildInfos() +
GC.getNumPromotionInfos() +
GC.getNumSpecialistInfos() +
NUM_CONTROL_TYPES +
NUM_COMMAND_TYPES +
GC.getNumAutomateInfos() +
iNumMissionTypes;
int* piBuffer = FNEW(int[iEstimatedNumActionInfos * 4], c_eCiv5GameplayDLL, 0);
memset(piBuffer,0, sizeof(int) * iEstimatedNumActionInfos * 4);
int* piIndexList = piBuffer + iEstimatedNumActionInfos * 0; //FNEW(int[iNumActionInfos], c_eCiv5GameplayDLL, 0);
int* piPriorityList = piBuffer + iEstimatedNumActionInfos * 1; //FNEW(int[iNumActionInfos], c_eCiv5GameplayDLL, 0);
int* piActionInfoTypeList = piBuffer + iEstimatedNumActionInfos * 2; //FNEW(int[iNumActionInfos], c_eCiv5GameplayDLL, 0);
int* piOrderedIndex = piBuffer + iEstimatedNumActionInfos * 3; //FNEW(int[iNumActionInfos], c_eCiv5GameplayDLL, 0);
//Gather all available infos, checking for NULL entries as they may have been removed.
int iTotalActionInfoCount = 0;
int i = 0;
for(i=0; i<NUM_COMMAND_TYPES; i++)
{
CvCommandInfo* commandInfo = GC.getCommandInfo((CommandTypes)i);
if(commandInfo)
{
piIndexList[iTotalActionInfoCount] = i;
piPriorityList[iTotalActionInfoCount] = commandInfo->getOrderPriority();
piActionInfoTypeList[iTotalActionInfoCount] = ACTIONSUBTYPE_COMMAND;
iTotalActionInfoCount++;
}
}
for(i=0; i<NUM_INTERFACEMODE_TYPES; i++)
{
CvInterfaceModeInfo* interfaceInfo = GC.getInterfaceModeInfo((InterfaceModeTypes)i);
if(interfaceInfo)
{
//.........这里部分代码省略.........