Сборщик монет: Движение
Часть раздела Сигналы и столкновения путешествия по Godot на Coddy. Урок 23 из 27.
В следующих пяти уроках ты создашь Coin Collector. Ты ходишь по комнате, собираешь все монеты и побеждаешь, когда последняя монета исчезает.
В игре три скрипта:
player.gd: робот, которым ты управляешь.coin.gd: этот скрипт выполняется для каждой монеты.main.gd: правила игры наMain.
Сначала — ходьба. Игрок — это CharacterBody2D. Стены и два серых блока — это StaticBody2D. Ты написал этот скрипт движения в предыдущем разделе:
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()move_and_slide() перемещает тело с его velocity и останавливает его у стен. Если самостоятельно менять position, персонаж проходил бы сквозь стены.
Задание
ЛегкоНачни создавать Coin Collector: заставь игрока ходить.
- В
player.gdприсвойvelocityзначениеInput.get_vector("move_left", "move_right", "move_up", "move_down"), умноженное наSPEED. - Затем вызови
move_and_slide(). Оставьcoin.gdиmain.gdбез изменений.
Нажми «Играть»: стрелки или WASD перемещают игрока, а стены останавливают его. Затем нажми «Проверить».
Попробуйте сами
extends CharacterBody2D
const SPEED = 200.0
func _physics_process(delta):
pass
Все уроки раздела Сигналы и столкновения
6Проект: Сборщик монет
Сборщик монет: ДвижениеСборщик монет: МонетыПотренируйтесь самостоятельно: Песочница Godot