Menu
CoddyTech

Operador ternario

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

El operador ternario elige uno de dos valores según una condición. Tiene tres partes:

value_if_true if condition else value_if_false

Por ejemplo:

var age := 20
var status := "Adult" if age >= 18 else "Minor"
print(status) # Adult

GDScript comprueba age >= 18. Es true, así que status obtiene "Adult". Si age fuera 15, status obtendría "Minor".

Los valores pueden ser números o variables, y el resultado puede ir directamente a print():

var x := 10
var y := 20
var bigger := x if x > y else y # 20
print("Pass" if 75 >= 60 else "Fail") # Pass

Asigna a ambos valores el mismo tipo. var r := 1 if ok else "one" es un error, porque GDScript no puede determinar si r es un int o un String.

La condición puede usar operadores lógicos: "Open" if has_key and level >= 5 else "Locked".

challenge icon

Desafío

Fácil

Un jugador tiene coins y quiere comprar un artículo que cuesta price. Ambas variables están declaradas por ti.

Declara una variable status con el operador ternario:

  • "Purchase complete" si coins es mayor o igual que price
  • "Not enough coins" en caso contrario

La línea print() muestra status. Con los valores dados, el resultado es:

Not enough coins

Pruébalo tú mismo

extends Node

func _ready():
	var coins := 150
	var price := 200
	# Declara status con el operador ternario a continuación

	# No cambies la línea siguiente
	print(status)
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