Menu
CoddyTech

Bildschirmschoner: Neue Farben

Teil des Abschnitts Nodes und Szenen der Godot-Journey von Coddy. Lektion 27 von 27.

Der letzte Schritt gibt dem Logo bei jedem Abprallen eine neue Farbe. Speichere die Farben in einer Liste in eckigen Klammern. colors[0] ist die erste Farbe, colors[1] die zweite. Ein Index gibt an, welche Farbe als Nächstes kommt:

var colors = [
	Color(0.49, 0.95, 0.75),
	Color(1, 0.78, 0.34),
]
var color_index = 0

Alle vier Wände machen dasselbe. Packe es also in eine Funktion, die bei jedem Abprallen aufgerufen wird. Sie setzt modulate auf die Farbe an der Position color_index und erhöht dann den Index um 1.

Wenn der Index colors.size() erreicht, gibt es dort keine Farbe. Setze ihn wieder auf 0, damit die Farben von vorne beginnen.

challenge icon

Aufgabe

Einfach
  • Füge eine Knotenvariable colors hinzu: eine Liste mit mindestens drei Farben (Minze, Bernstein, Koralle und Blau aus dem Kurs sind Color(0.49, 0.95, 0.75), Color(1, 0.78, 0.34), Color(1, 0.42, 0.42) und Color(0.369, 0.635, 1)) sowie color_index = 0.
  • Schreibe next_color(): Setze modulate auf die Farbe bei color_index, erhöhe den Index um 1 und setze ihn am Ende der Liste wieder auf 0.
  • Rufe die Funktion bei jedem Abprallen auf: an den Seiten, oben und unten.

Probier es selbst

extends Node2D

var velocity = Vector2(200, 90)

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 iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Nodes und Szenen

Übe selbstständig: Godot-Playground