Ein Spiel, das nach 30 Sekunden zu Ende ist, wird die Welt wohl nie erobern. Um ein Spiel spannend zu machen, können einige weitere Spielelemente hinzugefügt werden. Folgende Elemente wollen wir in diesem Skript anschauen:
Steuerungen für Multiplayer
Fortschrittsbalken
Levels
Punkte
Für Multiplayer-Spiele brauchst du mindestens zwei Figuren, welche gesteuert werden können.Üblicherweise nutzt man für den rechten Spieler die Pfeiltasten, für den linken Spieler die Tasten asdw.Ein Beispiel für die Steuerung findest du links. Man kann das auf verschiedene Arten programmieren. Blättere nun auf die nächste Seite und überlege, welche Steuerung du bevorzugen würdest und warum.
Damit du Elemente wie eine Steuerung nicht jedes Mal neu programmieren musst, kannst du sie im "Lager" versorgen. Dort kannst du sie jedes Mal wieder hervorholen, wenn du sie brauchst.Das Lager findest du im Skriptbereich ganz unten zum Aufklappen.Erklärungen dazu findest du auch unter: http://scratch-dach.info/wiki/Lager
Caption: : Das Lager bleibt immer bestehen, ist also nicht an ein Projekt gebunden.
Slide 5
2.Spieler einfügen
Um einen zweiten Spieler zu erstellen, brauchst du eine zweite Figur. Dieser kannst du das gleiche Skript geben wie der ersten. Nur die Steuerung und eventuell die Startposition sollten sich unterscheiden. Öffne das Spiel "Affenzirkus light". https://scratch.mit.edu/projects/121908550/Baue eine zweite Figur ein.
Erstelle eine neue Figur. (Hier ein Krebs.)
Packe das Skript des Affen und verschiebe es auf die neue Figur. (Die Figur erhält nun das gleiche Skript.)
ändere bei der neuen Figur die Startposition und die Steuerung (a & d statt Pfeiltasten)
Füge nun ein zweites Wurfgeschoss (hier Baseball) ein, welches deine neue Figur werfen kann:
Erstelle dazu eine neue Figur (Baseball).
Gib dem Baseball das gleiche Skript wie den Bananen.
Ändere die Taste, mit welcher der Baseball geworfen wird, und der Befehl welche Figur den Ball aufheben kann. (Die beiden hellblauen "Fühlen"-Blöcke)
Spiele das Spiel mit einem Mitspieler!
Caption: : Skript Baseball, welcher von "Crab" geworfen wird.
Slide 7
2.Spieler einfügen
Damit die Fledermaus weiss, dass sie auch beim Baseball abstürzen muss, erweiterst du dieses Skript:
Setzte beim "wiederhole bis"-Block einen "oder"-Operator ein.
Füge dann die "wird... berührt?"-Blöcke ein und ändere den Inhalt auf Bananas und Baseball (oder wie deine Wurfgeschosse heissen).
Um das Level zu kennzeichnen kannst du eine Variable setzen. Diese findest du im Blockbereich unter "Daten".
Nenne die Variable "Level".
Wenn das Programm gestartet wird, der Bock "setze Level auf 0" aktiviert werden.
Sobald ein zweites Level erreicht ist, kann eine Nachricht gesendet werden, auf welche der Block "ändere Level um 1" aktiv wird.
Die gleiche Variante wählst du um "Punkte" einzufügen.
Caption: : Damit die Variable auf der Bühne sichtbar ist, muss bei "Level das Häkchen gesetzt werden. Macht man auf der Bühne einen Doppelklick auf die Levels, verändert sich das Anzeigefeld.
Caption: : Beispiel eines Skripts welches Punkte ändert. (Skript aus https://scratch.mit.edu/projects/118255343/ )
Slide 10
Fortschrittsbalken
Viele Spiele verfügen über einen Fortschrittsbalken. Er zeigt an, wie lange eine Aufgabe oder ein Level noch geht, oder wie viel Zeit noch zur Verfügung steht. Einen solchen Balken wollen kannst du einfach selbst Programmieren.Auf der linken Seite findest du eine Möglichkeit. Klicke nach unten, um den Aufbau etwas genauer anzuschauen.
Erstelle als erstes ein Skript für einen Stift.
Die Figur soll sich verstecken, diese wollen wir nicht sehen.
Wähle eine Stiftfarbe,
wähle eine Stiftdicke (so dick wird der Balken),
und schalte den Stift ein.
Damit der Balken immer kürzer (oder länger) wird, muss die Länge (-er-Schritt) eine Variable enthalten.
Erstelle als erstes eine neue Variable "Fortschrittsbalken". Du findest die Möglichkeit im Blockbereich bei den "Daten".
Setze eine Startlänge für den Balken fest.
Sage der Figur anschliessend, sie soll nun "Fortschrittsbalken-Schritte" gehen.
Den Wert für "Fortschrittsbalken" änderst du jede Sekunde um einen Wert (hier -2).
Anschliessend muss der Balken weggewischt werden, bevor der neue wieder erscheint. (Sonnst wird er nicht kleiner.)