🟡 Capítulo 3: Enemigo que persigue (IA básica real)

Hasta ahora el enemigo solo se movía sin pensar.

Pero en un videojuego real:

👉 los enemigos reaccionan al jugador.

🎮 ¿Qué vamos a hacer?

Vamos a crear un enemigo que:

  • Detecta dónde está Tobi
  • Se mueve hacia él
  • Intenta alcanzarlo

👉 Esto es Inteligencia Artificial básica (IA).

🧠 Idea clave

Un enemigo inteligente hace esto:

“Si Tobi está a la derecha → voy a la derecha”

“Si Tobi está a la izquierda → voy a la izquierda”

👉 Así de simple… pero muy potente.

💻 Paso 1: Movimiento del jugador (Tobi)

Este código va en el sprite Tobi:

tobi = Sprite("Tobi")

while True:

  if tobi.iskeypressed("w"):
    tobi.move(10)

👉 Tobi sigue moviéndose como antes.

💻 Paso 2: Enemigo que persigue

Este código va en el sprite Enemy:

enemy = Sprite("Enemy")
tobi = Sprite("Tobi")

while True:

  if enemy.x < tobi.x:
    enemy.move(2)

  if enemy.x > tobi.x:
    enemy.move(-2)

🧠 Explicación paso a paso

  • enemy.x → posición del enemigo
  • tobi.x → posición del jugador
  • if enemy.x < tobi.x → Tobi está a la derecha
  • move(2) → el enemigo se acerca
  • move(-2) → se mueve hacia la izquierda

👉 El enemigo está “siguiendo” a Tobi.

🎮 ¿Qué has creado?

  • Un enemigo que reacciona
  • Un sistema de persecución
  • Un juego mucho más difícil

👉 Esto ya es IA básica de videojuegos.

⚡ Mejora opcional (más realista)

Puedes hacer el enemigo más lento o más rápido:

  • move(1) → enemigo lento
  • move(5) → enemigo rápido

👉 Esto cambia completamente la dificultad.

🚀 Reto Abutuber: Enemigo cazador

Crea un juego donde:

  • Tobi se mueve
  • El enemigo lo persigue
  • El enemigo intenta alcanzarlo

Extra: Ajusta la velocidad para hacerlo más difícil.

👉 Si no te sale, aquí tienes el código completo:

👀 Ver código completo
# SPRITE TOBI

tobi = Sprite("Tobi")

while True:

  if tobi.iskeypressed("w"):
    tobi.move(10)

# SPRITE ENEMY

enemy = Sprite("Enemy")
tobi = Sprite("Tobi")

while True:

  if enemy.x < tobi.x:
    enemy.move(2)

  if enemy.x > tobi.x:
    enemy.move(-2)

💡 Consejo Abutuber: Un enemigo que persigue convierte cualquier juego en un reto real. Esto es la base de la IA en videojuegos.