예제 #1
0
 def reset_timer(self):
     """
     Resets the timer to zero.
     """
     self.running = False
     self.paused = False
     self.display_time(TimeService.time_convert(self.white_time))
예제 #2
0
 def get_move_time(self):
     end_time = time.time()
     time_lapsed = end_time - self.start_time
     down = self.white_time - time_lapsed
     self.move_time = self.white_time - down
     self.move_time_str = TimeService.time_convert(self.move_time)
     return self.move_time_str
 def __init__(self, screen, x, y):
     """
     Initializes a MoveTimeLimitComponentFE.
     :param screen: a pygame.Surface
     :param x: an int
     :param y: an int
     """
     self.white_limit = 30  # stored in seconds, uses time_convert to format
     self.black_limit = 30
     self.screen = screen
     self.x = x
     self.y = y
     self.colour = (0, 0, 225)
     self.rect = pygame.Rect(x, y, 160, 65)
     pygame.draw.rect(screen, self.colour, self.rect, -1)
     self.font = pygame.font.SysFont('Arial', 20)
     screen.blit(self.font.render(" Move Time Limit", True, (0, 0, 0)),
                 (x + 10, y - 2))
     screen.blit(
         self.font.render(
             " White: " + TimeService.time_convert(self.white_limit), True,
             (0, 0, 0)), (x, y + 20))
     self.white_sub = MoveTimeLimitButtonFE(screen, x + 20, y + 42,
                                            " - sec", "white")
     self.white_add = MoveTimeLimitButtonFE(screen, x + 80, y + 42,
                                            " + sec", "white")
     self.white_add_min = MoveTimeLimitButtonFE(screen, x + 20, y + 70,
                                                " - min", "white")
     self.white_sub_min = MoveTimeLimitButtonFE(screen, x + 80, y + 70,
                                                " + min", "white")
     screen.blit(
         self.font.render(
             " Black: " + TimeService.time_convert(self.black_limit), True,
             (0, 0, 0)), (x, y + 100))
     self.black_sub = MoveTimeLimitButtonFE(screen, x + 20, y + 122,
                                            " - sec", "black")
     self.black_add = MoveTimeLimitButtonFE(screen, x + 80, y + 122,
                                            " + sec", "black")
     self.black_add_min = MoveTimeLimitButtonFE(screen, x + 20, y + 150,
                                                " - min", "black")
     self.black_sub_min = MoveTimeLimitButtonFE(screen, x + 80, y + 150,
                                                " + min", "black")
     self.limit_buttons = [
         self.white_add, self.white_sub, self.black_add, self.black_sub,
         self.white_add_min, self.white_sub_min, self.black_add_min,
         self.black_sub_min
     ]
예제 #4
0
 def run_time(self):
     """
     Updates the elapsed time from the previous start time and calls the update_timer method
     to display the elapsed time.
     """
     end_time = time.time()
     time_lapsed = end_time - self.start_time
     down = self.white_time - time_lapsed
     time_str = TimeService.time_convert(down)
     self.display_time(time_str)
     self.move_time = self.white_time - down
     self.move_time_str = TimeService.time_convert(self.move_time)
     if int(down) == 0:
         pygame.mixer.music.load('./frontend/static/nooo.mp3')
         pygame.mixer.music.play(0)
         self.display_time(TimeService.time_convert(0))
         self.running = False
예제 #5
0
 def run_time(self):
     """
     Updates the elapsed time from the previous start time and calls the update_timer method
     to display the elapsed time.
     """
     end_time = time.time()
     time_lapsed = end_time - self.start_time
     time_str = TimeService.time_convert(time_lapsed)
     self.display_time(time_str)
 def update_white_score(self):
     """
     Updates white's score.
     """
     background = pygame.Rect(self.x, self.y + 20, 160, 20)
     pygame.draw.rect(self.screen, (255, 255, 255), background, 0)
     self.screen.blit(
         self.font.render(
             " White: " + TimeService.time_convert(self.white_limit), True,
             (0, 0, 0)), (self.x, self.y + 20))
 def update_black_score(self):
     """
     Updates black's score.
     """
     background = pygame.Rect(self.x, self.y + 100, 160, 20)
     pygame.draw.rect(self.screen, (255, 255, 255), background, 0)
     self.screen.blit(
         self.font.render(
             " Black: " + TimeService.time_convert(self.black_limit), True,
             (0, 0, 0)), (self.x, self.y + 100))
예제 #8
0
 def display_average(self, move_count):
     self.sum = 0
     for t in self.move_times:
         if t is not None:
             self.sum += t
     if move_count == 0:
         avg = 0
     else:
         avg = self.sum / move_count
         print(str(self.sum))
     avg = TimeService.time_convert(math.ceil(avg))
     rect = pygame.Rect(self.x - 70, self.y + 120, 200, 20)
     pygame.draw.rect(self.screen, (225, 225, 225), rect)
     self.screen.blit(self.font.render("average: " + avg, True, (0, 0, 0)),
                      (self.x - 70, self.y + 120))
예제 #9
0
 def set_time_limit(self, white_limit):
     self.white_time = white_limit
     self.display_time(TimeService.time_convert(self.white_time))
예제 #10
0
 def set_time_limit(self, black_limit):
     self.black_time = black_limit
     self.display_time(TimeService.time_convert(self.black_time))