martes, 22 de noviembre de 2011

Cómo mover una imagen en Python

A continuación mostraré código para mover nuestro gatito por la pantalla en el eje horizontal:

#!/usr/bin/python

import pygame

pygame.init()
pantalla=pygame.display.set_mode((600,400))
salir=False
reloj=pygame.time.Clock()
gatito=pygame.image.load("CatMariobien1.png")
(x,y)=(100,100) #Aquí especifico mis coordenadas para que se sitúe ahí mi gatito
vx=0 #Esta es la velocidad que más adelante explico

while salir!=True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            salir=True
        if event.type == pygame.KEYDOWN: #Evento de oprimir tecla
             if event.key == pygame.K_LEFT: #Oprimir tecla LEFT anvazará 10 pix
                 vx-=10
             if event.key == pygame.K_RIGHT: #Oprimir tecla RIGHT avanza 10 pix
                 vx+=10
        if event.type == pygame.KEYUP: #Evento de dejar de oprimir tecla
            if event.key == pygame.K_LEFT: #Cuando se deja de oprimir la vel es 0
                vx=0
            if event.key == pygame.K_RIGHT: #Cuando se deja de oprimir la vel es 0
                vx=0
       
                   
    x+=vx
    reloj.tick(15)
    pantalla.fill((0,0,0))
    pantalla.blit(gatito,(x,y))
    pygame.display.update()

pygame.quit()


Ponemos eventos de oprimir para que cuando el usuario oprima la tecla el monito avance los pixeles que ya establecimos, y pusimos eventos de dejar de oprimir, porque con lo anterior el monito no dejaba de avanzar, y ya con esto la velocidad que lleva el monito se frena a 0 y deja de avanzar cuando dejamos de oprimir la tecla.

No hay comentarios:

Publicar un comentario