## Copyright (c) 2009 The BUG Mod. ## ## Bug System: EmperorFool (thanks!) ## Author Glider1 from CvPythonExtensions import * import BugUtil import CvUtil import BugCore import Popup as PyPopup import CvEventInterface import PyHelpers gc = CyGlobalContext() RevDCMOpt = BugCore.game.RevDCM PICK_RELIGION_EVENT = CvUtil.getNewEventID("PickReligion") PyPlayer = PyHelpers.PyPlayer PyInfo = PyHelpers.PyInfo PyCity = PyHelpers.PyCity PyGame = PyHelpers.PyGame localText = CyTranslator() #RevolutionDCM #Class ReligionControl responds to "calls back" from the DLL via the BUG system. #This has been done by declaring the attachment in RevDCM.xml. BUG will then instanticiate #the class and attach it's DLL call backs. class ReligionControl: def doHolyCity(self): if RevDCMOpt.isOC_LIMITED_RELIGIONS():
##------------------------------------------------------------------- from CvPythonExtensions import * import CvUtil import BugUtil import BugCore import PlayerUtil import Roman import RandomNameUtils import random import Popup as PyPopup import BugData SD_MOD_ID = "UnitCnt" RENAME_EVENT_ID = CvUtil.getNewEventID("UnitNaming.Rename") gc = CyGlobalContext() localText = CyTranslator() UnitNamingOpt = BugCore.game.UnitNaming phonetic_array = ['Alpha', 'Bravo', 'Charlie', 'Delta', 'Echo', 'Foxtrot', 'Golf', 'Hotel', 'India', 'Juliet', 'Kilo', 'Lima', 'Mike', 'November', 'Oscar', 'Papa', 'Quebec', 'Romeo', 'Sierra', 'Tango', 'Uniform', 'Victor', 'Whiskey', 'Xray', 'Yankee', 'Zulu'] greek_array = ['Alpha', 'Beta', 'Gamma', 'Delta', 'Epsilon', 'Zeta', 'Eta', 'Theta', 'Iota', 'Kappa', 'Lambda', 'Mu', 'Nu', 'Xi', 'Omicron', 'Pi', 'Rho', 'Sigma', 'Tau', 'Upsilon', 'Phi', 'Chi', 'Psi', 'Omega'] ordinal_array = 'th st nd rd th th th th th th'.split() #def BUGPrint (stuff):
## Modified from reminder by eotinb ## by Ruff and EF ##------------------------------------------------------------------- ## Reorganized to work via CvCustomEventManager ## using Civ4lerts as template. ## CvCustomEventManager & Civ4lerts by Gillmer J. Derge ##------------------------------------------------------------------- ## EF: Turned into a real queue, can be disabled ##------------------------------------------------------------------- from CvPythonExtensions import * import CvUtil import SdToolKit import ScreenResolution as SR STORE_EVENT_ID = CvUtil.getNewEventID() RECALL_EVENT_ID = CvUtil.getNewEventID() GC = CyGlobalContext() GAME = GC.getGame() TRNSLTR = CyTranslator() g_reminders = None # Used to display flashing end-of-turn text g_turnReminderTexts = "" # Used to receive network messages g_hasNetMessage = hasattr(CyPlayer, "addReminder")
## A New Dawn Mod Code ## from CvPythonExtensions import * import BugOptions import BugCore import CvUtil GC = CyGlobalContext() AutomatedOpts = BugCore.game.AutomatedSettings MODDEROPTION_EVENT_ID = CvUtil.getNewEventID("Modder Options") CANAUTOBUILD_EVENT_ID = CvUtil.getNewEventID("CanAutoBuild") CANPLAYERAUTOBUILD_EVENT_ID = CvUtil.getNewEventID("CanPlayerAutoBuild") class AutomatedSettings: def __init__(self, eventManager): eventManager.addEventHandler("OnLoad", self.onLoadGame) eventManager.addEventHandler("GameStart", self.onGameStart) eventManager.addEventHandler("ModNetMessage", self.onModNetMessage) def onLoadGame(self,argsList): self.optionUpdate() def onGameStart(self,argsList): self.optionUpdate() def optionUpdate(self): if AutomatedOpts.isReset(): resetOptions() else: setXMLOptionsfromIniFile()
## 10. return name ##------------------------------------------------------------------- from CvPythonExtensions import * import CvUtil import BugUtil import BugCore import Roman import RandomNameUtils import random import Popup as PyPopup import BugData SD_MOD_ID = "UnitCnt" RENAME_EVENT_ID = CvUtil.getNewEventID() gc = CyGlobalContext() localText = CyTranslator() UnitNamingOpt = BugCore.game.UnitNaming phonetic_array = ['Alpha', 'Bravo', 'Charlie', 'Delta', 'Echo', 'Foxtrot', 'Golf', 'Hotel', 'India', 'Juliet', 'Kilo', 'Lima', 'Mike', 'November', 'Oscar', 'Papa', 'Quebec', 'Romeo', 'Sierra', 'Tango', 'Uniform', 'Victor', 'Whiskey', 'Xray', 'Yankee', 'Zulu'] greek_array = ['Alpha', 'Beta', 'Gamma', 'Delta', 'Epsilon', 'Zeta', 'Eta', 'Theta', 'Iota', 'Kappa', 'Lambda', 'Mu', 'Nu', 'Xi', 'Omicron', 'Pi', 'Rho', 'Sigma', 'Tau', 'Upsilon', 'Phi', 'Chi', 'Psi', 'Omega'] ordinal_array = 'th st nd rd th th th th th th'.split() #def BUGPrint (stuff):
## A New Dawn Mod Option Code from CvPythonExtensions import * import BugCore import CvUtil GC = CyGlobalContext() ANewDawnOpt = BugCore.game.RoMSettings MODDEROPTION_EVENT_ID = CvUtil.getNewEventID() MODDERGAMEOPTION_EVENT_ID = CvUtil.getNewEventID() DIFFICULTY_EVENT_ID = CvUtil.getNewEventID() COLOR_EVENT_ID = CvUtil.getNewEventID() CANBUILD_EVENT_ID = CvUtil.getNewEventID() class ANewDawnSettings: def __init__(self, eventManager): eventManager.addEventHandler("OnLoad", self.onLoadGame) eventManager.addEventHandler("GameStart", self.onGameStart) eventManager.addEventHandler("ModNetMessage", self.onModNetMessage) def onLoadGame(self, argsList): self.optionUpdate() def onGameStart(self, argsList): self.optionUpdate() def optionUpdate(self): if ANewDawnOpt.isRoMReset(): resetOptions() else:
import SdToolKit sdEcho = SdToolKit.sdEcho sdModInit = SdToolKit.sdModInit sdModLoad = SdToolKit.sdModLoad sdModSave = SdToolKit.sdModSave sdEntityInit = SdToolKit.sdEntityInit sdEntityExists = SdToolKit.sdEntityExists sdEntityWipe = SdToolKit.sdEntityWipe sdGetVal = SdToolKit.sdGetVal sdSetVal = SdToolKit.sdSetVal sdGroup = "UnitCnt" ############################ RENAME_EVENT_ID = CvUtil.getNewEventID("UnitNaming.Rename") gc = CyGlobalContext() PyInfo = PyHelpers.PyInfo UnitNamingOpt = BugCore.game.UnitNaming phonetic_array = ['Alpha', 'Bravo', 'Charlie', 'Delta', 'Echo', 'Foxtrot', 'Golf', 'Hotel', 'India', 'Juliett', 'Kilo', 'Lima', 'Mike', 'November', 'Oscar', 'Papa', 'Quebec', 'Romeo', 'Sierra', 'Tango', 'Uniform', 'Victor', 'Whiskey', 'X-Ray', 'Yankee', 'Zulu'] greek_array = ['Alpha', 'Beta', 'Gamma', 'Delta', 'Epsilon', 'Zeta', 'Eta', 'Theta', 'Iota', 'Kappa', 'Lambda', 'Mu', 'Nu', 'Xi', 'Omicron', 'Pi', 'Rho', 'Sigma', 'Tau', 'Upsilon', 'Phi', 'Chi', 'Psi', 'Omega'] ordinal_array = 'th st nd rd th th th th th th'.split() def BUGPrint (stuff):
## Copyright (c) 2009 The BUG Mod. ## ## Bug System: EmperorFool (thanks!) ## Author Glider1 from CvPythonExtensions import * import BugUtil import CvUtil import BugCore import Popup as PyPopup import CvEventInterface gc = CyGlobalContext() RevDCMOpt = BugCore.game.RevDCM PICK_RELIGION_EVENT = CvUtil.getNewEventID("PickReligion") localText = CyTranslator() #RevolutionDCM #Class ReligionControl responds to "calls back" from the DLL via the BUG system. #This has been done by declaring the attachment in RevDCM.xml. BUG will then instanticiate #the class and attach it's DLL call backs. class ReligionControl: def doHolyCity(self): if RevDCMOpt.isOC_LIMITED_RELIGIONS(): #This algorithm has to deal with a PLETHORA of possibilities like multiple religions #being founded by multiple players on the same turn. MAX_PC_PLAYERS = gc.getMAX_PC_PLAYERS() iPlayerQueue = [] iSlotQueue = []
## A New Dawn Mod Code ## from CvPythonExtensions import * import BugOptions import BugCore import CvUtil GC = CyGlobalContext() AutomatedOpts = BugCore.game.AutomatedSettings MODDEROPTION_EVENT_ID = CvUtil.getNewEventID() CANAUTOBUILD_EVENT_ID = CvUtil.getNewEventID() CANPLAYERAUTOBUILD_EVENT_ID = CvUtil.getNewEventID() class AutomatedSettings: def __init__(self, eventManager): eventManager.addEventHandler("OnLoad", self.onLoadGame) eventManager.addEventHandler("GameStart", self.onGameStart) eventManager.addEventHandler("ModNetMessage", self.onModNetMessage) def onLoadGame(self, argsList): self.optionUpdate() def onGameStart(self, argsList): self.optionUpdate() def optionUpdate(self): if AutomatedOpts.isReset(): resetOptions()
from CvPythonExtensions import * import CvMainInterface import CvUtil import Popup as PyPopup import BugCore import BugUtil import PlayerUtil import SdToolKit import autolog SD_MOD_ID = "Reminders" SD_QUEUES_ID = "queues" SD_QUEUE_ID = "queue" # old format saves a single queue STORE_EVENT_ID = CvUtil.getNewEventID("Reminder.Store") RECALL_EVENT_ID = CvUtil.getNewEventID("Reminder.Recall") RECALL_AGAIN_EVENT_ID = CvUtil.getNewEventID("Reminder.RecallAgain") gc = CyGlobalContext() ReminderOpt = BugCore.game.Reminder g_eventMgr = None g_autolog = None g_reminders = None # Used to display flashing end-of-turn text g_turnReminderTexts = None # Used to receive network messages
from CvPythonExtensions import * import CvMainInterface import CvUtil import Popup as PyPopup import BugCore import BugUtil import PlayerUtil import SdToolKit import autolog SD_MOD_ID = "Reminders" SD_QUEUES_ID = "queues" SD_QUEUE_ID = "queue" # old format saves a single queue STORE_EVENT_ID = CvUtil.getNewEventID("Reminder.Store") RECALL_EVENT_ID = CvUtil.getNewEventID("Reminder.Recall") RECALL_AGAIN_EVENT_ID = CvUtil.getNewEventID("Reminder.RecallAgain") gc = CyGlobalContext() ReminderOpt = BugCore.game.Reminder g_eventMgr = None g_autolog = None g_reminders = None # Used to display flashing end-of-turn text g_turnReminderTexts = None # Used to receive network messages
## A New Dawn Mod Code ## from CvPythonExtensions import * gc = CyGlobalContext() import BugOptions import BugCore import BugUtil import Popup as PyPopup import CvUtil import PlayerUtil import BugOptionsScreen ANewDawnOpt = BugCore.game.RoMSettings MainOpt = BugCore.game.MainInterface OPTIONS_POPUP_ID = CvUtil.getNewEventID("A New Dawn Options Popup") def blankHandler( playerID, netUserData, popupReturn ) : # Dummy handler to take the second event for popup return def optionHandler( iPlayerID, netUserData, popupReturn ) : if( popupReturn.getButtonClicked() == 0 ) : BugOptionsScreen.showOptionsScreen() ANewDawnOpt.setHasRunAND(True) elif( popupReturn.getButtonClicked() == 1 ) : ANewDawnOpt.setHasRunAND(False) elif( popupReturn.getButtonClicked() == 2 ) : ANewDawnOpt.setHasRunAND(True)
## A New Dawn Mod Option Code from CvPythonExtensions import * import BugCore import CvUtil GC = CyGlobalContext() ANewDawnOpt = BugCore.game.RoMSettings MODDEROPTION_EVENT_ID = CvUtil.getNewEventID("Modder Options") MODDERGAMEOPTION_EVENT_ID = CvUtil.getNewEventID("Modder Game Options") DIFFICULTY_EVENT_ID = CvUtil.getNewEventID("Difficulty") COLOR_EVENT_ID = CvUtil.getNewEventID("Color") CANBUILD_EVENT_ID = CvUtil.getNewEventID("CanBuild") class ANewDawnSettings: def __init__(self, eventManager): eventManager.addEventHandler("OnLoad", self.onLoadGame) eventManager.addEventHandler("GameStart", self.onGameStart) eventManager.addEventHandler("ModNetMessage", self.onModNetMessage) def onLoadGame(self,argsList): self.optionUpdate() def onGameStart(self,argsList): self.optionUpdate() def optionUpdate(self): if ANewDawnOpt.isRoMReset(): resetOptions() else: setXMLOptionsfromIniFile()
import Popup as PyPopup import BugCore import BugUtil import SdToolKit import autolog import string # BUG - Mac Support - start BugUtil.fixSets(globals()) # BUG - Mac Support - end # globals SD_MOD_ID = "AbandonCity" ABANDON_CITY_DEMOLISH_BUILDING_EVENT_ID = CvUtil.getNewEventID("AbandonCity.Active") gc = CyGlobalContext() localText = CyTranslator() PyPlayer = PyHelpers.PyPlayer PyInfo = PyHelpers.PyInfo #AbandonCityOpt = BugCore.game.AbandonCity g_modEventManager = None g_eventMgr = None g_autolog = None # parameters for modders. bSettlersAndWorkers = True # "Treu means settlers and workers are produced. False to just produce workers. iPopulationForSettlers = 10 # If producing settlers then produce 1 per each full city population of iPopulationForSettlers iPopulationForWorkers = 3 # produce 1 per each full city population of iPopulationForWorkers.
## A New Dawn Mod Code ## from CvPythonExtensions import * gc = CyGlobalContext() import BugOptions import BugCore import BugUtil import Popup as PyPopup import CvUtil import PlayerUtil ANewDawnOpt = BugCore.game.RoMSettings MainOpt = BugCore.game.MainInterface MODDEROPTION_EVENT_ID = CvUtil.getNewEventID("Modder Options") MODDERGAMEOPTION_EVENT_ID = CvUtil.getNewEventID("Modder Game Options") DIFFICULTY_EVENT_ID = CvUtil.getNewEventID("Difficulty") COLOR_EVENT_ID = CvUtil.getNewEventID("Color") CANBUILD_EVENT_ID = CvUtil.getNewEventID("CanBuild") class ANewDawnSettings: def __init__(self, eventManager): eventManager.addEventHandler("OnLoad", self.onLoadGame) eventManager.addEventHandler("GameStart", self.onGameStart) eventManager.addEventHandler("GameStart", self.onGameStart) eventManager.addEventHandler("ModNetMessage", self.onModNetMessage) def onLoadGame(self,argsList): self.optionUpdate() MainOpt.setShowOptionsKeyReminder(True)