Wie macht man das am besten? setBuildingYield gibts nicht oder? nur setBuildingYieldChange... ersteres wäre einfach. bei jeder stadtgründung oder eroberung neu berechnen lassen.
Wie macht man das am besten? setBuildingYield gibts nicht oder? nur setBuildingYieldChange... ersteres wäre einfach. bei jeder stadtgründung oder eroberung neu berechnen lassen.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
ich schaue nach.
Ist setBuildingYieldChange nicht sogar das, was ich suche?
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Das ist ne Stadtmethode.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Würde das jetzt so bei Stadtgründung machen:
PHP-Code:
iByzBonus = 0
if city.getBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE) == 0:
iByzBonus = 2
pCityByz, iter = pPlayer.firstCity(false)
while(pCityByz):
if pCityByz.getOwner() == pPlayer.getID() and not pCityByz.isNone() and not pCityByz.isCapital():
iByzBonus += 1
pCityByz, iter = pPlayer.nextCity(iter, false)
if iByzBonus > 0:
city.setBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE, iByzBonus)
Müsste gehen oder?
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Ah ne, da fehlt noch ne Kleinigkeit. Edit, so:
PHP-Code:
iByzBonus = city.getBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE)
if iByzBonus == 0:
iByzBonus = 2
pCityByz, iter = pPlayer.firstCity(false)
while(pCityByz):
if pCityByz.getOwner() == pPlayer.getID() and not pCityByz.isNone() and not pCityByz.isCapital():
iByzBonus += 1
pCityByz, iter = pPlayer.nextCity(iter, false)
if iByzBonus > 0:
city.setBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE, iByzBonus)
Argh ne, da fehlt der Capital Code.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Streichst du gerne Sachen durch? SO kann ich nichts lesen.
Glaube so:
PHP-Code:
# ZE: Byzanz 1/2 Start -----------------------------------------------------------------------------------------------
if pPlayer.getCivilizationType() == gc.getInfoTypeForString("CIVILIZATION_BYZANTIUM") and pPlayer.isAlive():
iTechZEBY = gc.getInfoTypeForString("TECH_BYZANTIUM")
if gc.getTeam(pPlayer.getTeam()).isHasTech(iTechZEBY):
iByzBonus = city.getBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE)
if iByzBonus == 0:
iByzBonus = 2
pCityByz, iter = pPlayer.firstCity(false)
while(pCityByz):
if pCityByz.getOwner() == pPlayer.getID() and not pCityByz.isNone() and not pCityByz.isCapital():
iByzBonus += 1
pCityByz, iter = pPlayer.nextCity(iter, false)
if iByzBonus > 0:
pCapital = pPlayer.getCapitalCity()
pCapital.setBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE, iByzBonus)
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Gibt es jetzt Bonus für jede Stadt und Nationalwunder in der Hauptstadt?
Ja 1 bzw 2. Aber der Code stimmt so noch nicht.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Das sehe ich, aber erstmal den wichtige Punkt nachfragen, eh ich Gehirnschmalz dafür opfere.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Sag mal bitte, was das Ziel des Codes oben ist? Welchen Teil soll er wo ausführen?
oncitybuilt:
PHP-Code:
# ZE: Byzanz 1/2 Start -----------------------------------------------------------------------------------------------
if pPlayer.getCivilizationType() == gc.getInfoTypeForString("CIVILIZATION_BYZANTIUM") and pPlayer.isAlive():
iTechZEBY = gc.getInfoTypeForString("TECH_BYZANTIUM")
if gc.getTeam(pPlayer.getTeam()).isHasTech(iTechZEBY):
if city.getBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE) == 0:
city.setBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE, 2)
if not city.getNumActiveBuilding(iPalace):
iByzBonus = 0
pCityByz, iter = pPlayer.firstCity(false)
while(pCityByz):
if pCityByz.getOwner() == pPlayer.getID() and not pCityByz.isNone() and not pCityByz.isCapital():
iByzBonus += 1
pCityByz, iter = pPlayer.nextCity(iter, false)
if iByzBonus > 0:
pCapital = pPlayer.getCapitalCity()
if pCapital.getBuildingYieldChange(iPalace, YieldTypes.YIELD_COMMERCE) == 2:
pCapital.setBuildingYieldChange(iPalace, YieldTypes.YIELD_COMMERCE, (iByzBonus + 2))
else:
pCapital.setBuildingYieldChange(iPalace, YieldTypes.YIELD_COMMERCE, iByzBonus)
ps: iPalace ist definiert.
edit: flüchtigkeitsfehler korrigiert.
edit2: das untere else erscheint mir überflüssig.
edit3:
PHP-Code:
# ZE: Byzanz 1/2 Start -----------------------------------------------------------------------------------------------
if pPlayer.getCivilizationType() == gc.getInfoTypeForString("CIVILIZATION_BYZANTIUM") and pPlayer.isAlive():
iTechZEBY = gc.getInfoTypeForString("TECH_BYZANTIUM")
if gc.getTeam(pPlayer.getTeam()).isHasTech(iTechZEBY):
if city.getBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE) == 0:
city.setBuildingYieldChange(gc.getInfoTypeForString("BUILDINGCLASS_PALACE"), YieldTypes.YIELD_COMMERCE, 2)
if not city.getNumActiveBuilding(iPalace):
iByzBonus = 0
pCityByz, iter = pPlayer.firstCity(false)
while(pCityByz):
if pCityByz.getOwner() == pPlayer.getID() and not pCityByz.isNone() and not pCityByz.isCapital():
iByzBonus += 1
pCityByz, iter = pPlayer.nextCity(iter, false)
if iByzBonus > 0:
pCapital = pPlayer.getCapitalCity()
pCapital.setBuildingYieldChange(iPalace, YieldTypes.YIELD_COMMERCE, (iByzBonus + 2))
Geändert von Cybah (02. September 2013 um 20:37 Uhr)
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)