Você está aqui: Python ::: Pygame ::: Aplicações com código fonte completo |
Como desenhar grids no Pygame para a criação de jogos como Jogo da Velha, Damas, Xadrez, Campo Minado e SudokuQuantidade de visualizações: 1458 vezes |
Nesta dica mostrarei um código Pygame completo contendo a base inicial para a crição de jogos de tabuleiro, ou seja, jogos baseados em grades, tais como Jogo da Velha, Damas, Xadrez, Campo Minado e Sudoku. Embora baseado em códigos encontrados em livros de jogos em Python, o código que apresento está todo em português, com as variáveis em português e cheio de comentários. Basta mexer em algumas variáveis de configuração e você conseguirá montar o tabuleiro que você deseja e, o melhor, detectar eventos em cada uma das células da grade. Veja, por exemplo, uma grade para o Jogo da Velha: ![]() Note que a célula está colorida de azul. Se clicarmos nela novamente, a cor volta ao branco. Se clicar novamente ela fica azul mais uma vez. O mesmo acontece com todas as células da grade. Veja o código completo para este mini-projeto em Pygame e Python: # vamos importar a biblioteca Pygame import pygame, sys # vamos definir as variáveis de configuração preto = (0, 0, 0) branco = (255, 255, 255) azul = (0, 0, 255) # define a quantidade de linhas e colunas QUANT_LINHAS = 3 QUANT_COLUNAS = 3 # altura, largura e margem entre as celúlas LARGURA = 100 ALTURA = 100 MARGEM = 1 # tamanho da janela ALTURA_JANELA = 303 LARGURA_JANELA = 303 # matriz que representa o grid, ou seja, a grade da janela grade = [] # método principal def main(): # monta as linhas e colunas da matriz for linha in range(QUANT_LINHAS): grade.append([]) for coluna in range(QUANT_COLUNAS): grade[linha].append(0) #grid[1][5] = 1 # inicializa a biblioteca pygame.init() # obtém a superfície do jogo e define o tamanho da tela janela = pygame.display.set_mode((ALTURA_JANELA, LARGURA_JANELA)) # vamos definir o título da janela do jogo pygame.display.set_caption("Como desenhar um grid no Pygame") # quantidade de frames por segundo FPS = 30 # construímos o timer timer = pygame.time.Clock() # 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 == pygame.QUIT: # fechamos a tela do jogo pygame.quit() # e saimos do programa sys.exit() # o evento é o click do mouse? elif evento.type == pygame.MOUSEBUTTONDOWN: # obtém a posição do clique do mouse pos = pygame.mouse.get_pos() # agora convertemos a posição do mouse para linha e coluna na grade |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
C++ - Como obter o diretório atual usando a função GetCurrentDirectory() da API do Windows - C++ e WinAPI |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |