@rpgjs/client 3.0.0-beta → 3.0.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/Renderer.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { Scene } from './Presets/Scene';
1
2
  export default class RpgRenderer {
2
3
  private clientEngine;
3
4
  vm: any;
@@ -23,7 +24,7 @@ export default class RpgRenderer {
23
24
  set width(val: number);
24
25
  onDOMLoaded(): void;
25
26
  resize(): void;
26
- getScene(): any;
27
+ getScene(): Scene;
27
28
  draw(t: number, dt: number, frame: number): void;
28
29
  loadScene(name: any, obj: any): Promise<void>;
29
30
  }
@@ -1 +1,22 @@
1
- export declare function _initResource(memory: Map<string, any>, _resources: any, prop: string): void;
1
+ import { RpgClientEngine } from "./RpgClientEngine";
2
+ /**
3
+ * Get/Set images in resources
4
+ ```ts
5
+ import { RpgResource } from '@rpg/client'
6
+ const fileLink = RpgResource.spritesheets.get('resource_id')
7
+ ```
8
+ * @title Get/Set image link
9
+ * @prop { Map< string, string > } spritesheets
10
+ * @memberof Resources
11
+ */
12
+ /**
13
+ * Get/Set sounds in resources
14
+ ```ts
15
+ import { RpgResource } from '@rpg/client'
16
+ const fileLink = RpgResource.sounds.get('resource_id')
17
+ ```
18
+ * @title Get/Set sound link
19
+ * @prop { Map< string, string > } sounds
20
+ * @memberof Resources
21
+ */
22
+ export declare function _initResource(memory: Map<string, any>, _resources: any, prop: string, engine: RpgClientEngine): void;
package/lib/Resources.js CHANGED
@@ -1,7 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports._initResource = void 0;
4
- function _initResource(memory, _resources, prop) {
4
+ /**
5
+ * Get/Set images in resources
6
+ ```ts
7
+ import { RpgResource } from '@rpg/client'
8
+ const fileLink = RpgResource.spritesheets.get('resource_id')
9
+ ```
10
+ * @title Get/Set image link
11
+ * @prop { Map< string, string > } spritesheets
12
+ * @memberof Resources
13
+ */
14
+ /**
15
+ * Get/Set sounds in resources
16
+ ```ts
17
+ import { RpgResource } from '@rpg/client'
18
+ const fileLink = RpgResource.sounds.get('resource_id')
19
+ ```
20
+ * @title Get/Set sound link
21
+ * @prop { Map< string, string > } sounds
22
+ * @memberof Resources
23
+ */
24
+ function _initResource(memory, _resources, prop, engine) {
5
25
  for (let resource of _resources) {
6
26
  const pluralProp = prop + 's';
7
27
  if (resource[pluralProp]) {
@@ -12,7 +32,7 @@ function _initResource(memory, _resources, prop) {
12
32
  }
13
33
  }
14
34
  else {
15
- const instance = new resource();
35
+ const instance = new resource(engine);
16
36
  instance[prop] = instance[prop];
17
37
  memory.set(resource.id, instance);
18
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Resources.js","sourceRoot":"","sources":["../src/Resources.ts"],"names":[],"mappings":";;;AAAA,SAAgB,aAAa,CAAC,MAAwB,EAAE,UAAU,EAAE,IAAY;IAC5E,KAAK,IAAI,QAAQ,IAAI,UAAU,EAAE;QAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,GAAG,CAAA;QAC7B,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;YACtB,KAAK,IAAI,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;gBAClC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;gBAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAA;gBAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;aAC5B;SACJ;aACI;YACD,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;YAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;SACpC;KACJ;AACL,CAAC;AAhBD,sCAgBC"}
1
+ {"version":3,"file":"Resources.js","sourceRoot":"","sources":["../src/Resources.ts"],"names":[],"mappings":";;;AAEA;;;;;;;;;EASE;AACF;;;;;;;;;EASE;AACF,SAAgB,aAAa,CAAC,MAAwB,EAAE,UAAU,EAAE,IAAY,EAAE,MAAuB;IACrG,KAAK,IAAI,QAAQ,IAAI,UAAU,EAAE;QAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,GAAG,CAAA;QAC7B,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;YACtB,KAAK,IAAI,GAAG,IAAI,QAAQ,CAAC,UAAU,CAAC,EAAE;gBAClC,MAAM,QAAQ,GAAG,IAAI,QAAQ,EAAE,CAAA;gBAC/B,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAA;gBAC1C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;aAC5B;SACJ;aACI;YACD,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAA;YACrC,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;SACpC;KACJ;AACL,CAAC;AAhBD,sCAgBC"}
@@ -1,6 +1,6 @@
1
1
  import { RpgSprite } from './Sprite/Player';
2
2
  import { ModuleType } from '@rpgjs/common';
3
- import { Scene } from './Scene/Scene';
3
+ import { SceneMap } from './Scene/Map';
4
4
  import { RpgClientEngine } from './RpgClientEngine';
5
5
  export interface RpgClientEngineHooks {
6
6
  /**
@@ -48,6 +48,14 @@ export interface RpgClientEngineHooks {
48
48
  * @memberof RpgEngineHooks
49
49
  */
50
50
  onConnectError?: (engine: RpgClientEngine, err: any, socket: any) => any;
51
+ /**
52
+ * Called when window is resized
53
+ *
54
+ * @prop { () => any } [onWindowResize]
55
+ * @since 3.0.0-beta.4
56
+ * @memberof RpgEngineHooks
57
+ */
58
+ onWindowResize?: () => any;
51
59
  }
52
60
  export interface RpgSpriteHooks {
53
61
  /**
@@ -61,6 +69,7 @@ export interface RpgSpriteHooks {
61
69
  * Called when the sprite is deleted
62
70
  *
63
71
  * @prop { (sprite: RpgSprite) => any } [onDestroy]
72
+ * @memberof RpgSpriteHooks
64
73
  */
65
74
  onDestroy?: (sprite: RpgSprite) => any;
66
75
  /**
@@ -81,10 +90,12 @@ export interface RpgSpriteHooks {
81
90
  * When the x, y positions change
82
91
  *
83
92
  * @prop { (sprite: RpgSprite) => any } [onMove]
93
+ * @since 3.0.0-beta.4
94
+ * @memberof RpgSpriteHooks
84
95
  */
85
96
  onMove?: (sprite: RpgSprite) => any;
86
97
  }
87
- export interface RpgSceneHooks {
98
+ export interface RpgSceneHooks<Scene> {
88
99
  /**
89
100
  * a sprite has been added on the scene
90
101
  *
@@ -131,14 +142,14 @@ export interface RpgSceneHooks {
131
142
  */
132
143
  onDraw?: (scene: Scene, t: number) => any;
133
144
  }
134
- export interface RpgSceneMapHooks extends RpgSceneHooks {
145
+ export interface RpgSceneMapHooks extends RpgSceneHooks<SceneMap> {
135
146
  /**
136
147
  * The map and resources are being loaded
137
148
  *
138
149
  * @prop { (scene: RpgSceneMap, loader: PIXI.Loader) => any } [onMapLoading]
139
150
  * @memberof RpgSceneHooks
140
151
  */
141
- onMapLoading?: (scene: Scene, loader: PIXI.Loader) => any;
152
+ onMapLoading?: (scene: SceneMap, loader: PIXI.Loader) => any;
142
153
  }
143
154
  export interface RpgClient {
144
155
  /**
@@ -48,8 +48,30 @@ export declare class RpgClientEngine {
48
48
  io: any;
49
49
  private lastTimestamp;
50
50
  private pressInput;
51
+ private subscriptionWorld;
51
52
  constructor(gameEngine: any, options: any);
52
53
  private _init;
54
+ private addResource;
55
+ /**
56
+ * Adds Spritesheet classes
57
+ *
58
+ * @title Add Spritesheet
59
+ * @method addSpriteSheet(spritesheetClass|spritesheetClass[])
60
+ * @returns {void}
61
+ * @since 3.0.0-beta.3
62
+ * @memberof RpgClientEngine
63
+ */
64
+ addSpriteSheet(spritesheetClass: any): void;
65
+ /**
66
+ * Adds Sound classes
67
+ *
68
+ * @title Add Sound
69
+ * @method addSpriteSheet(soundClass|soundClass[])
70
+ * @returns {void}
71
+ * @since 3.0.0-beta.3
72
+ * @memberof RpgClientEngine
73
+ */
74
+ addSound(soundClass: any): void;
53
75
  /**
54
76
  * Starts the client side and connects to the server
55
77
  *
@@ -91,6 +113,7 @@ export declare class RpgClientEngine {
91
113
  * @memberof RpgClientEngine
92
114
  */
93
115
  connection(): void;
116
+ get world(): any;
94
117
  /**
95
118
  * VueJS Application instance
96
119
  *
@@ -119,5 +142,6 @@ export declare class RpgClientEngine {
119
142
  * @memberof RpgClientEngine
120
143
  * */
121
144
  get scene(): any;
145
+ reset(): void;
122
146
  }
123
147
  export {};
@@ -67,8 +67,8 @@ class RpgClientEngine {
67
67
  this.gameEngine.standalone = this.options['standalone'];
68
68
  this.gameEngine.renderer = this.renderer;
69
69
  this.gameEngine.clientEngine = this;
70
- Spritesheets_1._initSpritesheet(this.renderer.options.spritesheets);
71
- Sounds_1._initSound(this.renderer.options.sounds);
70
+ this.addSpriteSheet(this.renderer.options.spritesheets);
71
+ this.addSound(this.renderer.options.sounds);
72
72
  if (typeof __RPGJS_PRODUCTION__ != 'undefined' && __RPGJS_PRODUCTION__) {
73
73
  if ('serviceWorker' in navigator) {
74
74
  window.addEventListener('load', () => {
@@ -76,12 +76,40 @@ class RpgClientEngine {
76
76
  });
77
77
  }
78
78
  }
79
- else {
80
- console.log('> RPGJS is in development mode <');
81
- }
82
79
  this.controls = new KeyboardControls_1.KeyboardControls(this);
83
80
  });
84
81
  }
82
+ addResource(resourceClass, cb) {
83
+ let array = resourceClass;
84
+ if (!common_1.Utils.isArray(resourceClass)) {
85
+ array = [resourceClass];
86
+ }
87
+ cb(array, this);
88
+ }
89
+ /**
90
+ * Adds Spritesheet classes
91
+ *
92
+ * @title Add Spritesheet
93
+ * @method addSpriteSheet(spritesheetClass|spritesheetClass[])
94
+ * @returns {void}
95
+ * @since 3.0.0-beta.3
96
+ * @memberof RpgClientEngine
97
+ */
98
+ addSpriteSheet(spritesheetClass) {
99
+ this.addResource(spritesheetClass, Spritesheets_1._initSpritesheet);
100
+ }
101
+ /**
102
+ * Adds Sound classes
103
+ *
104
+ * @title Add Sound
105
+ * @method addSpriteSheet(soundClass|soundClass[])
106
+ * @returns {void}
107
+ * @since 3.0.0-beta.3
108
+ * @memberof RpgClientEngine
109
+ */
110
+ addSound(soundClass) {
111
+ this.addResource(soundClass, Sounds_1._initSound);
112
+ }
85
113
  /**
86
114
  * Starts the client side and connects to the server
87
115
  *
@@ -92,6 +120,7 @@ class RpgClientEngine {
92
120
  */
93
121
  start() {
94
122
  return __awaiter(this, void 0, void 0, function* () {
123
+ PIXI.utils.skipHello();
95
124
  yield this._init();
96
125
  let frame = 0;
97
126
  let renderLoop = (timestamp) => {
@@ -223,7 +252,7 @@ class RpgClientEngine {
223
252
  this.gameEngine.processInput(inputEvent, this.gameEngine.playerId);
224
253
  common_1.RpgPlugin.emit(common_1.HookClient.SendInput, [this, inputEvent], true);
225
254
  if (this.socket)
226
- this.socket.emit('move', inputEvent);
255
+ this.socket.emit('move', { input: actionName });
227
256
  }
228
257
  serverReconciliation() {
229
258
  const { playerId } = this.gameEngine;
@@ -311,6 +340,10 @@ class RpgClientEngine {
311
340
  this.socket.on('loadScene', ({ name, data }) => {
312
341
  this.renderer.loadScene(name, data);
313
342
  });
343
+ this.socket.on('changeTile', ({ tiles, x, y }) => {
344
+ const scene = this.renderer.getScene();
345
+ scene.changeTile(x, y, tiles);
346
+ });
314
347
  this.socket.on('callMethod', ({ objectId, params, name }) => {
315
348
  const scene = this.renderer.getScene();
316
349
  const sprite = scene.getPlayer(objectId);
@@ -329,7 +362,7 @@ class RpgClientEngine {
329
362
  }
330
363
  });
331
364
  let lastRoomId = '';
332
- sync_client_1.World.listen(this.socket)
365
+ this.subscriptionWorld = sync_client_1.World.listen(this.socket)
333
366
  .value
334
367
  .subscribe((val) => {
335
368
  if (!val.data) {
@@ -400,6 +433,9 @@ class RpgClientEngine {
400
433
  this.socket.connection();
401
434
  }
402
435
  }
436
+ get world() {
437
+ return sync_client_1.World;
438
+ }
403
439
  // shortcuts
404
440
  /**
405
441
  * VueJS Application instance
@@ -435,6 +471,10 @@ class RpgClientEngine {
435
471
  get scene() {
436
472
  return this.renderer.getScene();
437
473
  }
474
+ reset() {
475
+ this.subscriptionWorld.unsubscribe();
476
+ this.world.reset();
477
+ }
438
478
  }
439
479
  exports.RpgClientEngine = RpgClientEngine;
440
480
  //# sourceMappingURL=RpgClientEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RpgClientEngine.js","sourceRoot":"","sources":["../src/RpgClientEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpgClientEngine.js","sourceRoot":"","sources":["../src/RpgClientEngine.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { RpgShape } from '@rpgjs/common';
1
2
  import TileMap from '../Tilemap';
2
3
  import { Viewport } from 'pixi-viewport';
3
4
  import { IScene } from '../Interfaces/Scene';
@@ -9,7 +10,7 @@ export declare class SceneMap extends Scene implements IScene {
9
10
  /**
10
11
  * Get the tilemap
11
12
  *
12
- * @prop {TileMap} [tilemap]
13
+ * @prop {PIXI.Container} [tilemap]
13
14
  * @memberof RpgSceneMap
14
15
  * */
15
16
  tilemap: TileMap;
@@ -27,18 +28,79 @@ export declare class SceneMap extends Scene implements IScene {
27
28
  private players;
28
29
  private isLoaded;
29
30
  private gameMap;
31
+ shapes: {};
30
32
  constructor(game: any, options?: {
31
33
  screenWidth?: number;
32
34
  screenHeight?: number;
33
35
  });
36
+ private constructMethods;
34
37
  load(obj: any): Promise<Viewport>;
38
+ changeTile(x: number, y: number, layers: {
39
+ [layerName: string]: object;
40
+ }): void;
35
41
  draw(t: number, dt: number, frame: number): void;
36
42
  onUpdateObject(logic: any, sprite: Character, moving: boolean): Character;
37
43
  setPlayerPosition(id: string, { x, y }: {
38
44
  x: number;
39
45
  y: number;
40
46
  }): void;
41
- updateScene(obj: any): void;
47
+ updateScene(obj: {
48
+ data: any;
49
+ partial: any;
50
+ }): void;
42
51
  addObject(obj: any, id: string): Character;
43
52
  removeObject(id: string): void;
53
+ /**
54
+ * Listen to the events of the smile on the stage
55
+ *
56
+ * @title Listen mouse event
57
+ * @method on(eventName,callback)
58
+ * @since 3.0.0-beta.4
59
+ * @param {string} eventName Name of the event (see PIXI documentation). Name often used in the codes
60
+ * - click
61
+ * - mousedown
62
+ * - mouseup
63
+ * - mousemove
64
+ * - pointerdown
65
+ * - pointermove
66
+ * - pointerup
67
+ * - (etc...)
68
+ * @param {(position: { x: number, y: number }, ev?: PIXI.InteractionEvent ) => any} callback
69
+ * @example
70
+ * ```ts
71
+ * sceneMap.on('pointerdown', (position) => {
72
+ * console.log(position)
73
+ * })
74
+ * ```
75
+ * @returns {void}
76
+ * @memberof RpgSceneMap
77
+ */
78
+ on(eventName: string, cb: (position: {
79
+ x: number;
80
+ y: number;
81
+ }, ev?: PIXI.InteractionEvent) => any): void;
82
+ }
83
+ export interface SceneMap {
84
+ data: any;
85
+ tileWidth: number;
86
+ tileHeight: number;
87
+ layers: any[];
88
+ widthPx: number;
89
+ heightPx: number;
90
+ zTileHeight: number;
91
+ getShapes(): RpgShape[];
92
+ getShape(name: string): RpgShape | undefined;
93
+ getPositionByShape(filter: (shape: RpgShape) => {}): {
94
+ x: number;
95
+ y: number;
96
+ z: number;
97
+ } | null;
98
+ getTileIndex(x: number, y: number, [z]?: [number]): number;
99
+ getTileByIndex(tileIndex: number, zPlayer?: [number, number]): any;
100
+ getTileOriginPosition(x: number, y: number): {
101
+ x: number;
102
+ y: number;
103
+ };
104
+ getTileByPosition(x: number, y: number, z?: [number, number]): any;
105
+ getLayerByName(name: string): any;
44
106
  }
package/lib/Scene/Map.js CHANGED
@@ -17,11 +17,33 @@ class SceneMap extends Scene_1.Scene {
17
17
  this.options = options;
18
18
  this.players = {};
19
19
  this.isLoaded = false;
20
+ this.shapes = {};
20
21
  this.onInit();
21
22
  }
23
+ constructMethods() {
24
+ [
25
+ 'getTileIndex',
26
+ 'getTileByIndex',
27
+ 'getTileOriginPosition',
28
+ 'getTileByPosition',
29
+ 'getShapes',
30
+ 'getShape',
31
+ 'getLayerByName'
32
+ ].forEach(method => this[method] = this.gameMap[method].bind(this.gameMap));
33
+ [
34
+ 'heightPx',
35
+ 'widthPx',
36
+ 'zTileHeight',
37
+ 'tileHeight',
38
+ 'tileWidth',
39
+ 'data',
40
+ 'layers'
41
+ ].forEach(prop => this[prop] = this.gameMap[prop]);
42
+ }
22
43
  load(obj) {
23
44
  this.gameMap = new common_1.RpgCommonMap();
24
45
  this.gameMap.load(obj);
46
+ this.constructMethods();
25
47
  if (!this.game.standalone)
26
48
  common_1.RpgCommonMap.buffer.set(obj.id, this.gameMap);
27
49
  this.tilemap = new Tilemap_1.default(obj, this.game.renderer);
@@ -72,6 +94,13 @@ class SceneMap extends Scene_1.Scene {
72
94
  }
73
95
  });
74
96
  }
97
+ changeTile(x, y, layers) {
98
+ for (let layerName in layers) {
99
+ const layerInfo = layers[layerName];
100
+ this.gameMap.setTile(x, y, layerName, layerInfo);
101
+ this.tilemap.changeTile(x, y, layerName);
102
+ }
103
+ }
75
104
  draw(t, dt, frame) {
76
105
  if (!this.isLoaded) {
77
106
  return;
@@ -109,21 +138,40 @@ class SceneMap extends Scene_1.Scene {
109
138
  }
110
139
  updateScene(obj) {
111
140
  const shapes = obj.partial.shapes;
141
+ const fullShapesObj = obj.data.shapes;
142
+ const createShapeContainer = (instanceShape, shape) => {
143
+ instanceShape.clientContainer = new PIXI.Container();
144
+ if (shape.properties.color) {
145
+ const graphics = new PIXI.Graphics();
146
+ graphics.beginFill(shape.properties.color);
147
+ graphics.drawRect(0, 0, shape.width, shape.height);
148
+ graphics.endFill();
149
+ instanceShape.clientContainer.addChild(graphics);
150
+ }
151
+ instanceShape.clientContainer.x = shape.x;
152
+ instanceShape.clientContainer.y = shape.y;
153
+ this.tilemap.shapeLayer.addChild(instanceShape.clientContainer);
154
+ this.shapes[shape.name] = instanceShape.clientContainer;
155
+ };
112
156
  if (shapes) {
113
- const shapesInMap = this.gameMap.getShapes();
114
- for (let name in shapes) {
115
- const shapeMap = shapesInMap[name];
116
- let shape = shapes[name];
157
+ for (let i in shapes) {
158
+ let shape = fullShapesObj[i];
159
+ const { name } = shape;
160
+ const shapeMap = this.gameMap.getShape(name);
117
161
  if (shape == null) {
118
162
  this.gameMap.removeShape(name);
119
163
  continue;
120
164
  }
121
- shape = Object.assign(Object.assign({}, shape), { x: shape.hitbox.pos.x, y: shape.hitbox.pos.y, width: shape.hitbox.w, height: shape.hitbox.h, properties: {} });
122
- if (shapesInMap[name]) {
165
+ shape = Object.assign(Object.assign({}, shape), { x: shape.hitbox.pos.x, y: shape.hitbox.pos.y, width: shape.hitbox.w, height: shape.hitbox.h, properties: shape.properties });
166
+ if (shapeMap) {
167
+ if (!shapeMap.clientContainer) {
168
+ createShapeContainer(shapeMap, shape);
169
+ }
123
170
  shapeMap.set(shape);
124
171
  }
125
- else {
126
- this.gameMap.createShape(shape);
172
+ if (!this.shapes[name]) {
173
+ const instanceShape = this.gameMap.createShape(shape);
174
+ createShapeContainer(instanceShape, shape);
127
175
  }
128
176
  }
129
177
  }
@@ -155,6 +203,40 @@ class SceneMap extends Scene_1.Scene {
155
203
  sprite.destroy();
156
204
  }
157
205
  }
206
+ /**
207
+ * Listen to the events of the smile on the stage
208
+ *
209
+ * @title Listen mouse event
210
+ * @method on(eventName,callback)
211
+ * @since 3.0.0-beta.4
212
+ * @param {string} eventName Name of the event (see PIXI documentation). Name often used in the codes
213
+ * - click
214
+ * - mousedown
215
+ * - mouseup
216
+ * - mousemove
217
+ * - pointerdown
218
+ * - pointermove
219
+ * - pointerup
220
+ * - (etc...)
221
+ * @param {(position: { x: number, y: number }, ev?: PIXI.InteractionEvent ) => any} callback
222
+ * @example
223
+ * ```ts
224
+ * sceneMap.on('pointerdown', (position) => {
225
+ * console.log(position)
226
+ * })
227
+ * ```
228
+ * @returns {void}
229
+ * @memberof RpgSceneMap
230
+ */
231
+ on(eventName, cb) {
232
+ if (!this.tilemap)
233
+ return;
234
+ this.tilemap.background.interactive = true;
235
+ this.tilemap.background.on(eventName, function (ev) {
236
+ const pos = ev.data.getLocalPosition(this.parent);
237
+ cb(pos, ev);
238
+ });
239
+ }
158
240
  }
159
241
  exports.SceneMap = SceneMap;
160
242
  //# sourceMappingURL=Map.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/Scene/Map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/Scene/Map.ts"],"names":[],"mappings":"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"}