class ClownGameObject extends Phaser.GameObjects.Image { constructor (scene, x, y) { super(scene, x, y, 'clown'); this.setScale(4); } } class ClownPlugin extends Phaser.Plugins.BasePlugin { constructor (pluginManager) { super(pluginManager); // Register our new Game Object type pluginManager.registerGameObject('clown', this.createClown); } createClown (x, y) { return this.displayList.add(new ClownGameObject(this.scene, x, y)); } } const config = { type: Phaser.AUTO, parent: 'phaser-example', width: 800, height: 600, pixelArt: true, plugins: { global: [ { key: 'ClownPlugin', plugin: ClownPlugin, start: true } ] }, scene: { preload: preload, create: create } }; let game = new Phaser.Game(config); function preload () { this.load.setBaseURL('https://cdn.phaserfiles.com/v385'); this.load.image('clown', 'assets/sprites/clown.png'); } function create () { this.add.clown(400, 200); this.add.clown(300, 300); this.add.clown(500, 300); }
Scan to open on your mobile device
class ClownGameObject extends Phaser.GameObjects.Image { constructor (scene, x, y) { super(scene, x, y, 'clown'); this.setScale(4); } } class ClownPlugin extends Phaser.Plugins.BasePlugin { constructor (pluginManager) { super(pluginManager); // Register our new Game Object type pluginManager.registerGameObject('clown', this.createClown); } createClown (x, y) { return this.displayList.add(new ClownGameObject(this.scene, x, y)); } } const config = { type: Phaser.AUTO, parent: 'phaser-example', width: 800, height: 600, pixelArt: true, plugins: { global: [ { key: 'ClownPlugin', plugin: ClownPlugin, start: true } ] }, scene: { preload: preload, create: create } }; let game = new Phaser.Game(config); function preload () { this.load.setBaseURL('https://cdn.phaserfiles.com/v385'); this.load.image('clown', 'assets/sprites/clown.png'); } function create () { this.add.clown(400, 200); this.add.clown(300, 300); this.add.clown(500, 300); }