Nesta dica eu mostrarei como usar a função pygame.draw.line() do Pygame para desenhar linhas. Veja a assinatura desta função:
pygame.draw.line(surface, color, start_point,
end_point, width)
O parâmetro surface é a superfície da tela, obtida por meio de uma chamada à função pygame.display.set_mode(). O parâmetro color é a cor da linha, start_point é uma tupla indicando as coordenadas x e y iniciais e end_point é uma tupla indicando as coordenadas x y y finais. Para finalizar, o parâmetro width indica a largura da linha.
Veja o código completo para um programa Pygame que pinta a tela do jogo de branco e em seguida desenha uma linha vermelha que começa nas coordenadas (x=10, y=10) e termina nas coordenadas (x=200, y=300), com largura de 2 pixels:
# vamos importar as bibliotecas necessárias
import pygame, sys
from pygame.locals import *
# inicializa a biblioteca
pygame.init()
# obtém a superfície do jogo e define o tamanho da tela
DISPLAYSURF = pygame.display.set_mode((500, 400), 0, 32)
# vamos definir o título da janela do jogo
pygame.display.set_caption('Como desenhar linhas no Pygame')
# vamos criar as cores branco e vermelho
BRANCO = (255, 255, 255)
VERMELHO = (255, 0, 0)
# vamos pintar a tela toda de branco
DISPLAYSURF.fill(BRANCO)
# desenhamos uma linha com largura de 2 pixels que começa nas coordenadas
# x = 10; y = 10 e vai até as coordenadas x = 200; y = 300
# a cor da linha será vermelho
pygame.draw.line(DISPLAYSURF, VERMELHO, (10, 10), (200, 300), 2)
# e aqui nós entramos no loop do game
while True:
# monitoramos os eventos
for evento in pygame.event.get():
# se o evento foi um pedido para sair
if evento.type == QUIT:
# fechamos a tela do jogo
pygame.quit()
# e saimos do programa
sys.exit()
# redesenha a tela continuamente
pygame.display.update()
|