def graphics(surface, player, entities): surface.fill((255, 255, 255)) profile = render_text('Profile', fontsize=40) surface.blit(profile, (50, 10)) name = render_text('Name:') surface.blit(name, (50, 60)) icon = render_text('Icon:') surface.blit(icon, (50, 160)) surface.blit(player.icon_rendered, (50, 200)) pygame.draw.rect(surface, (230, 230, 230), (50, 200, player.icon_rendered.get_width(), player.icon_rendered.get_height()), 2) connection = render_text('Connection', fontsize=40) surface.blit(connection, (50, 300)) ip = render_text('IP:') surface.blit(ip, (50, 350)) for entity in entities: entity.render(surface)
def __init__(self, name, icon, color): self.name = name self.icon = icon self.color = color self.points = 0 self.move_finished = False self.name_rendered = render_text(self.name) self.active_name_rendered = render_text(self.name, color=(255, 0, 0)) self.icon_rendered = load_image(self.icon)
def graphics(surface, entities): surface.fill((255, 255, 255)) text = render_text(f'{current_player.name} won!', fontsize=40) surface.blit(text, ((config['WIDTH'] - text.get_width()) // 2, 100)) for entity in entities: entity.render(surface)
def graphics(surface, entities): surface.fill((255, 255, 255)) text = render_text('Will be added soon...', fontsize=80) surface.blit(text, ((config['WIDTH'] - text.get_width()) // 2, (config['HEIGHT'] - text.get_height()) // 2)) for entity in entities: entity.render(surface)
def graphics(surface, entities): surface.fill((255, 255, 255)) text = render_text('Chess', font='arial', fontsize=100) surface.blit(text, ((config['WIDTH'] - text.get_width()) // 2, (350 - text.get_height()) // 2)) for entity in entities: entity.render(surface)
def render(self, surface): text = render_text(self.text, font='arial', fontsize=self.fontsize, color=self.textcolor) pygame.draw.rect(surface, self.color, self.rect) surface.blit(text, (self.x + (self.width - text.get_width()) // 2, self.y + (self.height - text.get_height()) // 2))
def render(self, surface): pygame.draw.rect(surface, self.color, self.rect) if self.is_active: pygame.draw.rect(surface, (200, 200, 200), self.rect, 2) text = render_text(self.text, fontsize=20) surface.blit(text, (self.x + (self.width - text.get_width()) // 2, self.y + (self.height - text.get_height()) // 2))
def graphics(surface, delta_t, player1, player2, entities): surface.fill((255, 255, 255)) timer = render_text( '%.2d:%.2d' % (delta_t.total_seconds() // 60, delta_t.total_seconds() % 60)) surface.blit(timer, ((config['WIDTH'] - timer.get_width()) // 2, 50)) if current_player == player1: surface.blit(player1.active_name_rendered, (25, 10)) surface.blit(player2.name_rendered, ((config['WIDTH'] - player2.name_rendered.get_width() - 25), 10)) elif current_player == player2: surface.blit(player1.name_rendered, (25, 10)) surface.blit(player2.active_name_rendered, ((config['WIDTH'] - player2.name_rendered.get_width() - 25), 10)) player1_points = render_text(f'{player1.points}') surface.blit(player1_points, ((25 + player1.icon_rendered.get_width() + 25), 50 + (player1.icon_rendered.get_height() - player1_points.get_height()) // 2)) surface.blit(player1.icon_rendered, (25, 50)) surface.blit( player2.icon_rendered, ((config['WIDTH'] - player2.icon_rendered.get_width() - 25), 50)) player2_points = render_text(f'{player2.points}') surface.blit(player2_points, (((config['WIDTH'] - player2.icon_rendered.get_width()) - player2_points.get_width() - 50), 50 + (player2.icon_rendered.get_height() - player2_points.get_height()) // 2)) for entity in entities: entity.render(surface)
def graphics(surface, player1, player2, entities): display.fill((255, 255, 255)) name = render_text('Name:') surface.blit(name, (50, 50)) surface.blit(name, (350, 50)) icon = render_text('Icon:') surface.blit(icon, (50, 200)) surface.blit(icon, (350, 200)) pygame.draw.rect(surface, (230, 230, 230), (50, 250, player1.icon_rendered.get_width(), player1.icon_rendered.get_height()), 2) pygame.draw.rect(surface, (230, 230, 230), (350, 250, player1.icon_rendered.get_width(), player1.icon_rendered.get_height()), 2) surface.blit(player1.icon_rendered, (50, 250)) surface.blit(player2.icon_rendered, (350, 250)) for entity in entities: entity.render(surface)
def render(self, surface): text = render_text(self.text, font='arial', fontsize=self.fontsize, color=self.textcolor) pygame.gfxdraw.rectangle(surface, self.rect, self.color) surface.fill(self.color, self.rect) pygame.gfxdraw.filled_circle(surface, self.x, (self.y + self.radius - 1), self.radius, self.color) pygame.gfxdraw.filled_circle(surface, (self.x + self.width), (self.y + self.radius - 1), self.radius, self.color) surface.blit(text, (self.x + (self.width - text.get_width()) // 2, self.y + (self.height - text.get_height()) // 2))
def update(self): self.name_rendered = render_text(self.name) self.active_name_rendered = render_text(self.name, color=(255, 0, 0)) self.icon_rendered = load_image(self.icon)
def render(self, surface): pygame.draw.rect(surface, (255, 255, 255), self.rect) for row in range(self.n_tiles): for column in range(self.n_tiles): self.tile_map[row][column].render(surface) if self.selected_tile: paths, attack_paths = self.figure_map[self.selected_tile[0]][ self.selected_tile[1]].paths(self.n_tiles, self.figure_map) for path in paths: tile = pygame.Surface((self.tile_width, self.tile_height)) tile.set_alpha(0.3 * 255) tile.fill((0, 128, 0)) surface.blit(tile, (self.tile_map[path[0]][path[1]].rect.left, self.tile_map[path[0]][path[1]].rect.top)) for attack_path in attack_paths: tile = pygame.Surface((self.tile_width, self.tile_height)) tile.set_alpha(0.3 * 255) tile.fill((255, 70, 70)) surface.blit( tile, (self.tile_map[attack_path[0]][attack_path[1]].rect.left, self.tile_map[attack_path[0]][attack_path[1]].rect.top)) pygame.draw.rect( surface, (255, 0, 0), self.tile_map[self.selected_tile[0]][ self.selected_tile[1]].rect, 2) for row in range(self.n_tiles): for column in range(self.n_tiles): if self.figure_map[row][column]: self.figure_map[row][column].render( surface, (self.x, self.y), (self.tile_width, self.tile_height)) if self.recent_move != None: start = (self.x + self.recent_move[0][1] * self.tile_width + 0.5 * self.tile_width, self.y + self.recent_move[0][0] * self.tile_height + 0.5 * self.tile_height) stop = (self.x + self.recent_move[1][1] * self.tile_width + 0.5 * self.tile_width, self.y + self.recent_move[1][0] * self.tile_height + 0.5 * self.tile_height) move = self.move_type[0] + self.convert_board_coordinates( self.recent_move[0] ) + self.move_type[1] + self.convert_board_coordinates( self.recent_move[1]) move_rendered = render_text(move, fontsize=25) surface.blit( move_rendered, (self.x + (self.width - move_rendered.get_width()) // 2, self.y - 75)) arrow = Arrow(start, stop, 5, (220, 200, 0)) arrow.render(surface)