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
- CustomMods::isGLOBAL_NO_CONQUERED_SPACESHIPS()
- CvDllPlot::CvDllPlot(CvPlot *)
- CvGlobals::getDLLIFace()
- CvGlobals::getSPACE_RACE_TRIGGER_PROJECT()
- CvGlobals::getSPACESHIP_BOOSTER()
- CvGlobals::getSPACESHIP_CAPSULE()
- CvGlobals::getSPACESHIP_ENGINE()
- CvGlobals::getSPACESHIP_STASIS()
- CvPlayer::GetID() const
- CvPlayer::getTeam() const
- CvPlayer::isBarbarian() const
- CvPlayer::isMinorCiv() const
- CvPlot::getX() const
- CvPlot::getY() const
CvString::CvStringCvString::format- CvTeam::changeProjectCount(ProjectTypes, int)
- CvTeam::getProjectCount(ProjectTypes) const
- CvTeam::getTeam(TeamTypes)
FILogFile::MsgFILogFileMgr::GetInstanceFILogFileMgr::GetLogICvEngineUtility1::GameplaySpaceshipEditedstd::auto_ptr::auto_ptrstd::auto_ptr::getstd::basic_string::c_str