CvCityConnections::ConnectPlotRoute(CvPlot *)
- Defined in
- CvCityConnections.cpp, line 691
- Class
- CvCityConnections
- Hook name
CivHooks::CvCityConnections_ConnectPlotRoute
Hooks
static bool BeforeCvCityConnections_ConnectPlotRoute(CvCityConnections* self, CvPlot* pPlot);static void AfterCvCityConnections_ConnectPlotRoute(CvCityConnections* self, CvPlot* pPlot);static void ReplaceCvCityConnections_ConnectPlotRoute(void (*original)(CvCityConnections*, CvPlot*), CvCityConnections* self, CvPlot* pPlot);CivRegisterBefore<CivHooks::CvCityConnections_ConnectPlotRoute>(host, &BeforeCvCityConnections_ConnectPlotRoute);CivRegisterAfter<CivHooks::CvCityConnections_ConnectPlotRoute>(host, &AfterCvCityConnections_ConnectPlotRoute);CivRegisterReplace<CivHooks::CvCityConnections_ConnectPlotRoute>(host, &ReplaceCvCityConnections_ConnectPlotRoute);
Code
691void CvCityConnections::ConnectPlotRoute(CvPlot* pPlot)692{693 int iPlotIndex = pPlot->GetPlotIndex();694 uint uiTargetIndex = MAX_UNSIGNED_INT;695696 for(uint ui = 0; ui < m_aPlotRouteInfos.size(); ui++)697 {698 if(m_aPlotRouteInfos[ui].m_iPlotIndex == iPlotIndex)699 {700 uiTargetIndex = ui;701 break;702 }703 else if(uiTargetIndex == MAX_UNSIGNED_INT && m_aPlotRouteInfos[ui].m_bPlotRouteState == NO_CONNECTION)704 {705 uiTargetIndex = ui;706 }707 }708709 if(uiTargetIndex >= m_aPlotRouteInfos.size())710 {711 uiTargetIndex = m_aPlotRouteInfos.size();712 PlotRouteInfo info;713 m_aPlotRouteInfos.push_back(info);714 m_aPlotRouteInfos[uiTargetIndex].m_bPlotRouteState = 0;715 }716717 m_aPlotRouteInfos[uiTargetIndex].m_iPlotIndex = iPlotIndex;718 m_aPlotRouteInfos[uiTargetIndex].m_bPlotRouteState |= CONNECTION;719}
Calls
BaseVector::operator[]BaseVector::size- CvCityConnections::PlotRouteInfo::PlotRouteInfo()
- CvPlot::GetPlotIndex() const
FStaticVector::push_back