Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Obstáculos Generados Aleatoriamente. | Mejorar el Juego de Flappy Bird
Juego de Lucha en Unity
course content

Contenido del Curso

Juego de Lucha en Unity

Juego de Lucha en Unity

1. Sistema de Animación de Unity
2. Comportamiento del Jugador
3. Comportamiento del Enemigo
4. Mejorar el Juego
5. Mejorar el Juego de Flappy Bird

book
Obstáculos Generados Aleatoriamente.

La clase Obstacle gestiona los obstáculos en el juego, asegurando que se reposicionen cuando salen de la pantalla para mantener una jugabilidad continua.

Métodos

Método Start

csharp

Propósito: Inicializa el último obstáculo y encuentra el transform del jugador.

Funcionamiento: lastObject = startingLastObject;: Asigna lastObject al obstáculo inicial especificado en el Inspector; player = FindAnyObjectByType<PlayerMVT>().transform;: Encuentra el transform del jugador utilizando el método FindAnyObjectByType.

Método OnBecameInvisible

csharp

Propósito: Reubica el obstáculo cuando sale de la pantalla y cumple ciertas condiciones.

Funcionamiento: El script verifica que el jugador exista antes de continuar (if (player == null) return;), comprueba que el obstáculo esté detrás del jugador (if (transform.position.x >= player.position.x) return;) y evita reposicionar el mismo obstáculo consecutivamente (if (transform == lastObject) return;).

Obtiene la posición actual del obstáculo (Vector2 position = transform.position;), genera un número aleatorio (float random = Random.Range(0, 100);) y ajusta la posición y del obstáculo según el número aleatorio.

Luego, actualiza la posición x en relación con el último obstáculo (position.x = lastObject.position.x + Random.Range(6f, 10f);) y actualiza lastObject para referirse al obstáculo actual (lastObject = transform;).

Resumen

  • Inicialización: Establece el último obstáculo inicial y encuentra al jugador;

  • Reubicación: Cuando un obstáculo sale de la pantalla y cumple condiciones específicas, se reubica a una distancia aleatoria delante del último obstáculo con una altura aleatoria;

  • Condiciones: Garantiza que los obstáculos solo se reubiquen si están detrás del jugador y no sea el mismo obstáculo repetidamente.

Esta configuración permite un flujo continuo de obstáculos en el juego, manteniendo el desafío y la variedad para el jugador.

question mark

¿Qué determina la nueva posición y del objeto cuando se vuelve invisible y se reposiciona?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 3

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

course content

Contenido del Curso

Juego de Lucha en Unity

Juego de Lucha en Unity

1. Sistema de Animación de Unity
2. Comportamiento del Jugador
3. Comportamiento del Enemigo
4. Mejorar el Juego
5. Mejorar el Juego de Flappy Bird

book
Obstáculos Generados Aleatoriamente.

La clase Obstacle gestiona los obstáculos en el juego, asegurando que se reposicionen cuando salen de la pantalla para mantener una jugabilidad continua.

Métodos

Método Start

csharp

Propósito: Inicializa el último obstáculo y encuentra el transform del jugador.

Funcionamiento: lastObject = startingLastObject;: Asigna lastObject al obstáculo inicial especificado en el Inspector; player = FindAnyObjectByType<PlayerMVT>().transform;: Encuentra el transform del jugador utilizando el método FindAnyObjectByType.

Método OnBecameInvisible

csharp

Propósito: Reubica el obstáculo cuando sale de la pantalla y cumple ciertas condiciones.

Funcionamiento: El script verifica que el jugador exista antes de continuar (if (player == null) return;), comprueba que el obstáculo esté detrás del jugador (if (transform.position.x >= player.position.x) return;) y evita reposicionar el mismo obstáculo consecutivamente (if (transform == lastObject) return;).

Obtiene la posición actual del obstáculo (Vector2 position = transform.position;), genera un número aleatorio (float random = Random.Range(0, 100);) y ajusta la posición y del obstáculo según el número aleatorio.

Luego, actualiza la posición x en relación con el último obstáculo (position.x = lastObject.position.x + Random.Range(6f, 10f);) y actualiza lastObject para referirse al obstáculo actual (lastObject = transform;).

Resumen

  • Inicialización: Establece el último obstáculo inicial y encuentra al jugador;

  • Reubicación: Cuando un obstáculo sale de la pantalla y cumple condiciones específicas, se reubica a una distancia aleatoria delante del último obstáculo con una altura aleatoria;

  • Condiciones: Garantiza que los obstáculos solo se reubiquen si están detrás del jugador y no sea el mismo obstáculo repetidamente.

Esta configuración permite un flujo continuo de obstáculos en el juego, manteniendo el desafío y la variedad para el jugador.

question mark

¿Qué determina la nueva posición y del objeto cuando se vuelve invisible y se reposiciona?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 3
some-alt