Documentation generator: JsDoc Toolkit 2.4.0
Template: Codeview 1.2
Generated on: 2016-0-4 21:25

Class enchant.Core

Klasse, welche die Spielschleife und Szenen kontrolliert. Es kann immer nur eine Instanz geben und sollte der Konstruktor ausgeführt werden, obwohl bereits eine Instanz existiert, wird die vorherige Instanz überschrieben. Auf die aktuell existierende Instanz kann über die enchant.Core.instance Variable zugegriffen werden.

Class Summary
Constructor Attributes Constructor Name and Description
 
enchant.Core(width, height)
Field Summary
Field Attributes Field Name and Description
 
Geladene Objekte werden unter dem Pfad als Schlüssel in diesem Objekt abgelegt.
 
Die aktuell dargestellte Szene.
 
fps
Frame Rate des Spieles.
 
Anzahl der Frames seit dem Spielestart.
 
Höhe des Spieles.
 
Objekt, welches den aktuellen Eingabestatus des Spieles speichert.
<static>  
enchant.Core.instance
Die aktuelle Instanz des Spieles.
 
Die Szene, welche während des Ladevorgangs dargestellt wird.
 
Zeigt an ob das Spiel ausgeführt werden kann.
 
Die Ursprungsszene.
 
Zeigt an ob das Spiel derzeit ausgeführt wird.
 
Skalierung der Spieldarstellung.
 
Breite des Spieles.

Method Summary

Method Attributes Method Name and Description
 
Startet den Debug-Modus des Spieles.
<static>  
enchant.Core.findExt(path)
 
Liefert die vergange Spielzeit (keine reale) die seit dem Aufruf von enchant.Core#start vergangen ist.
<static>  
enchant.Core.initialize(array)
 
keybind(key, button)
Bindet eine Taste.
 
keyunbind(key)
Entbindet eine Taste.
 
load(src, alias, callback, onerror)
Laden von Dateien.
 
Stoppt das Spiel.
 
Beendet die aktuelle Szene und wechselt zu der vorherigen Szene.
 
preload(assets)
Lässt Dateien im voraus laden.
 
pushScene(scene)
Wechselt zu einer neuen Szene.
 
removeScene(scene)
Entfernt eine Szene.
 
replaceScene(scene)
Ersetzt die aktuelle Szene durch eine neue Szene.
 
Setzt die Ausführung des Spieles fort.
 
start(deferred)
Starte das Spiel Je nach der Frame Rate definiert in enchant.Core#fps, wird der Frame in der enchant.Core#currentScene aktualisiert.
 
stop()
Stoppt das Spiel.
 
 
transitionPush(inScene)
Methods borrowed from class enchant.EventTarget:
addEventListener
clearEventListener
dispatchEvent
on
removeEventListener

Class Detail

enchant.Core(width, height)
Parameters:
{Number} width Optional, Default: 320
Die Breite des Spieles.
{Number} height Optional, Default: 320
Die Höhe des Spieles.

Field Detail

{Object} assets
Geladene Objekte werden unter dem Pfad als Schlüssel in diesem Objekt abgelegt.
{enchant.Scene} currentScene
Die aktuell dargestellte Szene. Diese Szene befindet sich oben auf dem Stapelspeicher.
{Number} fps
Frame Rate des Spieles.
{Number} frame
Anzahl der Frames seit dem Spielestart.
{Number} height
Höhe des Spieles.
{Object} input
Objekt, welches den aktuellen Eingabestatus des Spieles speichert.
<static> {enchant.Core} enchant.Core.instance
Die aktuelle Instanz des Spieles.
{enchant.Scene} loadingScene
Die Szene, welche während des Ladevorgangs dargestellt wird.
{Boolean} ready
Zeigt an ob das Spiel ausgeführt werden kann.
{enchant.Scene} rootScene
Die Ursprungsszene. Diese Szene befindet sich unten auf dem Stapelspeicher.
{Boolean} running
Zeigt an ob das Spiel derzeit ausgeführt wird.
{Number} scale
Skalierung der Spieldarstellung.
{Number} width
Breite des Spieles.

Method Detail

  • {enchant.Deferred} debug()
    Startet den Debug-Modus des Spieles. Auch wenn die enchant.Core#_debug Variable gesetzt ist, kann der Debug-Modus gestartet werden.
    Returns:
    {enchant.Deferred}
  • <static> {*} enchant.Core.findExt(path)
    Parameters:
    {String} path
    Returns:
    {*}
  • {Number} getElapsedTime()
    Liefert die vergange Spielzeit (keine reale) die seit dem Aufruf von enchant.Core#start vergangen ist.
    Returns:
    {Number} Die vergangene Zeit (Sekunden)
  • <static> enchant.Core.initialize(array)

    Defined in: widget.enchant.js.
    Parameters:
    array
  • {enchant.Core} keybind(key, button)
    Bindet eine Taste.
    Parameters:
    {Number} key
    Der Tastencode der Taste die gebunden werden soll.
    {String} button
    Der enchant.js Knopf (left, right, up, down, a, b).
    Returns:
    {enchant.Core} this
  • {enchant.Core} keyunbind(key)
    Entbindet eine Taste.
    Parameters:
    {Number} key
    Der Tastencode der entfernt werden soll.
    Returns:
    {enchant.Core} this
  • {enchant.Deferred} load(src, alias, callback, onerror)
    Laden von Dateien.
    Parameters:
    {String} src
    Pfad zu der Datei die geladen werden soll.
    {String} alias Optional
    {Function} callback Optional
    Funktion die ausgeführt wird wenn das laden abgeschlossen wurde.
    {Function} onerror Optional
    Returns:
    {enchant.Deferred}
  • pause()
    Stoppt das Spiel. Der Frame wird nicht mehr aktualisiert und Spielereingaben werden nicht mehr akzeptiert. Das spiel kann mit der enchant.Core#resume Methode erneut gestartet werden.
  • {enchant.Scene} popScene()
    Beendet die aktuelle Szene und wechselt zu der vorherigen Szene. Szenen werden durch einen Stapelspeicher kontrolliert und die Darstellungsreihenfolge folgt ebenfalls der Ordnung des Stapelspeichers. Wenn die enchant.Core#popScene Methode ausgeführt wird, wird die Szene oben auf dem Stapelspeicher entfernt und liefert diese als Rückgabewert.
    Returns:
    {enchant.Scene} Die Szene, die beendet wurde.
  • {enchant.Core} preload(assets)
    Lässt Dateien im voraus laden. Diese Methode setzt die Dateien die im voraus geladen werden sollen. Wenn enchant.Core#start aufgerufen wird, findet das tatsächliche laden der Resource statt. Sollten alle Dateien vollständig geladen sein, wird ein enchant.Event.LOAD Ereignis auf dem Core Objekt ausgelöst. Abhängig von den Dateien die geladen werden sollen, werden unterschiedliche Objekte erstellt und in dem enchant.Core#assets Feld gespeichert. Falls ein Bild geladen wird, wird ein enchant.Surface Objekt erstellt. Wenn es eine Ton Datei ist, wird ein enchant.Sound Objekt erstellt. Ansonsten kann auf die Datei über einen String zugegriffen werden. Da die Surface Objekte mittels enchant.Surface.load erstellt werden ist zusätlich ist zu beachten, dass eine direkte Objektmanipulation nicht möglich ist. Für diesen Fall ist auf die enchant.Surface.load Dokumentation zu verweisen.
    core.preload('player.gif');
    core.onload = function() {
        var sprite = new Sprite(32, 32);
        sprite.image = core.assets['player.gif']; // zugriff mittels Dateipfades
        ...
    };
    core.start();
    Parameters:
    {...String|String[]} assets
    Pfade zu den Dateien die im voraus geladen werden sollen. Mehrfachangaben möglich.
    Returns:
    {enchant.Core} this
  • {enchant.Scene} pushScene(scene)
    Wechselt zu einer neuen Szene. Szenen werden durch einen Stapelspeicher kontrolliert und die Darstellungsreihenfolge folgt ebenfalls der Ordnung des Stapelspeichers. Wenn die enchant.Core#pushScene Methode ausgeführt wird, wird die Szene auf dem Stapelspeicher oben abgelegt. Der Frame wird immer in der Szene ganz oben auf dem Stapelspeicher aktualisiert.
    Parameters:
    {enchant.Scene} scene
    Die neue Szene zu der gewechselt werden soll.
    Returns:
    {enchant.Scene} Die neue Szene.
  • {enchant.Scene} removeScene(scene)
    Entfernt eine Szene. Entfernt eine Szene aus dem Szenen-Stapelspeicher.
    Parameters:
    {enchant.Scene} scene
    Die Szene die entfernt werden soll.
    Returns:
    {enchant.Scene} Die entfernte Szene.
  • {enchant.Scene} replaceScene(scene)
    Ersetzt die aktuelle Szene durch eine neue Szene. enchant.Core#popScene, enchant.Core#pushScene werden nacheinander ausgeführt um die aktuelle Szene durch die neue zu ersetzen.
    Parameters:
    {enchant.Scene} scene
    Die neue Szene, welche die aktuelle Szene ersetzen wird.
    Returns:
    {enchant.Scene} Die neue Szene.
  • resume()
    Setzt die Ausführung des Spieles fort.
  • {enchant.Deferred} start(deferred)
    Starte das Spiel Je nach der Frame Rate definiert in enchant.Core#fps, wird der Frame in der enchant.Core#currentScene aktualisiert. Sollten Dateien die im voraus geladen werden sollen vorhanden sein, beginnt das laden dieser Dateien und der Ladebildschirm wird dargestellt.
    Parameters:
    deferred
    Returns:
    {enchant.Deferred}
  • stop()
    Stoppt das Spiel. Der Frame wird nicht mehr aktualisiert und Spielereingaben werden nicht mehr akzeptiert. Das spiel kann mit der enchant.Core#resume Methode erneut gestartet werden.
  • transitionPop()

    Defined in: widget.enchant.js.
    Requires:
    widget.enchant.js
  • transitionPush(inScene)

    Defined in: widget.enchant.js.
    Parameters:
    inScene
    Requires:
    widget.enchant.js