Menu
CoddyTech

Мяч для «Арканоида»

Часть раздела Проекты путешествия по Godot на Coddy. Урок 3 из 36.

Дальше — мяч в файле ball.gd. Он движется со своей velocity: со скоростью в пикселях в секунду, вбок и вниз.

var velocity = Vector2(110, -280)

func _physics_process(delta):
	position += velocity * delta

Отрицательное значение y означает движение вверх, поэтому мяч начинает движение вверх и вправо.

Чтобы мяч отскакивал от стен, меняй знак одной из составляющих скорости при столкновении со стеной. При столкновении с боковой стеной меняй знак velocity.x. При столкновении с верхней стеной меняй знак velocity.y. Мяч меняет направление, когда его середина достигает x = 8, x = 632 или y = 42 — под полосой счёта.

Снизу стены нет. Эту сторону защищает платформа.

challenge icon

Задание

Средне

Заставь мяч лететь и отскакивать от стен.

  1. В ball.gd добавь var velocity = Vector2(110, -280).
  2. Перемещай мяч на velocity * delta в каждом физическом кадре.
  3. Меняй направление velocity.x, когда position.x меньше 8 или больше 632.
  4. Меняй направление velocity.y, когда position.y меньше 42.

Нажми «Играть»: мяч будет отскакивать от верхней и боковых стен. Затем нажми «Проверить».

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

extends Area2D

func _physics_process(delta):
	pass

Все уроки раздела Проекты

Потренируйтесь самостоятельно: Песочница Godot