Bazaar developer reference

CvPlayer::DoDistanceGift(PlayerTypes, CvUnit *)

Defined in
CvPlayer.cpp, line 19639
Class
CvPlayer
Hook name
CivHooks::CvPlayer_DoDistanceGift

Hooks

static bool BeforeCvPlayer_DoDistanceGift(CvPlayer* self, PlayerTypes eFromPlayer, CvUnit* pUnit);static void AfterCvPlayer_DoDistanceGift(CvPlayer* self, PlayerTypes eFromPlayer, CvUnit* pUnit);static void ReplaceCvPlayer_DoDistanceGift(void (*original)(CvPlayer*, PlayerTypes, CvUnit*), CvPlayer* self, PlayerTypes eFromPlayer, CvUnit* pUnit);CivRegisterBefore<CivHooks::CvPlayer_DoDistanceGift>(host, &BeforeCvPlayer_DoDistanceGift);CivRegisterAfter<CivHooks::CvPlayer_DoDistanceGift>(host, &AfterCvPlayer_DoDistanceGift);CivRegisterReplace<CivHooks::CvPlayer_DoDistanceGift>(host, &ReplaceCvPlayer_DoDistanceGift);

Code

19638/// Someone sent us a present!19639void CvPlayer::DoDistanceGift(PlayerTypes eFromPlayer, CvUnit* pUnit)19640{19641	if(!pUnit)19642	{19643		return;19644	}1964519646	CvPlot* pPlot = pUnit->plot();19647	if(!pPlot)19648	{19649		return;19650	}1965119652	// Also add any units this guy is transporting19653	IDInfo* pUnitNode = pPlot->headUnitNode();19654	while(pUnitNode != NULL)19655	{19656		CvUnit* pLoopUnit = ::getUnit(*pUnitNode);19657		pUnitNode = pPlot->nextUnitNode(pUnitNode);1965819659		if(NULL != pLoopUnit && pLoopUnit->getTransportUnit() == pUnit)19660			AddIncomingUnit(eFromPlayer, pLoopUnit);19661	}1966219663	AddIncomingUnit(eFromPlayer, pUnit);19664}

Calls

Called by