Una de las funciones que más se repite en los juegos es la colisión entre objetos.

Objetivo:

En esta ocasión vamos a mostrar como colisionan dos cuadrados y la colisión impide el paso. Nuestro objeto no puede seguir avanzando porque encuentra un obstáculo que hemos colocado en su camino.

En primer lugar definimos variables con valores iniciales y definimos también los colores que vamos a utilizar.

import pygame
pygame.init()

negro=pygame.Color('black')
rojo=pygame.Color('red')
blanco=pygame.Color('white')
colorFondo=blanco
width = 1200 
height = 700
vel=0

x=200
y=480

Creamos ahora nuestra ventana de juego y abrimos el bucle.

#----------------Ventana y título---------------------
ventana = pygame.display.set_mode((width,height)) 
pygame.display.set_caption('Ladrillo')
clock=pygame.time.Clock()

#/////////////////Bucle del juego/////////////////
gameOver=False
while not gameOver:
    
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            gameOver=True

El siguiente paso va a definir el movimiento accionado con el teclado.

#----------- Teclas derecha izquierda ---------------  
    if event.type == pygame.KEYDOWN:
        if event.key ==pygame.K_LEFT: 
            vel = -3

        if event.key == pygame.K_RIGHT: 
            vel = 3
            
    if event.type == pygame.KEYUP:
        if event.key ==pygame.K_LEFT: 
            vel = 0

        if event.key == pygame.K_RIGHT: 
            vel = 0  
            
    #------------ LOGICA -------------------
    x += vel 
        
    if x<90:
        x=90

Cunado pulsamos la tecla LEFT se asigna a la variable VEL el valor -3 y 3 cuando pulsamos RIGHT. Cero cuando dejamos de pulsar.

En la lógica cambiamos el valor de X que es la coordenada que sitúa nuestro cuadrado en el área de juego, evitando que se salga de la ventana mediante un condicional

Ya solo nos queda dibujar los objetos y el fondo

    #-------------FONDO---------------------
    ventana.fill(colorFondo) #Fondo color
    
    #------------ DIBUJO ------------------
    ladrillo=pygame.draw.rect(ventana, negro,(600,480,90,85))
    cuadroMovil=pygame.draw.rect(ventana, rojo,(x-90,y,90,85))

Como vemos en las coordenada de x restamos 90 que es el ancho del cuadro móvil.

Ahora es el momento de definir la colisión.

    if cuadroMovil.colliderect(ladrillo):
        x=600

    pygame.display.flip()
pygame.quit()

Si cuadroMovil colisiona con cuadro ladrillo, entonces la x pasa a valer 600 que es la posición del cuadrado ladrillo.

También puede seguir el vídeo para completar la funcionalidad del juego que seguro vas a utilizar en muchos de tus juegos.

Juande Marín

Profesor de Marketing digital, divulgador de inteligencia artificial y neuroeducación. Especializado en posicionamiento en buscadores y diseño web. Autor de varios libros relacionados con el comercio electrónico y el marketing digital (McGraw Hill, Paraninfo,…) Juande2marin

ComercioyMarketing

¿Quién me pone el ROL de profesor?

El profesor o profesora debe seguir el mismo proceso de automatriculación del alumnado, y una vez completado el proceso debe solicitar que el gestor del campus le cambie el rol para que pueda acceder al contenido exclusivo del profesor. No se hace de forma automatizada para evitar filtraciones. Puede solicitar el cambio de ROL al mail: infor@comercioymarketing.es

¿Cómo doy de alta al alumnado?

Cada alumno puede darse de alta accediendo al Instituto y al módulo desde el el CAMPUS.comercioymarketing.es Durante el proceso tendrá que rellenar un formulario y al finalizar deberá introducir la clave de matriculación que se facilitará al profesor a través de correo electrónico: info@comercioymarketing.es

Presentación del campus.

¿Puedo descargar el ebook?

Todo el material está protegido por los derechos de autor y la Ley de Propiedad Intelectual. No se puede descargar ni difundir total o parcialmente. No obstante si algún alumno desea el material en formato papel podrá adquirirlo en la editorial LULU.com

Para localizar los libros se puede hacer una búsqueda en la propia web por título o autor: Juan de Dios Marín Peñas. Los libros en papel suelen estar promocionados para el alumnado matriculado (75% de descuento).

¿Se adapta a normativa?

Todo el material didáctico está adaptado al Real Decreto del Ciclo Formativo y responde a los Resultados de Aprendizaje que se deben alcanzar.

Para facilitar la evaluación se facilita un cuadro de actividades y su relación con los criterios de evaluación y RA.

¿Cómo se paga?

Los alumnos y alumnas pueden pagar directamente ingresando o transfiriendo el importe de la matrícula a la cuenta facilitada por el gestor del campus (info@comercioymarketing.es).

Para facilitar la identificación de los pagos se aconseja que se hagan de forma agrupada por clase y se identifique el Instituto cuando se haga el ingreso.

 

¿Cuánto cuesta?

El coste es de 7€ al año por cada uno de los módulos que contrate el alumno. El profesor y el Instituto no pagan nada. Estos 7€ da derecho a 9 meses de matriculación con acceso al material didáctico, vídeos, actividades, hosting, etc.


¿Quieres un material didáctico adaptado y actualizado?

Si estás buscando herramientas didácticas adaptadas a las nuevas tecnologías, si quieres utilizar la inteligencia artificial de forma didáctica aportando valor y quieres dinamizar tus clases; nuestra plataforma didáctica interactiva es la solución. Facilitamos material didáctico actualizado, dinámico, interactivo, práctico, editable y motivador.

Contactanos

Categorías