Python - Script de movimentação de objetos livre em tela
Python - Script de movimentação de objetos livre em tela | ||
Canal Qb |
Script de movimentação de objetos livre em tela
import pygame, time# definindo as coresPRETO = (0, 0, 0)AMARELO = (255, 255, 0)VERMELHO = (255, 0, 0)VERDE = (0, 255, 0)AZUL = (0, 0, 255)# definindo outras constantes do jogoLARGURAJANELA = 500ALTURAJANELA = 400# definindo a função mover()def mover(figura, dim_janela):borda_esquerda = 0borda_superior = 0borda_direita = dim_janela[0]borda_inferior = dim_janela[1]if figura['objRect'].top < borda_superior or figura['objRect'].bottom > borda_inferior:# figura atingiu o topo ou a base da janelafigura['vel'][1] = -figura['vel'][1]if figura['objRect'].left < borda_esquerda or figura['objRect'].right > borda_direita:# figura atingiu o lado esquerdo ou direito da janelafigura['vel'][0] = -figura['vel'][0]figura['objRect'].x += figura['vel'][0]figura['objRect'].y += figura['vel'][1]# inicializando módulos de pygamepygame.init()# criando a janelajanela = pygame.display.set_mode((LARGURAJANELA, ALTURAJANELA))pygame.display.set_caption('Animação')# criando as figurasf1 = {'objRect': pygame.Rect(300, 80, 40, 80), 'cor': VERMELHO, 'vel': [0,-5], 'forma': 'ELIPSE'}f2 = {'objRect': pygame.Rect(200, 200, 20, 20), 'cor': VERDE, 'vel': [5,5], 'forma': 'ELIPSE'}f3 = {'objRect': pygame.Rect(100, 150, 60, 60), 'cor': AZUL, 'vel': [-5,5], 'forma': 'RETANGULO'}f4 = {'objRect': pygame.Rect(200, 150, 80, 40), 'cor': AMARELO, 'vel': [5,0], 'forma': 'RETANGULO'}figuras = [f1, f2, f3, f4]deve_continuar = True# loop do jogowhile deve_continuar:# checando se ocorreu um evento QUITfor evento in pygame.event.get():if evento.type == pygame.QUIT:deve_continuar = False# preenchendo o fundo com a cor pretajanela.fill(PRETO)for figura in figuras:# reposicionando a figuramover(figura,(LARGURAJANELA, ALTURAJANELA))# desenhando a figura na janelaif figura['forma'] == 'RETANGULO':pygame.draw.rect(janela, figura['cor'], figura['objRect'])elif figura['forma'] == 'ELIPSE':pygame.draw.ellipse(janela, figura['cor'], figura['objRect'])# atualizando na tela tudo o que foi desenhadopygame.display.update()# esperando 0.02 segundostime.sleep(0.02)# encerrando módulos de Pygamepygame.quit()
Nenhum comentário
Comente só assim vamos crescer juntos!
Observação: somente um membro deste blog pode postar um comentário.