Ejercicios del Capítulo 10

Volver al índice.

  1. ¿Por qué no funciona éste código que usa una función para dibujar una figura de palitos? Asume que los colores ya han sido definidos y que el resto del programa está bien ¿Qué es lo que falla?
    def dibujar_figura_palitos(pantalla, x, y):
        # Cabeza
        pygame.draw.ellipse(pantalla, NEGRO, [96,83,10,10], 0)
    
        # Piernas
        pygame.draw.line(pantalla, NEGRO, [100,100], [105,110], 2)
        pygame.draw.line(pantalla, NEGRO, [100,100],[95,110], 2)
    
        # Cuerpo
        pygame.draw.line(pantalla, ROJO, [100,100], [100,90], 2)
    
        # Brazos
        pygame.draw.line(pantalla, ROJO, [100,90], [104,100], 2)
        pygame.draw.line(pantalla, ROJO, [100,90], [96,100], 2)
    
  2. Muestra cómo obtener la coordenada x de la ubicación del ratón.
  3. ¿Por qué es importante mantener todos los eventos ``juntos'' en el bucle de procesamiento de eventos y tener solo un bucle? Se trata de algo más que de organización, podrían existir sutiles errores difíciles de diagnosticar ¿Cuáles son y por qué ocurrirán si no está todo junto en el bucle de procesamiento de eventos? (Si lo necesitas, repasa la sección ``Bucle de Procesamiento de Eventos'' del Capítulo 5.)
  4. Cuando creamos el rectángulo saltarín, multiplicamos la velocidad por -1 cuando éste chocaba con el borde de la pantalla. Explica por qué esta técnica no funcionará para mover un objeto con el teclado.
  5. ¿Por qué necesitamos unas coordenadas de inicio x e y para mover algo con el teclado o con el mando del juego? ¿Y por qué no hacen falta con el ratón?
  6. ¿Qué valores devolverá el mando del juego si es presionado hacia abajo y a la derecha?