civ2units
Emperor
Sorry for asking you again Prof.Garfield, but I'm confused because whatever I do, the code doesn't work for me. I don't understand this because in your game it works.
I've checked the code JPetroski is using in his Cold War scenario and changed my code because I would also like to have a text message showing the player how many cities are under his control and how much money he got the last turn.
For me the following code looks correct, at least I don't see anything unlogical.
Could it doesn't work because the code is located in the file 'onTurn.lua'?
Btw, I've made an update on GitHub, you should see the latest files there. In 'onTurn.lua' you will find the above code.
I've checked the code JPetroski is using in his Cold War scenario and changed my code because I would also like to have a text message showing the player how many cities are under his control and how much money he got the last turn.
For me the following code looks correct, at least I don't see anything unlogical.
Code:
-- American cities east of the Appalachians controlled by the Brits giving the player 5 pound for each city/each turn.
local AmericanCities = {object.lHartford, object.lNewHaven, object.lSalisbury, object.lSavannah, object.lAugusta, object.lBoston,
object.lPortsmouth, object.lBiddeford, object.lBaltimore, object.lAnnapolis, object.lHagerstown, object.lConcord, object.lBennington, object.lMontpellier,
object.lTrenton, object.lNewYork, object.lKingston, object.lAlbany, object.lSaratoga, object.lNewBern, object.lRaleigh, object.lSalem, object.lCharlotte,
object.lWilmington, object.lPhiladelphia, object.lHarrisburg, object.lWilkesBarre, object.lNewport, object.lBeaufort, object.lCharlesTown, object.lCamden,
object.lCowpens, object.lFredericksburg, object.lCharlottesville, object.lRoanoke, object.lRichmond, object.lYorktown, object.lNorfolk}
local function giveMoneyForOwnedCities()
local AmericanCities = 0
for __,AmericanCity in pairs (AmericanCities) do
if AmericanCity.owner == object.pBritishEmpire then
AmericanCities = AmericanCities+1
end
end
return AmericanCities
end
local function BritishTaxColonies()
local AmericanCities = giveMoneyForOwnedCities()
local AmericanCityBonusPerCity = 1000
local BritishBonus = math.abs (AmericanCities * AmericanCityBonusPerCity)
if turn >=1 and turn <= 100 and object.pBritishEmpire.isHuman == true then
object.pBritishEmpire.money = object.pBritishEmpire.money + BritishBonus
local multiLineText = "As we are controlling " ..tostring(AmericanCities).." former rebellious cities in the colonies we have received a bonus of " ..tostring(BritishBonus).." pound this turn"
text.addMultiLineTextToDialog(multiLineText,dialog)
dialog:show()
end
end
Could it doesn't work because the code is located in the file 'onTurn.lua'?
Btw, I've made an update on GitHub, you should see the latest files there. In 'onTurn.lua' you will find the above code.