If y Else
Parte de la sección Fundamentos de scripting en Unity del Journey de Unity de Coddy. Lección 6 de 85.
Un bool contiene uno de dos valores: true o false. ¿Está abierta la puerta? ¿Está el jugador en el suelo? ¿Se acabó el juego?
bool gameOver = false;Un if ejecuta sus líneas solo cuando su condición es verdadera, y un else ejecuta sus líneas cuando no lo es. Las llaves { } contienen las líneas que pertenecen a cada parte:
if (gameOver)
{
transform.position = new Vector3(0, -2, 0);
}
else
{
transform.position = new Vector3(0, 2, 0);
}Esto hunde un objeto fuera de la vista cuando se acaba el juego y lo mantiene arriba mientras el juego continúa. Un código como este va dentro de un método, como Update(), nunca después de la última } de la clase.
Unity también responde preguntas con valores bool. Input.GetKey(KeyCode.Space) es true mientras el jugador mantiene pulsada la barra espaciadora y false el resto del tiempo, así que Update() puede consultarlo en cada fotograma.
Desafío
FácilMantener presionada la barra espaciadora debería levantar la puerta.
- Debajo de los dos comentarios en
Update(), escribeif (open)contransform.position = new Vector3(0, 3, 0);entre sus llaves. - Después, escribe
elsecontransform.position = new Vector3(0, 1, 0);entre sus llaves.
Pulsa «Jugar», haz clic en el juego y mantén presionada la barra espaciadora: la puerta sube y baja cuando la sueltas. Después, «Comprobar».
Pruébalo tú mismo
using UnityEngine;
public class Gate : MonoBehaviour
{
void Update()
{
bool open = Input.GetKey(KeyCode.Space);
// Si open es true, mueve la puerta a (0, 3, 0).
// De lo contrario, muévela a (0, 1, 0).
}
}
Todas las lecciones de Fundamentos de scripting en Unity
1Conceptos básicos de C# en Unity
Hola, UnityVariablesLos decimales necesitan una fTexto en la consolaVariables que recuerdanIf y ElseComparar númerosRepaso: Recolector de monedas7Bucles y métodos
Repetir con forBucles dentro de buclesEscribir un métodoMétodos que respondenArraysRepaso: escalera10Encontrar cosas
Buscar por nombreEtiquetasBuscar por tipoLas referencias vencen a FindEl null de UnityRepaso: moneda más cercana13Proyecto: Esquiva los bloques
El corredorBloques desde el cielo2Haz que se mueva
Coloca el cuboMuévelo en cada fotogramaGira cada segundoDirige con las teclasRepaso: conduce el cubo5Vectores
Sumar vectoresDireccionesEspacio local y mundialVelocidad diagonalDistancia entre objetosVector3 es una estructuraRepaso: piloto de dron8GameObjects y componentes
Referencias en el InspectorObtener un componenteComponentes faltantesAñadir un componenteRequireComponentMostrar y ocultarRepaso: interruptor de luz3El Inspector
Campos del InspectorSerializeFieldFloats y MathfAtributos del InspectorRepaso: Ascensor6Transformaciones y jerarquía
Padres e hijosIza la banderaEscalaMira las cosasMuévete hacia un puntoRepaso: Luna en órbita9Proyecto: Atrapa la estrella
El cazadorUna estrella fugaz12El ciclo de vida de un script
Awake y StartUpdate y LateUpdateOnEnable y OnDisableEl orden del ciclo de vidaRepaso: registrador del ciclo de vidaPractica por tu cuenta: Playground de Unity