Breakout

Breakout-Game Tutorial mit Phaser.io

Schritt 2: Ball hinzufügen und an Spielfeldränder abprallen lassen

Im zweiten Schritt fügen wir unserem Breakout-Spiel den Ball hinzu. Dieser Ball wird aus dem Asset ball.png geladen und soll von allen Spielfeldrändern abprallen, damit er innerhalb des Spielfeldes bleibt.


2.1 Vorbereitung: Asset ball.png

Für dieses Beispiel kannst du dieses einfache Ball-Bild verwenden (ca. 16x16 Pixel, transparenter Hintergrund):

ball.png

Speichere die Datei als ball.png in einem Ordner namens assets im gleichen Verzeichnis wie deine anderen Dateien.


2.2 Code-Anpassung in game.js

Wir passen die Phaser-Szene wie folgt an:

window.onload = function() {
    const config = {
        type: Phaser.AUTO,
        width: 800,
        height: 600,
        backgroundColor: '#000',
        parent: 'game-container',
        physics: {                      
            default: 'arcade',           
            arcade: {
              gravity: { y: 0 },
              debug: false
            }
          },
        scene: {
          preload: preload,
          create: create,
          update: update
        },
      };

  let ball;

  const game = new Phaser.Game(config);

  function preload() {
    // Lade den Ball als Bild-Asset
    this.load.image('ball', 'assets/ball.png');
  }

  function create() {
    const width = this.sys.game.config.width;
    const height = this.sys.game.config.height;

    // Ball in der Mitte erstellen
    ball = this.physics.add.image(width / 2, height / 2, 'ball');
  
    // Ball bewegt sich zu Beginn diagonal mit einer Geschwindigkeit von 150
    ball.setVelocity(150, 150);

    // Ball prallt an den Spielfeldgrenzen ab
    ball.setCollideWorldBounds(true);

    // Ball bleibt nicht stehen, sondern prallt ab
    ball.setBounce(1);
  }

  function update() {
    // Im Moment keine zusätzliche Logik notwendig
  }
};

Erläuterung des Codes


Live-Test


Dateien

Zip-Datei


weiter