Skip to content

Commit af00357

Browse files
committed
Refactor Timer initialization
1 parent 2a9f775 commit af00357

File tree

1 file changed

+21
-25
lines changed

1 file changed

+21
-25
lines changed

python_easy_chess_gui.py

+21-25
Original file line numberDiff line numberDiff line change
@@ -1594,6 +1594,25 @@ def set_depth_limit(self):
15941594
logging.exception('Failed to get user depth.')
15951595

15961596
self.max_depth = min(MAX_DEPTH, max(MIN_DEPTH, user_depth))
1597+
1598+
def define_timer(self, window, name='human'):
1599+
"""
1600+
Returns Timer object for either human or engine.
1601+
"""
1602+
if name == 'human':
1603+
timer = Timer(self.human_tc_type, self.human_base_time_ms,
1604+
self.human_inc_time_ms, self.human_period_moves)
1605+
else:
1606+
timer = Timer(self.engine_tc_type, self.engine_base_time_ms,
1607+
self.engine_inc_time_ms, self.engine_period_moves)
1608+
1609+
elapse_str = self.get_time_h_mm_ss(timer.base)
1610+
is_white_base = self.is_user_white and name == 'human' or \
1611+
not self.is_user_white and name != 'human'
1612+
window.Element('w_base_time_k' if is_white_base else 'b_base_time_k').Update(
1613+
elapse_str)
1614+
1615+
return timer
15971616

15981617
def play_game(self, window, engine_id_name, board):
15991618
"""
@@ -1633,31 +1652,8 @@ def play_game(self, window, engine_id_name, board):
16331652
is_hide_search_info = True
16341653

16351654
# Init timer
1636-
if self.is_user_white:
1637-
human_timer = Timer(self.human_tc_type, self.human_base_time_ms,
1638-
self.human_inc_time_ms, self.human_period_moves)
1639-
elapse_str = self.get_time_h_mm_ss(human_timer.base)
1640-
window.Element('w_base_time_k').Update(elapse_str)
1641-
1642-
engine_timer = Timer(self.engine_tc_type,
1643-
self.engine_base_time_ms,
1644-
self.engine_inc_time_ms,
1645-
self.engine_period_moves)
1646-
elapse_str = self.get_time_h_mm_ss(engine_timer.base)
1647-
window.Element('b_base_time_k').Update(elapse_str)
1648-
else:
1649-
engine_timer = Timer(self.engine_tc_type,
1650-
self.engine_base_time_ms,
1651-
self.engine_inc_time_ms,
1652-
self.engine_period_moves)
1653-
elapse_str = self.get_time_h_mm_ss(engine_timer.base)
1654-
window.Element('w_base_time_k').Update(elapse_str)
1655-
1656-
human_timer = Timer(self.human_tc_type, self.human_base_time_ms,
1657-
self.human_inc_time_ms,
1658-
self.human_period_moves)
1659-
elapse_str = self.get_time_h_mm_ss(human_timer.base)
1660-
window.Element('b_base_time_k').Update(elapse_str)
1655+
human_timer = self.define_timer(window)
1656+
engine_timer = self.define_timer(window, 'engine')
16611657

16621658
# Game loop
16631659
while not board.is_game_over(claim_draw=True):

0 commit comments

Comments
 (0)