Menu
CoddyTech

Operadores lógicos, parte 3

Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 24 de 92.

Puedes combinar varias condiciones en una sola expresión. Para comprobar si un número es positivo y par:

var number := 6
var is_positive := number > 0
var is_even := number % 2 == 0
var result := is_positive and is_even # true

También puedes escribir las condiciones directamente, sin las variables adicionales:

var result := number > 0 and number % 2 == 0

Con or, basta con una condición verdadera. -4 es negativo, así que esto es true aunque -4 no sea impar:

var number := -4
var negative_or_odd := number < 0 or number % 2 != 0 # true

GDScript evalúa primero not, después and y luego or. Los paréntesis cambian el orden:

var level := 3
var has_key := false
var has_map := true
print(level >= 5 and (has_key or has_map)) # false
print(level >= 5 and has_key or has_map) # true

Para comprobar que un valor está dentro de un rango, escribe dos comparaciones unidas por and: level >= 1 and level <= 10. GDScript indica que la forma matemática 1 <= level <= 10 es un error.

challenge icon

Desafío

Fácil

Un jugador quiere explorar una mazmorra. Las variables level, has_key y has_map ya están declaradas. Declara tres más:

  • can_enter: level es como mínimo 5 y el jugador tiene una llave o un mapa
  • can_find_treasure: el jugador tiene una llave y un mapa y level es como mínimo 10
  • is_lost: el jugador no tiene llave ni mapa, o level es menor que 3

Usa and, or y not. Con los valores dados, la salida es:

Can enter: true
Can find treasure: false
Is lost: false

Pruébalo tú mismo

extends Node

func _ready():
	var level := 7
	var has_key := true
	var has_map := false
	# Declara can_enter, can_find_treasure e is_lost a continuación

	# No cambies las líneas siguientes
	print("Can enter: ", can_enter)
	print("Can find treasure: ", can_find_treasure)
	print("Is lost: ", is_lost)
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de GDScript online