def __display_incorrect(self): text = FONT.render("INCORRECT", False, (0, 0, 0)) SCREEN.blit(text, (W/2, 10)) pygame.display.update() pygame.time.delay(800) pygame.draw.rect(SCREEN, self.__LIGHT_TEAL, (W/2, 0, 150, 30)) pygame.display.update()
def __shuffle(self): self.__shuffle_image = pygame.transform.scale( self.__shuffle_image, (self.__width, self.__height)) SCREEN.blit(self.__shuffle_image, (self.__x, self.__y + 3 * self.__height + 25)) self.shuffle_rect = self.__shuffle_image.get_rect( x=self.__x, y=self.__y + 3 * self.__height + 25)
def __help(self): self.__help_image = pygame.transform.scale( self.__help_image, (self.__width, self.__height)) SCREEN.blit(self.__help_image, (self.__x, self.__y + 4 * self.__height + 50)) self.help_rect = self.__help_image.get_rect(x=self.__x, y=self.__y + 4 * self.__height + 50)
def __display_word(self): start_x = (2*int(W))/len(self.__shuffled_word) for i in range(0, len(self.__word)): rect = pygame.Rect(pygame.Rect(start_x + i*90, H/2, 80, 70)) pygame.draw.rect(SCREEN, BLACK, rect) letter_font = pygame.font.SysFont('Calibri (Body)', 60) letter = letter_font.render(str(self.__shuffled_word[i]), False, (255, 245, 255)) SCREEN.blit(letter, (start_x + i*90 + 20, H/2 + 10)) self.__shuffled_word_positions.append(rect)
def __show_score(self): box = pygame.Rect(self.__x + 2, self.__y + 1.3 * self.__height + 52, self.__width - 4, self.__height - 14) pygame.draw.rect(SCREEN, (255, 255, 255), box) score_font = pygame.font.SysFont('Calibri (Body)', 50) score = score_font.render(str(self.__score), False, (0, 0, 0)) SCREEN.blit( score, (self.__width / 2 - 10, self.__y + 1.5 * self.__height + 50))
def update_display(self): start_x = (2*int(W))/len(self.__shuffled_word) for i in range(0, len(self.__submission)): pygame.draw.rect(SCREEN, BLACK, pygame.Rect(start_x + i * 90, H / 3 - 30, 80, 70)) letter_font = pygame.font.SysFont('Calibri (Body)', 60) letter = letter_font.render(str(self.__submission[i]), False, WHITE) SCREEN.blit(letter, (start_x + i * 90 + 20, H / 3 - 20)) for i in range(0, len(self.__chosen)): if self.__chosen[i]: pygame.draw.line(SCREEN, self.__RED, (start_x + i * 90, H / 2), (start_x + i * 90 + 80, H / 2 + 70))
def __scoreboard(self): text = FONT.render("Score", False, (0, 0, 0)) SCREEN.blit(text, (self.__width / 4 + 10, self.__y + self.__height + 50)) outer_rect = pygame.Rect(self.__x, self.__y + 1.3 * self.__height + 50, self.__width, self.__height - 10) pygame.draw.rect(SCREEN, (0, 0, 0), outer_rect) inner_rect = pygame.Rect(self.__x + 2, self.__y + 1.3 * self.__height + 52, self.__width - 4, self.__height - 14) pygame.draw.rect(SCREEN, (255, 255, 255), inner_rect)
def __init__(self): SCREEN.fill(self.__LIGHT_TEAL) self.__read_words() self.extra = 0 self.__new_word_icon = pygame.image.load('images/next.png') self.new_word_rect = self.__new_word_icon.get_rect() self.__submit_icon = pygame.image.load('images/submit.png') self.submit_rect = self.__submit_icon.get_rect() self.__clear_icon = pygame.image.load('images/clear.png') self.clear_rect = self.__clear_icon.get_rect() self.on_click_new_word() self.__submit_button() self.__clear_button() self.__new_word_button()
def check_clicked_shuffled_letters(self, x, y): for pos in range(0, len(self.__shuffled_word_positions)): if self.__shuffled_word_positions[pos].collidepoint(x, y): if self.__chosen[pos] is False: self.__submission += self.__shuffled_word[pos] self.__chosen[pos] = True return True if self.__chosen[pos]: text = FONT.render("Letter already chosen", False, (0, 0, 0)) SCREEN.blit(text, (W / 2, 10)) pygame.display.update() pygame.time.delay(800) pygame.draw.rect(SCREEN, self.__LIGHT_TEAL, (W / 2, 0, 240, 30)) pygame.display.update() return False return False
def __clear_button(self): self.__clear_icon = pygame.transform.scale(self.__clear_icon, (100, 50)) SCREEN.blit(self.__clear_icon, (W/3 + 130 + 100, H/2 + 100)) self.clear_rect = self.__clear_icon.get_rect(x=W / 3 + 130 + 100, y=H/2 + 100)
def __new_word_button(self): self.__new_word_icon = pygame.transform.scale(self.__new_word_icon, (100, 50)) SCREEN.blit(self.__new_word_icon, (W/3 + 100, H/2+100)) self.new_word_rect = self.__new_word_icon.get_rect(x=W/3 + 100, y=H/2+100)
def __submit_button(self): self.__submit_icon = pygame.transform.scale(self.__submit_icon, (100, 50)) SCREEN.blit(self.__submit_icon, (W / 3 + 260 + 100, H / 2 + 100)) self.submit_rect = self.__submit_icon.get_rect(x=W / 3 + 260 + 100, y=H / 2 + 100)
def __owl(self): owl_image = pygame.image.load('images/owl.PNG') owl_image = pygame.transform.scale(owl_image, (self.__width, self.__height)) SCREEN.blit(owl_image, (self.__x, self.__y + 25))