Свои функции
Часть раздела Узлы и сцены путешествия по Godot на Coddy. Урок 18 из 27.
Godot самостоятельно вызывает _ready() и _process(). Ты также можешь написать собственные функции, чтобы дать нескольким строкам имя:
func jump_to_start():
position = Vector2(50, 250)Функция выполняется, только когда код её вызывает, указывая её имя со скобками: jump_to_start(). Вызови её из _process(), и она будет выполняться на каждом кадре. Вызови её из _ready(), и она выполнится один раз.
Хорошее имя описывает, что делает функция. Тогда _process() читается как список шагов: переместиться, затем вернуться в начало.
Задание
ЛегкоРобот движется вниз и вправо и оборачивается только у правого края.
- Напиши функцию
wrap_around(), которая оборачивает его у правого края (еслиxбольше 640, значение возвращается к 0) и у нижнего края (еслиyбольше 360, значение возвращается к 0). - Вызови её в
_process()после перемещения робота, вместо находящегося тамif.
Попробуйте сами
extends Node2D
var velocity = Vector2(200, 100)
func _process(delta):
position += velocity * delta
if position.x > 640:
position.x = 0
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Узлы и сцены
2Каждый кадр
Процесс выполняется каждый кадрДельтаПиксели в секундуДвижение по диагоналиВращениеУвеличение масштаба5Проект: Заставка экрана
Заставка: ДрейфЗаставка: Боковые стены3Настраиваемые значения
Переменные узлаКонстантыЭкспортируемые переменныеМатематика с Vector2Зацикливание по экрануСвои функцииПотренируйтесь самостоятельно: Песочница Godot