Add this to your mod and use getDateForTurn() instead of getTurnMonthForGame().
This would pretty much automate the whole thing, and it should only add some second of lag at startup (since this is when the custom Python in your mod is loaded).
Code:
class GameDate:
index = [iStartYear * 12]
def __init__(self):
iStartYear = Game.getStartYear()
eGameSpeed = Game.getGameSpeedType()
pSpeedInfo = gc.getGameSpeedInfo(eGameSpeed)
iGameMonth = iStartYear * 12
iIncrement = 0
while iIncrement < pSpeedInfo.getNumTurnIncrements():
pTurnInfo = pSpeedInfo.getGameTurnInfo(iIncrement)
iTurn = 0
while iTurn < pTurnInfo.iNumGameTurnsPerIncrement:
iGameMonth += pTurnInfo.iMonthIncrement
self.index.append(iGameMonth)
iTurn += 1
iIncrement += 1
def getDateForTurn(iTurn):
return GameDate.index[iTurn]
GameDate()
Basically, you have two values; SenateOutcome.iReward and SenateOutcome.iPenalties - you use these to call on either random outcomes or by index.
)