Заставка: Новые цвета
Часть раздела Узлы и сцены путешествия по Godot на Coddy. Урок 27 из 27.
На последнем шаге логотип меняет цвет при каждом отскоке. Храни цвета в списке, записанном в квадратных скобках. colors[0] — это первый цвет, colors[1] — второй. Индекс указывает, какой цвет будет следующим:
var colors = [
Color(0.49, 0.95, 0.75),
Color(1, 0.78, 0.34),
]
var color_index = 0Все четыре стены делают одно и то же, поэтому помести это в одну функцию, которую вызывает каждый отскок. Она устанавливает modulate в цвет с индексом color_index, а затем увеличивает индекс на 1.
Когда индекс достигает colors.size(), цвета с таким индексом нет. Установи индекс обратно на 0, и цвета начнутся сначала.
Задание
Легко- Добавь переменную узла
colors: список как минимум из трёх цветов (мятный, янтарный, коралловый и синий цвета из курса — этоColor(0.49, 0.95, 0.75),Color(1, 0.78, 0.34),Color(1, 0.42, 0.42)иColor(0.369, 0.635, 1)), а такжеcolor_index = 0. - Напиши
next_color(): присвойmodulateцвет с индексомcolor_index, увеличь индекс на 1 и сбрось его до 0 в конце списка. - Вызывай эту функцию при каждом отскоке: от боковых сторон, верхней и нижней границ.
Попробуйте сами
extends Node2D
var velocity = Vector2(200, 90)
func _process(delta):
position += velocity * delta
if position.x > 570 or position.x < 70:
velocity.x = -velocity.x
if position.y > 330 or position.y < 30:
velocity.y = -velocity.y
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Узлы и сцены
2Каждый кадр
Процесс выполняется каждый кадрДельтаПиксели в секундуДвижение по диагоналиВращениеУвеличение масштаба5Проект: Заставка экрана
Заставка: ДрейфЗаставка: Боковые стеныПотренируйтесь самостоятельно: Песочница Godot