Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Von den Wänden abprallen

Dies ist der 4. Schritt von 12 im Tutorial zum Erstellen eines Breakout-Spiels mit Phaser. Nachdem wir die Physik eingeführt haben, können wir nun die Kollisionserkennung ins Spiel einbauen. Zuerst befassen wir uns mit den Wänden.

Von den Grenzen der Spielwelt abprallen

Am einfachsten bringen wir den Ball dazu, von den Wänden abzuprallen, indem wir dem Framework mitteilen, dass es die Grenzen des <canvas>-Elements als Wände behandeln und den Ball nicht darüber hinaus bewegen soll. In Phaser lässt sich das mit der Methode setCollideWorldBounds() erreichen. Fügen Sie diese Zeile direkt nach dem vorhandenen Aufruf der Methode this.ball.body.setVelocity() ein:

js
this.ball.body.setCollideWorldBounds(true, 1, 1);

Mit true wird die Kollisionserkennung an den Grenzen der Spielwelt aktiviert. Die beiden 1-Werte geben den Abprallfaktor auf der x- beziehungsweise y-Achse an. Trifft der Ball auf eine Wand, prallt er mit derselben Geschwindigkeit zurück, die er vor dem Aufprall hatte. Laden Sie index.html erneut – jetzt sollten Sie sehen, wie der Ball von allen Wänden abprallt und sich innerhalb des Canvas-Bereichs bewegt.

Vergleichen Sie Ihren Code

So sollte Ihr bisheriger Code aussehen; das Beispiel ist direkt ausführbar. Um den Quellcode anzuzeigen, klicken Sie auf die Schaltfläche „Play“.

Nächste Schritte

Allmählich sieht das Ganze wie ein Spiel aus, aber wir können es noch nicht steuern. Höchste Zeit, den Spielerschläger und die Steuerung einzuführen.