Menu
CoddyTech

Wygaszacz ekranu: Nowe kolory

Część sekcji Węzły i sceny ścieżki Godot w Coddy. Lekcja 28 z 28.

Ostatni krok sprawia, że logo przy każdym odbiciu otrzymuje następny kolor. Wszystkie cztery krawędzie robią to samo, więc umieść tę logikę w jednej funkcji next_color() i wywołuj ją przy każdym odbiciu.

Funkcja zwiększa color_index o 1, a następnie wyświetla colors[color_index]. Przy trzech kolorach indeks przyjmuje kolejno wartości 1, 2, a potem 3 — wtedy nie ma już koloru. Gdy więc jest równy colors.size(), czyli liczbie elementów, ustaw go z powrotem na 0:

if color_index == colors.size():
	color_index = 0

== sprawdza, czy dwie wartości są równe. Pojedynczy = przypisuje wartość.

challenge icon

Wyzwanie

Łatwy

Przy każdym odbiciu nadaj logo kolejny kolor.

  1. Napisz func next_color():. Zwiększa color_index o 1, ustawia go z powrotem na 0, gdy jest równy colors.size(), a następnie ustawia modulate = colors[color_index].
  2. Wywołaj next_color() w obu instrukcjach if, pod instrukcją zmieniającą kierunek.

Naciśnij „Graj”: przy każdym odbiciu pojawi się kolejny kolor z listy. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

extends Node2D

var velocity = Vector2(200, 90)
var colors = [Color(0.49, 0.95, 0.75), Color(1, 0.78, 0.34), Color(1, 0.42, 0.42)]
var color_index = 0

func _ready():
	modulate = colors[0]

func _process(delta):
	position += velocity * delta
	if position.x > 570 or position.x < 70:
		velocity.x = -velocity.x
	if position.y > 330 or position.y < 30:
		velocity.y = -velocity.y
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Węzły i sceny

Poćwicz samodzielnie: Edytor online Godot