Пройди по подземелью
Часть раздела Проекты путешествия по Godot на Coddy. Урок 29 из 36.
Последний проект — это данжен-кроулер с видом сверху. Герой берёт ключ, открывает дверь, проходит мимо стражника и добирается до лестницы.
Скрипты — hero.gd, enemy.gd и main.gd. Стены — это StaticBody2D с именем Walls, уже находящийся на сцене.
Герой ходит в четырёх направлениях. Input.get_vector считывает все четыре клавиши и задаёт направление длиной 1, поэтому по диагонали герой не движется быстрее. move_and_slide() перемещает тело с учётом его velocity и скользит вдоль стен:
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()move_and_slide сам учитывает delta, поэтому умножать на него не нужно.
Задание
ЛегкоПроведи героя через подземелье.
- В
hero.gdдобавьconst SPEED = 160. - Каждый физический кадр присваивай
velocityзначениеInput.get_vectorдля четырёх действий перемещения, умноженное наSPEED, затем вызывайmove_and_slide().
Нажми «Играть» и походи: стены остановят героя. Затем нажми «Проверить».
Попробуйте сами
extends CharacterBody2D
func _physics_process(delta):
pass
Все уроки раздела Проекты
1Проект: «Арканоид»
Ракетка для «Арканоида»Не выпускаем ракетку за экран4Проект: Подземелье
Пройди по подземельюПодбери ключПотренируйтесь самостоятельно: Песочница Godot