Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local civilizationID = GameInfoTypes["CIVILIZATION_OCP_CHAGOS"]
- local mathCeil = math.ceil
- local ChagosDecisionID = GameInfoTypes.BUILDING_OCP_CHAGOS_DECISIONS_1
- local ChagosDecision2ID = GameInfoTypes.BUILDING_OCP_CHAGOS_DECISIONS_2
- local MoraleID = GameInfoTypes.PROMOTION_MORALE
- local KaluID = GameInfoTypes.BUILDING_OCP_KALU_MAKER
- local atomicID = GameInfoTypes.ERA_POSTMODERN
- local informationID = GameInfoTypes.ERA_FUTURE
- -------------------------------------------------------------------------------------------------------------------------
- -- Chagos: Promote chagossian cuisine
- -------------------------------------------------------------------------------------------------------------------------
- local Decisions_OCP_Chagos_Cuisine = {}
- Decisions_OCP_Chagos_Cuisine.Name = "TXT_KEY_DECISIONS_OCP_CHAGOS_CUISINE"
- Decisions_OCP_Chagos_Cuisine.Desc = "TXT_KEY_DECISIONS_OCP_CHAGOS_CUISINE_DESC"
- HookDecisionCivilizationIcon(Decisions_OCP_Chagos_Cuisine, "CIVILIZATION_OCP_CHAGOS")
- Decisions_OCP_Chagos_Cuisine.CanFunc = (
- function(player)
- if player:GetCivilizationType() ~= civilizationID then return false, false end
- if load(player, "Decisions_OCP_Chagos_Cuisine") == true then
- Decisions_OCP_Chagos_Cuisine.Desc = Locale.ConvertTextKey("TXT_KEY_DECISIONS_OCP_CHAGOS_CUISINE_ENACTED_DESC")
- return false, false, true
- end
- local goldCost = mathCeil(500*iMod)
- if player:GetGold() < goldCost then return true, false end
- local capital = player:GetCapitalCity()
- if capital:CountNumWaterPlots() == 0 then return true, false end
- local currentEra = player:GetCurrentEra()
- if currentEra ~= (atomicID or informationID) then return true, false end
- Decisions_OCP_Chagos_Cuisine.Desc = Locale.ConvertTextKey("TXT_KEY_DECISIONS_OCP_CHAGOS_CUISINE_DESC", goldCost)
- return true, true
- end
- )
- Decisions_OCP_Chagos_Cuisine.DoFunc = (
- function(player)
- local goldCost = mathCeil(500*iMod)
- player:ChangeGold(-goldCost)
- local plot = Map.GetPlot();
- local ownerID = plot:GetOwner()
- if ownerID > -1 then
- local owner = Players[ownerID]
- if owner:GetCivilizationType() == civilizationID then
- if plot:IsAdjacentToShallowWater() then
- local unit = Plot:GetUnit()
- unit:SetHasPromotion(MoraleID, true)
- else
- unit:SetHasPromotion(MoraleID, false)
- end
- end
- end
- for city in player:Cities() do
- if city:IsHasBuilding(KaluID, true) then
- city:SetNumRealBuilding(ChagosDecisionID, true)
- local waterplots = city:CountNumWaterPlots()
- city:ChangeFood(waterplots)
- end
- end
- save(player, "Decisions_OCP_Chagos_Cuisine", true)
- end
- )
- Decisions_AddCivilisationSpecific(civilizationID, "Decisions_OCP_Chagos_Cuisine", Decisions_OCP_Chagos_Cuisine)
- -------------------------------------------------------------------------------------------------------------------------
- -- Chagos: Pursue for international recognition
- -------------------------------------------------------------------------------------------------------------------------
- local Decisions_OCP_Chagos_Recognition = {}
- Decisions_OCP_Chagos_Recognition.Name = "TXT_KEY_DECISIONS_OCP_CHAGOS_RECOGNITION"
- Decisions_OCP_Chagos_Recognition.Desc = "TXT_KEY_DECISIONS_OCP_CHAGOS_RECOGNITION_DESC"
- HookDecisionCivilizationIcon(Decisions_OCP_Chagos_Recognition, "CIVILIZATION_OCP_CHAGOS")
- Decisions_OCP_Chagos_Recognition.CanFunc = (
- function(player)
- if player:GetCivilizationType() ~= civilizationID then return false, false end
- if load(player, "Decisions_OCP_Chagos_Recognition") == true then
- Decisions_OCP_Chagos_Recognition.Desc = Locale.ConvertTextKey("TXT_KEY_DECISIONS_OCP_CHAGOS_RECOGNITION_ENACTED_DESC")
- return false, false, true
- end
- local goldCost = mathCeil(400*iMod)
- if player:GetGold() < goldCost then return true, false end
- local league = Game.GetActiveLeague()
- if league:IsUnitedNations() then return true, false end
- local era = player:GetCurrentEra()
- if era ~= informationID then return true, false end
- return true, true
- end
- )
- Decisions_OCP_Chagos_Recognition.DoFunc = (
- function(player)
- local goldCost = mathCeil(400*iMod)
- player:ChangeGold(-goldCost)
- player:ChangeJONSCulturePerTurnFromMinorCivs(capital:GetNumGreatPeople())
- local capital = player:GetCapitalCity()
- local league = Game.GetActiveLeague()
- if league:IsInSession() then
- capital:SetNumRealBuilding(ChagosDecision2ID, 1)
- else
- capital:SetNumRealBuilding(ChagosDecision2ID, 0)
- end
- save(player, "Decisions_OCP_Chagos_Recognition", true)
- end
- )
- Decisions_AddCivilisationSpecific(civilizationID, "Decisions_OCP_Chagos_Recognition", Decisions_OCP_Chagos_Recognition)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement