2.13 SPIEL - Sternenkreuzung¶
In den nächsten Projekten werden wir einige unterhaltsame Minispiele in PictoBlox spielen.
Hier verwenden wir das Joystick-Modul, um das Spiel Sternenkreuzung zu spielen.
Nachdem das Skript ausgeführt wurde, erscheinen Sterne zufällig auf der Bühne, und du musst den Joystick verwenden, um das Raumschiff zu steuern und den Sternen auszuweichen. Wenn du sie berührst, ist das Spiel vorbei.
Benötigte Komponenten¶
Für dieses Projekt benötigen wir die folgenden Komponenten.
Es ist definitiv praktisch, ein ganzes Set zu kaufen. Hier ist der Link:
Name |
ARTIKEL IN DIESEM KIT |
LINK |
---|---|---|
ESP32 Starter Kit |
320+ |
Sie können sie auch separat über die untenstehenden Links kaufen.
KOMPONENTENBESCHREIBUNG |
KAUF-LINK |
---|---|
- |
|
Was Sie Lernen Werden¶
Funktionsweise des Joystick-Moduls
Setzen der x- und y-Koordinaten des Sprites
Schaltung Aufbauen¶
Ein Joystick ist ein Eingabegerät, das aus einem auf einer Basis schwenkbaren Stick besteht und dessen Winkel oder Richtung an das Gerät meldet, das er steuert. Joysticks werden häufig verwendet, um Videospiele und Roboter zu steuern.
Um einem Computer einen vollen Bewegungsbereich zu vermitteln, muss ein Joystick die Position des Sticks auf zwei Achsen messen - der X-Achse (links nach rechts) und der Y-Achse (oben nach unten).
Die Bewegungskoordinaten des Joysticks werden in der folgenden Abbildung gezeigt.
Bemerkung
Die x-Koordinate verläuft von links nach rechts, der Bereich ist 0-4095.
Die y-Koordinate verläuft von oben nach unten, Bereich ist 0-4095.
Bauen Sie die Schaltung gemäß dem folgenden Diagramm auf.
Programmierung¶
Das gesamte Skript soll den Effekt erzielen, dass beim Klicken auf die grüne Flagge das Stars-Sprite in einer Kurve auf der Bühne bewegt wird und du den Joystick verwenden musst, um das Rocketship zu bewegen, sodass es nicht vom Star-Sprite berührt wird.
1. Sprites und Hintergründe hinzufügen
Lösche das Standard-Sprite und füge über den Button Choose a Sprite das Rocketship-Sprite und das Star-Sprite hinzu. Beachte, dass die Größe des Rocket-Sprites auf 50% gesetzt wird.
Füge nun den Stars-Hintergrund über Choose a Backdrop hinzu.
2. Skript für Raumschiff
Das Rocketship-Sprite soll so programmiert werden, dass es an einer zufälligen Position erscheint und dann durch den Joystick gesteuert nach oben, unten, links und rechts bewegt wird.
Der Arbeitsablauf ist wie folgt.
Wenn die grüne Flagge angeklickt wird, gehe das Sprite zu einer zufälligen Position und erstelle 2 Variablen x und y, die die Werte von Pin33 (VRX des Joysticks) und Pin35 (VRY des Joysticks) speichern. Du kannst das Skript laufen lassen, den Joystick nach oben und unten, links und rechts bewegen, um den Wertebereich von x und y zu sehen.
Der Wert von Pin33 liegt im Bereich 0-4095 (die Mitte ist etwa 1800). Verwende
x-1800>200
, um zu bestimmen, ob der Joystick nach rechts bewegt wird, und wenn ja, erhöhe die x-Koordinate des Sprites um +30 (um das Sprite nach rechts zu bewegen).
Wenn der Joystick nach links bewegt wird, lasse die x-Koordinate des Sprites -30 sein (lass das Sprite nach links bewegen).
Da die y-Koordinate des Joysticks von oben (0) nach unten (4095) verläuft und die y-Koordinate des Sprites von unten nach oben. Um also den Joystick nach oben und das Sprite nach oben zu bewegen, muss die y-Koordinate im Skript -30 sein.
Wenn der Joystick nach unten bewegt wird, ist die y-Koordinate des Sprites +30.
3. Skript für Stern
Das zu erzielende Ergebnis des Star-Sprites ist, dass es an einer zufälligen Stelle erscheint, und wenn es Rocketship trifft, stoppt das Skript und das Spiel endet.
Wenn die grüne Flagge angeklickt wird und das Sprite zu einer zufälligen Position geht, ist der [turn degrees]-Block dafür gedacht, das Star-Sprite mit einer kleinen Winkeländerung vorwärts zu bewegen, sodass du sehen kannst, dass es in einer Kurve bewegt wird und wenn es am Rand ist, abprallt.
Wenn das Sprite das Rocketship-Sprite während der Bewegung berührt, stoppe das Skript.