v2.16.0
„Dank“ der WeChat Small Game-Laufzeitumgebung treten beim direkten Import von „phaser“ viele Fehler auf.
Stub einige globale Variablen, die Phaser benötigt, das ist es, was 'js/libs/stub.js' tut.
import './js/libs/stub' ;
Verwenden Sie den geteilten benutzerdefinierten Build von Phaser anstelle der Standardversion, der PIXI, p2 und Phaser global verfügbar machen kann.
window . PIXI = require ( './js/libs/pixi' ) ;
window . p2 = require ( './js/libs/p2' ) ;
window . Phaser = require ( './js/libs/phaser-split' ) ;
Erstellen Sie die Spielinstanz mit einem Objekt anstelle mehrerer Parameter und geben Sie die canvas
-Option an.
var game = new Phaser . Game ( {
width : gameWidth ,
height : gameHeight ,
renderer : Phaser . CANVAS ,
canvas : canvas ,
state : { }
} ) ;
Wenn die Spielgröße nicht mit der Leinwandgröße übereinstimmt, sollten Sie den Skalierungsmodus einstellen, damit Phaser den Eingabezeiger korrekt berechnet.
this . scale . scaleMode = Phaser . ScaleManager . SHOW_ALL ;
this . scale . pageAlignHorizontally = true ; // optional
this . scale . pageAlignVertically = true ; // optional
Die in Phaser integrierte Audio-API funktioniert nicht, wir können jedoch die Audio-API vom Adapter verwenden.
let au = new Audio ( 'path/to/audio.mp3' ) ;
au . play ( ) ;
au . pause ( ) ;
Das Laden einer JSON-Datei mit einem relativen Pfad funktioniert nicht. Sie müssen die JSON-Datei auf dem Server ablegen und sie mit einer URL laden.
this . load . json ( 'version' , './a.json' ) ; // ERROR T_T
this . load . json ( 'version' , 'http://phaser.io/version.json' ) ; // WORKS YoY