Bazaar developer reference

CvPlayer::disassembleSpaceship(CvPlot *)

Defined in
CvPlayer.cpp, line 16925
Class
CvPlayer
Hook name
CivHooks::CvPlayer_disassembleSpaceship

Hooks

static bool BeforeCvPlayer_disassembleSpaceship(CvPlayer* self, CvPlot* pPlot);static void AfterCvPlayer_disassembleSpaceship(CvPlayer* self, CvPlot* pPlot);static void ReplaceCvPlayer_disassembleSpaceship(void (*original)(CvPlayer*, CvPlot*), CvPlayer* self, CvPlot* pPlot);CivRegisterBefore<CivHooks::CvPlayer_disassembleSpaceship>(host, &BeforeCvPlayer_disassembleSpaceship);CivRegisterAfter<CivHooks::CvPlayer_disassembleSpaceship>(host, &AfterCvPlayer_disassembleSpaceship);CivRegisterReplace<CivHooks::CvPlayer_disassembleSpaceship>(host, &ReplaceCvPlayer_disassembleSpaceship);

Code

16924// Remove all the parts of the spaceship that this player has assembled16925void CvPlayer::disassembleSpaceship(CvPlot* pPlot) {16926	if (MOD_GLOBAL_NO_CONQUERED_SPACESHIPS && !isMinorCiv() && !isBarbarian()) {16927		CUSTOMLOG("Disassemble spaceship for player %i", GetID());16928		CvTeam& thisTeam = GET_TEAM(getTeam());1692916930		if (thisTeam.getProjectCount((ProjectTypes) GC.getSPACE_RACE_TRIGGER_PROJECT()) == 1) {16931			thisTeam.changeProjectCount((ProjectTypes) GC.getSPACESHIP_CAPSULE(), -1 * thisTeam.getProjectCount((ProjectTypes) GC.getSPACESHIP_CAPSULE()));16932			thisTeam.changeProjectCount((ProjectTypes) GC.getSPACESHIP_BOOSTER(), -1 * thisTeam.getProjectCount((ProjectTypes) GC.getSPACESHIP_BOOSTER()));16933			thisTeam.changeProjectCount((ProjectTypes) GC.getSPACESHIP_STASIS(), -1 * thisTeam.getProjectCount((ProjectTypes) GC.getSPACESHIP_STASIS()));16934			thisTeam.changeProjectCount((ProjectTypes) GC.getSPACESHIP_ENGINE(), -1 * thisTeam.getProjectCount((ProjectTypes) GC.getSPACESHIP_ENGINE()));1693516936			if (pPlot) {16937				CUSTOMLOG("Removing launch pad at (%i, %i)", pPlot->getX(), pPlot->getY());16938				auto_ptr<ICvPlot1> pDllPlot(new CvDllPlot(pPlot));16939				gDLL->GameplaySpaceshipEdited(pDllPlot.get(), 0x0000); // Remove the launch pad16940			}16941		}16942	}16943}

Calls

Called by