Drucken

Das Spielfenster


Die wichtigsten Klassen der Klassenbibliothek JGameGrid sind GameGrid und Actor. Mit Hilfe von GameGrid wird das Spielfenster erzeugt. Alle sich bewegende Figuren und Objekte, die im Spielfenster erscheinen, sind Actors.

Die Klasse GameGrid stellt ein Grafikfenster zur Verfügung. Das Fenster ist als Gitter aufgebaut, besteht also aus einer bestimmten Anzahl horizontalen und vertikalen quadratischen Zellen. Die Zellengrösse und die Anzahl der Zellen in horizontalen und vertikalen Richtung ist frei wählbar. Für bestimmte Anwendungen sind relativ grosse Zellen geeignet (Gittergames), andere Anwendungen verwenden vorteilhaft nur 1 Pixel grosse Zellen (Pixelgames). Zur Positionierung innerhalb des Grafikfensters werden die Zellenkoordinaten verwendet.

In den meisten Beispielen wird die Applikationsklasse mit extends GameGrid aus der Klasse GameGrid abgeleitet. Damit stehen alle Methoden der Klasse GameGrid unmittelbar zur Verfügung. Mit super() wird der Konstruktor von GameGrid entsprechend intialisiert. Im folgenden Beispiel wird die Standardvorlage MyGameGrid.java, welche als Template im Online-Editor erscheint, verwendet. Der Navigationsbalken mit den Schaltflächen Step, Run, Reset und einem Schieberegler ist diesem Bespiel noch ohne Wirkung. Seine Funktion wird in den nächsten Beispielen im Menüpunkt Actors beschrieben.

// MyGameGrid.java

import ch.aplu.jgamegrid.*;
import java.awt.Color;

public class MyGameGrid extends GameGrid
{
  public MyGameGrid()
  {
    super(101060Color.red);
    show();
  }

  public static void main(String[] args)
  {
    new MyGameGrid();
  }
}

 

 
Erklärungen zum Programmcode:
public class ActorEx1 extends GameGrid Die Applikationsklasse wird aus der Klasse GameGrid abgeleitet und erbt dadurch alle (nicht privaten Methoden) dieser Klasse
super(10, 10, 60, Color.red) Initialisiert ein Grafikfenster mit 10 horizontalen und 10 vertikalen Zellen, Zellengrösse 60 Pixel und roten Gitterlinien
show() Das Grafikfenster erscheint erst nach dem Aufruf der Methode show()

Der Konstruktor der Klasse GameGrid, der zur Initialisierung des Spielfensters dient, ist mehrmals überladen.

Einige Beispiele:

super(20, 20, 30, Color.green);   super(10, 10, 60, Color.red,  "sprites/reef.gif");
Fenster mit 20x20 Zellen (30 Pixel gross), grüne Gitterlinien   Der vierte Parameter ist der Pfad des Hintergrundbildes (siehe...). Das Bild muss 601x601 Pixel gross sein (mehr...).


 
     
super(10, 10, 60Color.red, "sprites/reef.gif", false);   super(600, 600, 1, null"sprites/town.jpg", false);
Der 6. Parameter false bewirkt, dass der Navigationsbalken nicht angezeigt wird.   Fenster mit Pixel-Auflösung. Der vierte Parameter null bewirkt, dass keine Linien angezeigt werden.
 

Einige Hintergrundbilder können unter dem Menüpunkt Bilderbibliothek hinunter geladen werden, man kann aber auch eigene Hintergrundbilder verwenden.