Bazaar developer reference

CvUnit::SetActivityType(ActivityTypes, bool)

Defined in
CvUnit.cpp, line 22309
Class
CvUnit
Hook name
CivHooks::CvUnit_SetActivityType

Hooks

static bool BeforeCvUnit_SetActivityType(CvUnit* self, ActivityTypes eNewValue, bool bClearFortify);static void AfterCvUnit_SetActivityType(CvUnit* self, ActivityTypes eNewValue, bool bClearFortify);static void ReplaceCvUnit_SetActivityType(void (*original)(CvUnit*, ActivityTypes, bool), CvUnit* self, ActivityTypes eNewValue, bool bClearFortify);CivRegisterBefore<CivHooks::CvUnit_SetActivityType>(host, &BeforeCvUnit_SetActivityType);CivRegisterAfter<CivHooks::CvUnit_SetActivityType>(host, &AfterCvUnit_SetActivityType);CivRegisterReplace<CivHooks::CvUnit_SetActivityType>(host, &ReplaceCvUnit_SetActivityType);

Code

22308#if defined(MOD_BUGFIX_UNITS_AWAKE_IN_DANGER)22309void CvUnit::SetActivityType(ActivityTypes eNewValue, bool bClearFortify)22310#else22311void CvUnit::SetActivityType(ActivityTypes eNewValue)22312#endif22313{22314	VALIDATE_OBJECT22315	CvPlot* pPlot;2231622317	CvAssert(getOwner() != NO_PLAYER);2231822319	ActivityTypes eOldActivity = GetActivityType();2232022321	if(eOldActivity != eNewValue)22322	{22323		pPlot = plot();2232422325		m_eActivityType = eNewValue;2232622327		// If we're waking up a Unit then remove it's fortification bonus22328#if defined(MOD_BUGFIX_UNITS_AWAKE_IN_DANGER)22329		if(eNewValue == ACTIVITY_AWAKE && bClearFortify)22330#else22331		if(eNewValue == ACTIVITY_AWAKE)22332#endif22333		{22334			setFortifyTurns(0);22335		}2233622337		auto_ptr<ICvPlot1> pDllSelectionPlot(DLLUI->getSelectionPlot());22338		int iSelectionPlotIndex = (pDllSelectionPlot.get() != NULL)? pDllSelectionPlot->GetPlotIndex() : -1;22339		if(pPlot->GetPlotIndex() == iSelectionPlotIndex)22340		{22341			DLLUI->setDirty(PlotListButtons_DIRTY_BIT, true);22342			DLLUI->setDirty(SelectionButtons_DIRTY_BIT, true);22343		}22344	}22345}

Calls

Called by