def getPreviousValueByTeam(teamOrID, targetTeamOrID=None): global g_values, g_iTurn if g_iTurn is None: load() if g_iTurn == gc.getGame().getGameTurn() - 1 and g_values: eTeam = PlayerUtil.getTeamID(teamOrID) if targetTeamOrID is None: eTargetTeam = PlayerUtil.getActiveTeamID() else: eTargetTeam = PlayerUtil.getTeamID(targetTeamOrID) if eTeam in g_values: return g_values[eTeam][eTargetTeam] return None
def canAnyCityBuildUnit(eUnit, cities=None, askingTeamOrID=-1, checkBonuses=True): eAskingTeam = PlayerUtil.getTeamID(askingTeamOrID) unitInfo = gc.getUnitInfo(eUnit) if cities: for city in cities: if canCityBuildUnit(unitInfo, city, eAskingTeam, checkBonuses): return True return False else: return canCityBuildUnit(unitInfo, None, eAskingTeam, checkBonuses)
def getDifferenceByTeam(teamOrID, targetTeamOrID=None): eTeam, team = PlayerUtil.getTeamAndID(teamOrID) if targetTeamOrID is None: eTargetTeam = PlayerUtil.getActiveTeamID() else: eTargetTeam = PlayerUtil.getTeamID(targetTeamOrID) iPrevious = getPreviousValueByTeam(eTeam, eTargetTeam) if iPrevious is not None: return team.getEspionagePointsAgainstTeam(eTargetTeam) - iPrevious else: return 0