Menu
CoddyTech

Логические операторы, часть 3

Часть раздела Основы путешествия по GDScript на Coddy. Урок 24 из 92.

В одном выражении можно объединить несколько условий. Чтобы проверить, является ли число положительным и чётным:

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

Вы также можете записать условия напрямую, без дополнительных переменных:

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

С or достаточно одного истинного условия. -4 — отрицательное число, поэтому результат будет true, хотя -4 не является нечётным:

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

Сначала GDScript вычисляет not, затем and, а потом or. Скобки меняют порядок:

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

Чтобы проверить, что значение находится в диапазоне, запишите два сравнения, соединённые оператором and: level >= 1 and level <= 10. GDScript сообщает об ошибке для математической записи 1 <= level <= 10.

challenge icon

Задание

Легко

Игрок хочет исследовать подземелье. Переменные level, has_key и has_map уже объявлены. Объяви ещё три:

  • can_enter: level не меньше 5 and у игрока есть ключ or карта
  • can_find_treasure: у игрока есть ключ and карта and level не меньше 10
  • is_lost: у игрока нет ключа и нет карты, or level меньше 3

Используй and, or и not. При заданных значениях вывод будет таким:

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

Попробуйте сами

extends Node

func _ready():
	var level := 7
	var has_key := true
	var has_map := false
	# Объявите can_enter, can_find_treasure и is_lost ниже

	# Не изменяйте строки ниже
	print("Can enter: ", can_enter)
	print("Can find treasure: ", can_find_treasure)
	print("Is lost: ", is_lost)
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор GDScript