Menu
CoddyTech

Riepilogo: stati della porta

Fa parte della sezione Architettura dei giochi in Unity del percorso Unity di Coddy. Lezione 32 di 50.

challenge icon

Sfida

Medio

Una porta di un castello con una serratura. Le frecce muovono il Player e la Key dorata chiama door.Unlock() quando il giocatore la raccoglie (entrambi pronti). IState e la StateMachine del capitolo sono nel progetto. Door.cs contiene i valori dell’Inspector (closedY 1.5, openY 4, speed 2, stayOpen 2, reach 2.5), un campo machine e PlayerNear(). Assegna alla porta cinque stati, come classi in DoorStates.cs chiamate LockedState, ClosedState, OpeningState, OpenState e ClosingState:

  • La porta inizia Bloccata. Premere Spazio vicino alla porta (PlayerNear()) registra solo Locked. Unlock() trasforma una porta bloccata in Chiusa e non fa nulla in qualsiasi altro stato.
  • Chiusa: premere Spazio vicino alla porta avvia l’apertura.
  • In apertura: la porta sale a speed finché la sua y non raggiunge openY, poi è Aperta.
  • Aperta: dopo stayOpen secondi inizia a chiudersi.
  • In chiusura: la porta scende a speed finché la sua y non raggiunge closedY, poi è Chiusa. Premere Spazio vicino alla porta mentre scende la riapre da dove si trova.

Premi Play, prova la porta bloccata, prendi la chiave, apri la porta e attraversala, poi premi Check.

Provalo tu

using UnityEngine;

// LockedState, ClosedState, OpeningState, OpenState e ClosingState

Tutte le lezioni di Architettura dei giochi in Unity