CvUnit::canParadropAt(const CvPlot *, int, int) const
- Defined in
- CvUnit.cpp, line 6608
- Class
- CvUnit
- Hook name
CivHooks::CvUnit_canParadropAt
Hooks
static bool BeforeCvUnit_canParadropAt(const CvUnit* self, const CvPlot* pPlot, int iX, int iY, bool& result);static void AfterCvUnit_canParadropAt(const CvUnit* self, const CvPlot* pPlot, int iX, int iY, bool& result);static bool ReplaceCvUnit_canParadropAt(bool (*original)(const CvUnit*, const CvPlot*, int, int), const CvUnit* self, const CvPlot* pPlot, int iX, int iY);CivRegisterBefore<CivHooks::CvUnit_canParadropAt>(host, &BeforeCvUnit_canParadropAt);CivRegisterAfter<CivHooks::CvUnit_canParadropAt>(host, &AfterCvUnit_canParadropAt);CivRegisterReplace<CivHooks::CvUnit_canParadropAt>(host, &ReplaceCvUnit_canParadropAt);
Code
6608bool CvUnit::canParadropAt(const CvPlot* pPlot, int iX, int iY) const6609{6610 VALIDATE_OBJECT6611 if(!canParadrop(pPlot, false))6612 {6613 return false;6614 }66156616 CvPlot* pTargetPlot = GC.getMap().plot(iX, iY);6617 if(NULL == pTargetPlot || pTargetPlot == pPlot)6618 {6619 return false;6620 }66216622 if(!pTargetPlot->isVisible(getTeam()))6623 {6624 return false;6625 }66266627 if(!canMoveInto(*pTargetPlot, MOVEFLAG_DESTINATION))6628 {6629 return false;6630 }66316632 if(plotDistance(pPlot->getX(), pPlot->getY(), iX, iY) > getDropRange())6633 {6634 return false;6635 }66366637 return true;6638}