CvHomelandAI::AssignHomelandMoves()
- Defined in
- CvHomelandAI.cpp, line 700
- Class
- CvHomelandAI
- Hook name
CivHooks::CvHomelandAI_AssignHomelandMoves
Hooks
static bool BeforeCvHomelandAI_AssignHomelandMoves(CvHomelandAI* self);static void AfterCvHomelandAI_AssignHomelandMoves(CvHomelandAI* self);static void ReplaceCvHomelandAI_AssignHomelandMoves(void (*original)(CvHomelandAI*), CvHomelandAI* self);CivRegisterBefore<CivHooks::CvHomelandAI_AssignHomelandMoves>(host, &BeforeCvHomelandAI_AssignHomelandMoves);CivRegisterAfter<CivHooks::CvHomelandAI_AssignHomelandMoves>(host, &AfterCvHomelandAI_AssignHomelandMoves);CivRegisterReplace<CivHooks::CvHomelandAI_AssignHomelandMoves>(host, &ReplaceCvHomelandAI_AssignHomelandMoves);
Code
699/// Choose which moves to run and assign units to it700void CvHomelandAI::AssignHomelandMoves()701{702 FStaticVector< CvHomelandMove, 64, true, c_eCiv5GameplayDLL >::iterator it;703704 // Proceed in priority order705 for(it = m_MovePriorityList.begin(); it != m_MovePriorityList.end() && !m_CurrentTurnUnits.empty(); ++it)706 {707 CvHomelandMove move = *it;708709 AI_PERF_FORMAT("AI-perf-tact.csv", ("Homeland Move: %d, Turn %03d, %s", (int)move.m_eMoveType, GC.getGame().getElapsedGameTurns(), m_pPlayer->getCivilizationShortDescription()) );710711 switch(move.m_eMoveType)712 {713 case AI_HOMELAND_MOVE_EXPLORE:714 PlotExplorerMoves();715 break;716 case AI_HOMELAND_MOVE_EXPLORE_SEA:717 PlotExplorerSeaMoves();718 break;719 case AI_HOMELAND_MOVE_SETTLE:720 PlotFirstTurnSettlerMoves();721 break;722 case AI_HOMELAND_MOVE_GARRISON:723 PlotGarrisonMoves();724 break;725 case AI_HOMELAND_MOVE_HEAL:726 PlotHealMoves();727 break;728 case AI_HOMELAND_MOVE_TO_SAFETY:729 PlotMovesToSafety();730 break;731 case AI_HOMELAND_MOVE_MOBILE_RESERVE:732 PlotMobileReserveMoves();733 break;734 case AI_HOMELAND_MOVE_SENTRY:735 PlotSentryMoves();736 break;737 case AI_HOMELAND_MOVE_WORKER:738 PlotWorkerMoves();739 break;740 case AI_HOMELAND_MOVE_WORKER_SEA:741 PlotWorkerSeaMoves();742 break;743 case AI_HOMELAND_MOVE_PATROL:744 PlotPatrolMoves();745 break;746 case AI_HOMELAND_MOVE_UPGRADE:747 PlotUpgradeMoves();748 break;749 case AI_HOMELAND_MOVE_ANCIENT_RUINS:750 PlotAncientRuinMoves();751 break;752 case AI_HOMELAND_MOVE_GARRISON_CITY_STATE:753 PlotGarrisonMoves(true /*bCityStateOnly*/);754 break;755 case AI_HOMELAND_MOVE_WRITER:756 PlotWriterMoves();757 break;758 case AI_HOMELAND_MOVE_ARTIST_GOLDEN_AGE:759 PlotArtistMoves();760 break;761 case AI_HOMELAND_MOVE_MUSICIAN:762 PlotMusicianMoves();763 break;764 case AI_HOMELAND_MOVE_SCIENTIST_FREE_TECH:765 PlotScientistMoves();766 break;767 case AI_HOMELAND_MOVE_ENGINEER_HURRY:768 PlotEngineerMoves();769 break;770 case AI_HOMELAND_MOVE_MERCHANT_TRADE:771 PlotMerchantMoves();772 break;773 case AI_HOMELAND_MOVE_GENERAL_GARRISON:774 PlotGeneralMoves();775 break;776 case AI_HOMELAND_MOVE_ADMIRAL_GARRISON:777 PlotAdmiralMoves();778 break;779 case AI_HOMELAND_MOVE_PROPHET_RELIGION:780 PlotProphetMoves();781 break;782 case AI_HOMELAND_MOVE_MISSIONARY:783 PlotMissionaryMoves();784 break;785 case AI_HOMELAND_MOVE_INQUISITOR:786 PlotInquisitorMoves();787 break;788 case AI_HOMELAND_MOVE_AIRCRAFT_TO_THE_FRONT:789 PlotAircraftMoves();790 break;791 case AI_HOMELAND_MOVE_ADD_SPACESHIP_PART:792 PlotSSPartAdds();793 break;794 case AI_HOMELAND_MOVE_SPACESHIP_PART:795 PlotSSPartMoves();796 break;797 case AI_HOMELAND_MOVE_TREASURE:798 PlotTreasureMoves();799 break;800 case AI_HOMELAND_MOVE_TRADE_UNIT:801 PlotTradeUnitMoves();802 break;803 case AI_HOMELAND_MOVE_ARCHAEOLOGIST:804 PlotArchaeologistMoves();805 break;806 case AI_HOMELAND_MOVE_AIRLIFT:807 PlotAirliftMoves();808 break;809 }810 }811812 ReviewUnassignedUnits();813}
Calls
BaseVector::beginBaseVector::end- CvHomelandAI::PlotAdmiralMoves()
- CvHomelandAI::PlotAircraftMoves()
- CvHomelandAI::PlotAirliftMoves()
- CvHomelandAI::PlotAncientRuinMoves()
- CvHomelandAI::PlotArchaeologistMoves()
- CvHomelandAI::PlotArtistMoves()
- CvHomelandAI::PlotEngineerMoves()
- CvHomelandAI::PlotExplorerMoves()
- CvHomelandAI::PlotExplorerSeaMoves()
- CvHomelandAI::PlotFirstTurnSettlerMoves()
- CvHomelandAI::PlotGarrisonMoves(bool)
- CvHomelandAI::PlotGeneralMoves()
- CvHomelandAI::PlotHealMoves()
- CvHomelandAI::PlotInquisitorMoves()
- CvHomelandAI::PlotMerchantMoves()
- CvHomelandAI::PlotMissionaryMoves()
- CvHomelandAI::PlotMobileReserveMoves()
- CvHomelandAI::PlotMovesToSafety()
- CvHomelandAI::PlotMusicianMoves()
- CvHomelandAI::PlotPatrolMoves()
- CvHomelandAI::PlotProphetMoves()
- CvHomelandAI::PlotScientistMoves()
- CvHomelandAI::PlotSentryMoves()
- CvHomelandAI::PlotSSPartAdds()
- CvHomelandAI::PlotSSPartMoves()
- CvHomelandAI::PlotTradeUnitMoves()
- CvHomelandAI::PlotTreasureMoves()
- CvHomelandAI::PlotUpgradeMoves()
- CvHomelandAI::PlotWorkerMoves(bool)
- CvHomelandAI::PlotWorkerSeaMoves()
- CvHomelandAI::PlotWriterMoves()
- CvHomelandAI::ReviewUnassignedUnits()
CvHomelandMove::CvHomelandMovestd::list::empty