Menu
CoddyTech

Puntos de control

Parte de la sección Creación de juegos reales del Journey de Unity de Coddy. Lección 50 de 56.

challenge icon

Desafío

Intermedio

Una caída al vacío debería costarte un poco, no toda la partida. Conserva todo lo de las lecciones anteriores. Hay dos postes rojos en el recorrido, Checkpoint1 y Checkpoint2, cada uno con un activador y el script Checkpoint.

En Player:

  • Un campo fallY que se establece en el Inspector (-5), y un punto de reaparición que empieza donde empieza el jugador.
  • Un método público SetCheckpoint(Vector3 point) que establece point como punto de reaparición.
  • Cuando el jugador cae por debajo de fallY, devuélvelo al punto de reaparición y restablece su velocity. Establecer transform.position no basta por sí solo: el siguiente Move del controlador parte de donde la física lo vio por última vez y deshace el movimiento. Desactiva el controlador (controller.enabled = false) mientras mueves al jugador y vuelve a activarlo después.

En Checkpoint:

  • La primera vez que el jugador (un objeto con el script Player) entra en el activador, establece la posición del punto de control como punto de reaparición del jugador, cambia el poste a verde (Color.green) y registra Checkpoint reached.
  • Si vuelve a entrar, no ocurre nada, así que un punto de control anterior nunca devuelve el punto de reaparición a una posición previa.

Pulsa Play, llega a un punto de control y salta al vacío; después, pulsa Check.

Pruébalo tú mismo

using UnityEngine;

public class Checkpoint : MonoBehaviour
{
    // Una lección posterior completará esto: una bandera que cambia el lugar donde reapareces después de una caída.
}

Todas las lecciones de Creación de juegos reales