Verse utiliza logic
como tipo para los valores booleanos, lo que significa que logic
solo tiene dos valores posibles: true
y false
.
Tanto true
como false
son literales de logic cuando los usas en el código de Verse.
El siguiente es un ejemplo de cómo crear una variable de logic llamada TargetLocked
, inicializada con el literal de logic false
:
var TargetLocked : logic = false
Operaciones de logic
El tipo logic
admite operaciones de consulta y de comparación.
Consulta
Las expresiones de consulta utilizan el operador ?
(consulta) y comprueban si un valor logic
es true
. En caso contrario, la expresión falla si el valor logic
es false
.
# Determina si se debe mostrar el icono de objetivo bloqueado si un objetivo está bloqueado
if (TargetLocked?):
ShowTargetLockedIcon()
Para más información sobre las operaciones de consulta, consulta Operadores.
Comparación
Para operaciones de comparación, puedes usar el operador falible =
para probar si dos valores lógicos son iguales, y el operador falible <>
para probar la desigualdad.
Por ejemplo, el siguiente código de ejemplo hará que aparezca un icono de "acción no disponible" si el jugador ha equipado un arma pero no tiene un objetivo, o tiene un objetivo pero no un arma. Esto puede expresarse mediante la comparación de los valores logic
que representan los dos factores.
- Si ambos son false, no verás el icono porque el jugador no está intentando atacar.
- Si ambos son true, no verás el icono porque el jugador está intentando atacar.
# Inicializa las variables de logic para hacer una demostración.
var TargetLocked : logic = false
var WeaponEquipped : logic = true
# Determina si el icono de "acción no disponible" es apropiado o no.
if (WeaponEquipped <> TargetLocked):
# El icono debería aparecer, porque parece que el jugador intenta
# atacar, pero falta o un arma o un objetivo.
ShowUnavailableIcon()
Para más información sobre las operaciones de comparación, consulta Operadores.
Cómo convertir una expresión falible en lógica
Puedes convertir una expresión que puede fallar en un tipo logic
utilizando logic{failable-expression}
, donde failable-expression
es una expresión que puede fallar.
En el siguiente ejemplo, la expresión falible GetRandomInt(0, MineFrequency) <> 0
se convierte al valor logic
false
si el entero aleatorio es 0 y true
en caso contrario.
IsMined := logic{GetRandomInt(0, MineFrequency) <> 0}
Biblioteca estándar
La biblioteca estándar proporciona funciones para ayudar a crear y utilizar valores de logic. Consulta Referencia para la API de Verse para obtener más información sobre estas funciones.
Tipo persistente
Los valores lógicos son persistentes, lo que significa que puedes usarlos en tus variables weak_map
de tu ámbito de módulo y hacer que sus valores se mantengan a lo largo de las sesiones de juego. Para obtener más información sobre la persistencia en Verse, consulta la sección Cómo utilizar datos persistentes en Verse.