Ekmek
on steam: ekmek_e
ok, I like how a corporation gives a yield or commerce for each bonus you have instead of just one bonus no matter how many you have. so i wnt to add the corp tags to buildings. the code in question is below and i think that it'll be an easy add. but will the ai recognize the value or does the ai only look at building weights when determining if it should build. thx
Code:
cvcity(8265)
int CvCity::getCorporationYieldByCorporation(YieldTypes eIndex, CorporationTypes eCorporation) const
{
FAssertMsg(eIndex >= 0, "eIndex expected to be >= 0");
FAssertMsg(eIndex < NUM_YIELD_TYPES, "eIndex expected to be < NUM_COMMERCE_TYPES");
FAssertMsg(eCorporation >= 0, "eCorporation expected to be >= 0");
FAssertMsg(eCorporation < GC.getNumCorporationInfos(), "GC.getNumCorporationInfos expected to be >= 0");
int iYield = 0;
if (isActiveCorporation(eCorporation) && !isDisorder())
{
for (int i = 0; i < GC.getNUM_CORPORATION_PREREQ_BONUSES(); ++i)
{
BonusTypes eBonus = (BonusTypes)GC.getCorporationInfo(eCorporation).getPrereqBonus(i);
if (NO_BONUS != eBonus && getNumBonuses(eBonus) > 0)
{
iYield += (GC.getCorporationInfo(eCorporation).getYieldProduced(eIndex) * getNumBonuses(eBonus) * GC.getWorldInfo(GC.getMapINLINE().getWorldSize()).getCorporationMaintenancePercent()) / 100;
}
}
}
return (iYield + 99) / 100;
}
----------------cvcity (3533)
int CvCity::getBonusYieldRateModifier(YieldTypes eIndex, BonusTypes eBonus) const
{
int iModifier;
int iI;
iModifier = 0;
for (iI = 0; iI < GC.getNumBuildingInfos(); iI++)
{
iModifier += getNumActiveBuilding((BuildingTypes)iI) * GC.getBuildingInfo((BuildingTypes) iI).getBonusYieldModifier(eBonus, eIndex);
}
return iModifier;
}