Show current turn, date and time of the day in overview.

This commit is contained in:
Khopa 2019-06-30 00:14:33 +02:00
parent df5d9782e7
commit fd26700867
3 changed files with 19 additions and 3 deletions

View File

@ -13,6 +13,7 @@ from theater import *
from . import db from . import db
from .settings import Settings from .settings import Settings
from .event import * from .event import *
from datetime import datetime, timedelta
COMMISION_UNIT_VARIETY = 4 COMMISION_UNIT_VARIETY = 4
COMMISION_LIMITS_SCALE = 1.5 COMMISION_LIMITS_SCALE = 1.5
@ -85,6 +86,10 @@ PLAYER_BUDGET_BASE = 14
PLAYER_BUDGET_IMPORTANCE_LOG = 2 PLAYER_BUDGET_IMPORTANCE_LOG = 2
class Game: class Game:
settings = None # type: Settings settings = None # type: Settings
budget = PLAYER_BUDGET_INITIAL budget = PLAYER_BUDGET_INITIAL
@ -93,13 +98,14 @@ class Game:
ignored_cps = None # type: typing.Collection[ControlPoint] ignored_cps = None # type: typing.Collection[ControlPoint]
turn = 0 turn = 0
def __init__(self, player_name: str, enemy_name: str, theater: ConflictTheater): def __init__(self, player_name: str, enemy_name: str, theater: ConflictTheater, start_date: datetime):
self.settings = Settings() self.settings = Settings()
self.events = [] self.events = []
self.theater = theater self.theater = theater
self.player = player_name self.player = player_name
self.enemy = enemy_name self.enemy = enemy_name
self.turn = 0 self.turn = 0
self.date = start_date
def _roll(self, prob, mult): def _roll(self, prob, mult):
if self.settings.version == "dev": if self.settings.version == "dev":
@ -294,3 +300,11 @@ class Game:
self._generate_events() self._generate_events()
#self._generate_globalinterceptions() #self._generate_globalinterceptions()
@property
def current_turn_daytime(self):
return ["dawn", "day", "dusk", "night"][self.turn % 4]
@property
def current_day(self):
return self.date + timedelta(days=self.turn//4)

View File

@ -616,5 +616,6 @@ class OverviewCanvas:
return action return action
def updateOptions(self): def updateOptions(self):
self.current_turn.set("Turn : {}".format(self.game.turn)) self.current_turn.set("Turn : {} [{} {}]".format(self.game.turn, self.game.current_day.strftime("%d %b %Y"),
self.game.current_turn_daytime))
self.current_budget.set("Budget: {}m (+{}m)".format(self.game.budget, self.game.budget_reward_amount)) self.current_budget.set("Budget: {}m (+{}m)".format(self.game.budget, self.game.budget_reward_amount))

View File

@ -103,7 +103,8 @@ class Window:
start_generator.generate_groundobjects(conflicttheater) start_generator.generate_groundobjects(conflicttheater)
game = Game(player_name=player_name, game = Game(player_name=player_name,
enemy_name=enemy_name, enemy_name=enemy_name,
theater=conflicttheater) theater=conflicttheater,
start_date=datetime.now())
game.budget = int(game.budget * multiplier) game.budget = int(game.budget * multiplier)
game.settings.multiplier = multiplier game.settings.multiplier = multiplier
game.settings.sams = sams game.settings.sams = sams