CvUnit::UnitRoadTo(int, int, int)
- Defined in
- CvUnit.cpp, line 23219
- Class
- CvUnit
- Hook name
CivHooks::CvUnit_UnitRoadTo
Hooks
static bool BeforeCvUnit_UnitRoadTo(CvUnit* self, int iX, int iY, int iFlags, bool& result);static void AfterCvUnit_UnitRoadTo(CvUnit* self, int iX, int iY, int iFlags, bool& result);static bool ReplaceCvUnit_UnitRoadTo(bool (*original)(CvUnit*, int, int, int), CvUnit* self, int iX, int iY, int iFlags);CivRegisterBefore<CivHooks::CvUnit_UnitRoadTo>(host, &BeforeCvUnit_UnitRoadTo);CivRegisterAfter<CivHooks::CvUnit_UnitRoadTo>(host, &AfterCvUnit_UnitRoadTo);CivRegisterReplace<CivHooks::CvUnit_UnitRoadTo>(host, &ReplaceCvUnit_UnitRoadTo);
Code
23218// Returns true if move was made...23219bool CvUnit::UnitRoadTo(int iX, int iY, int iFlags)23220{23221 VALIDATE_OBJECT23222 CvPlot* pPlot;23223 RouteTypes eBestRoute;23224 BuildTypes eBestBuild;2322523226 if(!IsAutomated() || !at(iX, iY) || (GetLengthMissionQueue() == 1))23227 {23228 pPlot = plot();2322923230 eBestRoute = GetBestBuildRoute(pPlot, &eBestBuild);2323123232 if(eBestBuild != NO_BUILD)23233 {23234 UnitBuild(eBestBuild);23235 return true;23236 }23237 }2323823239 bool bWasMoveMade = ( UnitPathTo(iX, iY, iFlags, -1, true) > 0 );23240 if(bWasMoveMade)23241 {23242 PublishQueuedVisualizationMoves();23243 }2324423245 return bWasMoveMade;23246}