import pygame
from pygame.locals import *
import sys
# Iniciación de Pygame
pygame.init ()
#Pantalla - ventana
W , H = 1000,600
PANTALLA= pygame.display.set_mode((W,H))
pygame.display.set_caption ( 'Exterminador')
icono = pygame.image.load("icon.png")
pygame.display.set_icon (icono)
#Fondo del juego
fondo=pygame.image.load('ciudad.png')
# Música de fondo
#pygame.mezclador. la música . load ( 'intergalactic_odyssey.ogg' )
#pygame.mezclador. la música . jugar ( - 1 )
#Personaje
quieto =pygame.image.load('idle1.png' )
#si el personaje camina a la derecha se cargaran todas estas imagenes
caminaDerecha = [pygame.image.load('run1.png'),
pygame.image.load('run2.png'),
pygame.image.load('run3.png'),
pygame.image.load('run4.png'),
pygame.image.load('run5.png'),
pygame.image.load('run6.png' )]
#si camina a la izquierda se cargaran todas estas imagenes
caminaIzquierda = [pygame.image.load ('run1-izq.png'),
pygame.image.load ('run2-izq.png'),
pygame.image.load ('run3-izq.png'),
pygame.image.load ('run4-izq.png'),
pygame.image.load ('run5-izq.png'),
pygame.image.load ('run6-izq.png')]
salta = [pygame.image.load ('jump1.png' ),
pygame.image.load ('jump2.png' )]
#Sonido
#sonido_arriba = pygame.image.load ( 'sonido / volume_up.png' )
#sonido_abajo = pygame . imagen . load ( 'sonido / volume_down.png' )
#sonido_mute = pygame . imagen . load ( 'sonido / volume_muted.png' )
#sonido_max = pygame . imagen . load ( 'sonido / volume_max.png' )
X = 0
px = 50
py = 200
ancho = 40
velocidad = 20
#Control de FPS
reloj = pygame.time.Clock()
#Variables salto
salto=False #el personaje esta en False porque no esta saltando
#Contador de salto
cuentaSalto=10
#Variables dirección
izquierda=False
derecha=False
#Pasos
cuentaPasos=0
#Movimiento
def recargaPantalla():
#Variables Globales
global cuentaPasos
global X
# fondo en movimiento
X_relativa = X % fondo.get_rect().width
PANTALLA.blit(fondo, (X_relativa - fondo.get_rect().width,0))
if X_relativa < W:
PANTALLA.blit(fondo,(X_relativa,0))
X -= 5
#Contador de pasos
if cuentaPasos + 1 >=6 :
cuentaPasos = 0
#Movimiento a la izquierda
if izquierda :
PANTALLA . blit ( caminaIzquierda [ cuentaPasos // 1 ], ( int ( px ), int ( py )))
cuentaPasos += 1
# Movimiento a la derecha
elif derecha :
PANTALLA . blit ( caminaDerecha [ cuentaPasos // 1 ], ( int ( px ), int ( py )))
cuentaPasos += 1
elif salto + 1 >= 2 :
PANTALLA . blit ( salta [ cuentaPasos // 1 ], ( int ( px ), int ( py )))
cuentaPasos += 1
else :
PANTALLA . blit ( quieto , ( int ( px ), int ( py )))
ejecuta = True
#Bucle de acciones y controles
while ejecuta :
#FPS
reloj.tick( 18 )
#Bucle del juego
for event in pygame.event.get():
if event.type == pygame.QUIT :
ejecuta = False
# Opción tecla pulsada
keys = pygame.key.get_pressed()
#Tecla A - Moviemiento a la izquierda
if keys [ pygame . K_a ] and px > velocidad :
px -= velocidad
izquierda = True
derecha = False
#Tecla D - Moviemiento a la derecha
elif [ pygame . K_d ] and px < 900 - velocidad - ancho :
px += velocidad
izquierda = False
derecha = True
#Personaje quieto
else :
izquierda = False
derecha = False
cuentaPasos = 0
#Tecla W - Moviemiento hacia arriba
if keys[ pygame . K_w ] and py > 100 :
py -= velocidad
#Tecla S - Moviemiento hacia abajo
if keys[ pygame . K_s ] and py < 300 :
py += velocidad
#Tecla ESPACIO - Salto
if not ( salto ):
if keys [ pygame . K_SPACE ]:
salto = True
izquierda = False
derecha = False
cuentaPasos = 0
else :
if cuentaSalto >= -10 :
py -= ( cuentaSalto * abs ( cuentaSalto )) * 0.5
cuentaSalto -= 1
else :
cuentaSalto = 10
salto = False
recargaPantalla()
pygame.display.update()
#RELOJ.tick(FPS)
#Salida del juego
pygame.quit()
PANTALLA DE SALIDA
No hay comentarios:
Publicar un comentario