CultureHelpers::GetGreatWorkSlot(GreatWorkType)
- Defined in
- CvCultureClasses.cpp, line 5577
- Hook name
CivHooks::CultureHelpers_GetGreatWorkSlot
Hooks
static bool BeforeCultureHelpers_GetGreatWorkSlot(GreatWorkType eType, GreatWorkSlotType& result);static void AfterCultureHelpers_GetGreatWorkSlot(GreatWorkType eType, GreatWorkSlotType& result);static GreatWorkSlotType ReplaceCultureHelpers_GetGreatWorkSlot(GreatWorkSlotType (*original)(GreatWorkType), GreatWorkType eType);CivRegisterBefore<CivHooks::CultureHelpers_GetGreatWorkSlot>(host, &BeforeCultureHelpers_GetGreatWorkSlot);CivRegisterAfter<CivHooks::CultureHelpers_GetGreatWorkSlot>(host, &AfterCultureHelpers_GetGreatWorkSlot);CivRegisterReplace<CivHooks::CultureHelpers_GetGreatWorkSlot>(host, &ReplaceCultureHelpers_GetGreatWorkSlot);
Code
5577GreatWorkSlotType CultureHelpers::GetGreatWorkSlot(GreatWorkType eType)5578{5579 GreatWorkSlotType eSlot = NO_GREAT_WORK_SLOT;5580 Database::Connection* db = GC.GetGameDatabase();5581 if(db != NULL)5582 {5583 const char* szSQL = "SELECT GreatWorkSlots.ID from GreatWorks "5584 "inner join GreatWorkClasses on GreatWorks.GreatWorkClassType == GreatWorkClasses .Type "5585 "inner join GreatWorkSlots on GreatWorkClasses.SlotType == GreatWorkSlots.Type where GreatWorks .ID = ? LIMIT 1";55865587 Database::Results kResults;5588 if(db->Execute(kResults, szSQL))5589 {5590 kResults.Bind(1, eType);55915592 if(kResults.Step())5593 {5594 eSlot = static_cast<GreatWorkSlotType>(kResults.GetInt(0));5595 }5596 }5597 }55985599 return eSlot;5600}
Calls
- CvGlobals::GetGameDatabase()
Database::Connection::ExecuteDatabase::Results::BindDatabase::Results::GetIntDatabase::Results::ResultsDatabase::Results::Step