Bazaar developer reference

CvBuildingProductionAI::LogPossibleBuilds()

Defined in
CvBuildingProductionAI.cpp, line 193
Class
CvBuildingProductionAI
Hook name
CivHooks::CvBuildingProductionAI_LogPossibleBuilds

Hooks

static bool BeforeCvBuildingProductionAI_LogPossibleBuilds(CvBuildingProductionAI* self);static void AfterCvBuildingProductionAI_LogPossibleBuilds(CvBuildingProductionAI* self);static void ReplaceCvBuildingProductionAI_LogPossibleBuilds(void (*original)(CvBuildingProductionAI*), CvBuildingProductionAI* self);CivRegisterBefore<CivHooks::CvBuildingProductionAI_LogPossibleBuilds>(host, &BeforeCvBuildingProductionAI_LogPossibleBuilds);CivRegisterAfter<CivHooks::CvBuildingProductionAI_LogPossibleBuilds>(host, &AfterCvBuildingProductionAI_LogPossibleBuilds);CivRegisterReplace<CivHooks::CvBuildingProductionAI_LogPossibleBuilds>(host, &ReplaceCvBuildingProductionAI_LogPossibleBuilds);

Code

192/// Log all potential builds193void CvBuildingProductionAI::LogPossibleBuilds()194{195	if(GC.getLogging() && GC.getAILogging())196	{197		// Find the name of this civ and city198		CvString playerName = GET_PLAYER(m_pCity->getOwner()).getCivilizationShortDescription();199		CvString cityName = m_pCity->getName();200201		// Open the log file202		FILogFile* pLog = LOGFILEMGR.GetLog(m_pCity->GetCityStrategyAI()->GetLogFileName(playerName, cityName), FILogFile::kDontTimeStamp);203204		// Get the leading info for this line205		CvString strBaseString;206		strBaseString.Format("%03d, ", GC.getGame().getElapsedGameTurns());207		strBaseString += playerName + ", " + cityName + ", ";208209		// Dump out the weight of each buildable item210		CvBuildingXMLEntries* pGameBuildings = GC.GetGameBuildings();211		if(pGameBuildings != NULL)212		{213			for(int iI = 0; iI < m_Buildables.size(); iI++)214			{215				CvBuildingEntry* pBuildingEntry = pGameBuildings->GetEntry(m_Buildables.GetElement(iI));;216				if(pBuildingEntry != NULL)217				{218					CvString strTemp;219					strTemp.Format("Building, %s, %d", pBuildingEntry->GetDescription(), m_Buildables.GetWeight(iI));220					CvString strOutBuf = strBaseString + strTemp;221					pLog->Msg(strOutBuf);222				}223			}224		}225	}226}

Calls

Called by