2020-07-23 18:09:24 +02:00
|
|
|
import * as Phaser from 'phaser';
|
|
|
|
import {Scene} from "phaser";
|
|
|
|
import Sprite = Phaser.GameObjects.Sprite;
|
|
|
|
import {ITiledMapObject} from "../../Map/ITiledMap";
|
|
|
|
import {ItemFactoryInterface} from "../ItemFactoryInterface";
|
|
|
|
import {GameScene} from "../../Game/GameScene";
|
|
|
|
import {ActionableItem} from "../ActionableItem";
|
|
|
|
|
|
|
|
export default {
|
|
|
|
preload: (loader: Phaser.Loader.LoaderPlugin): void => {
|
2020-07-23 18:43:51 +02:00
|
|
|
loader.atlas('computer', '/resources/items/computer/computer.png', '/resources/items/computer/computer_atlas.json');
|
2020-07-23 18:09:24 +02:00
|
|
|
},
|
|
|
|
create: (scene: GameScene): void => {
|
|
|
|
|
|
|
|
},
|
|
|
|
factory: (scene: GameScene, object: ITiledMapObject): ActionableItem => {
|
|
|
|
// Idée: ESSAYER WebPack? https://paultavares.wordpress.com/2018/07/02/webpack-how-to-generate-an-es-module-bundle/
|
2020-07-23 18:47:28 +02:00
|
|
|
const foo = new Sprite(scene, object.x, object.y, 'computer');
|
2020-07-23 18:09:24 +02:00
|
|
|
scene.add.existing(foo);
|
|
|
|
|
|
|
|
return new ActionableItem(foo, 32);
|
|
|
|
//scene.add.sprite(object.x, object.y, 'computer');
|
|
|
|
}
|
|
|
|
} as ItemFactoryInterface;
|