Menu
CoddyTech

Zbieracz monet: Chodzenie

Część sekcji Sygnały i kolizje ścieżki Godot w Coddy. Lekcja 23 z 27.

W ciągu kolejnych pięciu lekcji zbudujesz Coin Collector. Będziesz chodzić po pokoju, zbierać wszystkie monety i wygrasz, gdy zniknie ostatnia z nich.

Gra ma trzy skrypty:

  • player.gd: robotem, którym się poruszasz.
  • coin.gd: ten skrypt obsługuje każdą monetę.
  • main.gd: zasady gry na węźle Main.

Najpierw chodzenie. Gracz jest obiektem CharacterBody2D. Ściany i dwa szare bloki to obiekty StaticBody2D. Tego kodu do poruszania się użyjesz z poprzedniej sekcji:

func _physics_process(delta):
	velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
	move_and_slide()

move_and_slide() przesuwa obiekt zgodnie z jego velocity i zatrzymuje go przy ścianach. Samodzielna zmiana position sprawiłaby, że postać przechodziłaby przez ściany.

challenge icon

Wyzwanie

Łatwy

Uruchom Grę w zbieranie monet: spraw, by postać gracza zaczęła chodzić.

  1. W player.gd ustaw velocity na Input.get_vector("move_left", "move_right", "move_up", "move_down") pomnożone przez SPEED.
  2. Następnie wywołaj move_and_slide(). Pozostaw coin.gd i main.gd bez zmian.

Naciśnij „Graj”: strzałki lub klawisze WASD pozwalają poruszać postacią gracza, a ściany ją zatrzymują. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

extends CharacterBody2D

const SPEED = 200.0

func _physics_process(delta):
	pass

Wszystkie lekcje w sekcji Sygnały i kolizje

Poćwicz samodzielnie: Edytor online Godot