@rpgjs/client 3.0.0-beta.9 → 3.0.1

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.
Files changed (73) hide show
  1. package/lib/Components/ColorComponent.d.ts +8 -0
  2. package/lib/Components/ColorComponent.js +20 -0
  3. package/lib/Components/ColorComponent.js.map +1 -0
  4. package/lib/Components/Component.d.ts +102 -0
  5. package/lib/Components/Component.js +241 -0
  6. package/lib/Components/Component.js.map +1 -0
  7. package/lib/Components/ImageComponent.d.ts +8 -0
  8. package/lib/Components/ImageComponent.js +18 -0
  9. package/lib/Components/ImageComponent.js.map +1 -0
  10. package/lib/Components/TextComponent.d.ts +5 -0
  11. package/lib/Components/TextComponent.js +12 -0
  12. package/lib/Components/TextComponent.js.map +1 -0
  13. package/lib/Components/TileComponent.d.ts +8 -0
  14. package/lib/Components/TileComponent.js +32 -0
  15. package/lib/Components/TileComponent.js.map +1 -0
  16. package/lib/Effects/Animation.d.ts +2 -2
  17. package/lib/Effects/Animation.js +9 -6
  18. package/lib/Effects/Animation.js.map +1 -1
  19. package/lib/GameEngine.d.ts +36 -2
  20. package/lib/GameEngine.js +122 -40
  21. package/lib/GameEngine.js.map +1 -1
  22. package/lib/KeyboardControls.js +0 -1
  23. package/lib/KeyboardControls.js.map +1 -1
  24. package/lib/Renderer.js +2 -2
  25. package/lib/Renderer.js.map +1 -1
  26. package/lib/Resources.js +2 -2
  27. package/lib/Resources.js.map +1 -1
  28. package/lib/RpgClient.d.ts +9 -9
  29. package/lib/RpgClientEngine.d.ts +4 -2
  30. package/lib/RpgClientEngine.js +71 -13
  31. package/lib/RpgClientEngine.js.map +1 -1
  32. package/lib/RpgGui.js +3 -3
  33. package/lib/RpgGui.js.map +1 -1
  34. package/lib/Scene/Map.d.ts +5 -5
  35. package/lib/Scene/Map.js +40 -67
  36. package/lib/Scene/Map.js.map +1 -1
  37. package/lib/Scene/Scene.d.ts +9 -7
  38. package/lib/Scene/Scene.js +10 -8
  39. package/lib/Scene/Scene.js.map +1 -1
  40. package/lib/Sound/RpgSound.js +1 -1
  41. package/lib/Sound/RpgSound.js.map +1 -1
  42. package/lib/Sound/Sounds.js +1 -1
  43. package/lib/Sound/Sounds.js.map +1 -1
  44. package/lib/Sprite/Character.d.ts +5 -74
  45. package/lib/Sprite/Character.js +22 -137
  46. package/lib/Sprite/Character.js.map +1 -1
  47. package/lib/Sprite/Spritesheets.js +1 -1
  48. package/lib/Sprite/Spritesheets.js.map +1 -1
  49. package/lib/Tilemap/CommonLayer.d.ts +9 -0
  50. package/lib/Tilemap/CommonLayer.js +21 -0
  51. package/lib/Tilemap/CommonLayer.js.map +1 -0
  52. package/lib/Tilemap/ImageLayer.d.ts +3 -2
  53. package/lib/Tilemap/ImageLayer.js +11 -7
  54. package/lib/Tilemap/ImageLayer.js.map +1 -1
  55. package/lib/Tilemap/Tile.d.ts +6 -7
  56. package/lib/Tilemap/Tile.js +29 -32
  57. package/lib/Tilemap/Tile.js.map +1 -1
  58. package/lib/Tilemap/TileLayer.d.ts +9 -6
  59. package/lib/Tilemap/TileLayer.js +28 -31
  60. package/lib/Tilemap/TileLayer.js.map +1 -1
  61. package/lib/Tilemap/TileSet.d.ts +4 -15
  62. package/lib/Tilemap/TileSet.js +11 -18
  63. package/lib/Tilemap/TileSet.js.map +1 -1
  64. package/lib/Tilemap/index.d.ts +16 -9
  65. package/lib/Tilemap/index.js +47 -28
  66. package/lib/Tilemap/index.js.map +1 -1
  67. package/lib/clientEntryPoint.js +1 -1
  68. package/lib/clientEntryPoint.js.map +1 -1
  69. package/lib/index.d.ts +2 -2
  70. package/lib/index.js +9 -4
  71. package/lib/index.js.map +1 -1
  72. package/package.json +7 -6
  73. package/LICENSE +0 -19
@@ -0,0 +1,8 @@
1
+ import { RpgComponent } from "./Component";
2
+ export declare class ColorComponent extends PIXI.Graphics {
3
+ private component;
4
+ color: string;
5
+ static readonly id: string;
6
+ constructor(component: RpgComponent, color: string);
7
+ setBackgroundColor(): void;
8
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ColorComponent = void 0;
4
+ class ColorComponent extends PIXI.Graphics {
5
+ constructor(component, color) {
6
+ super();
7
+ this.component = component;
8
+ this.color = color;
9
+ this.setBackgroundColor();
10
+ }
11
+ setBackgroundColor() {
12
+ const color = this.color.replace('#', '');
13
+ this.beginFill(parseInt(color, 16));
14
+ this.drawRect(0, 0, this.component.w, this.component.h);
15
+ this.endFill();
16
+ }
17
+ }
18
+ exports.ColorComponent = ColorComponent;
19
+ ColorComponent.id = 'color';
20
+ //# sourceMappingURL=ColorComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColorComponent.js","sourceRoot":"","sources":["../../src/Components/ColorComponent.ts"],"names":[],"mappings":";;;AAEA,MAAa,cAAe,SAAQ,IAAI,CAAC,QAAQ;IAG7C,YAAoB,SAAuB,EAAS,KAAa;QAC7D,KAAK,EAAE,CAAA;QADS,cAAS,GAAT,SAAS,CAAc;QAAS,UAAK,GAAL,KAAK,CAAQ;QAE7D,IAAI,CAAC,kBAAkB,EAAE,CAAA;IAC7B,CAAC;IAED,kBAAkB;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QACzC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAA;QACnC,IAAI,CAAC,QAAQ,CACT,CAAC,EACD,CAAC,EACD,IAAI,CAAC,SAAS,CAAC,CAAC,EAChB,IAAI,CAAC,SAAS,CAAC,CAAC,CACnB,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAA;IAClB,CAAC;;AAlBL,wCAmBC;AAlBmB,iBAAE,GAAW,OAAO,CAAA"}
@@ -0,0 +1,102 @@
1
+ import { Direction, RpgCommonPlayer, RpgShape } from "@rpgjs/common";
2
+ import { Scene } from "../Scene/Scene";
3
+ export interface IComponent {
4
+ id: string;
5
+ value: any;
6
+ }
7
+ export declare class RpgComponent<T = any> extends PIXI.Container {
8
+ private data;
9
+ private scene;
10
+ protected _x: number;
11
+ protected _y: number;
12
+ private _rotation;
13
+ protected teleported: number;
14
+ protected map: string;
15
+ protected z: number;
16
+ protected fixed: boolean;
17
+ private components;
18
+ private direction;
19
+ private container;
20
+ private registerComponents;
21
+ constructor(data: RpgCommonPlayer | RpgShape, scene: Scene);
22
+ /**
23
+ * the direction of the sprite
24
+ *
25
+ * @prop {Direction} dir
26
+ * @readonly
27
+ * @memberof RpgSprite
28
+ * */
29
+ get dir(): Direction;
30
+ /**
31
+ * To know if the sprite is a player
32
+ *
33
+ * @prop {boolean} isPlayer
34
+ * @readonly
35
+ * @memberof RpgSprite
36
+ * */
37
+ get isPlayer(): boolean;
38
+ /**
39
+ * To know if the sprite is an event
40
+ *
41
+ * @prop {boolean} isEvent
42
+ * @readonly
43
+ * @memberof RpgSprite
44
+ * */
45
+ get isEvent(): boolean;
46
+ /**
47
+ * To know if the sprite is a shape
48
+ *
49
+ * @prop {boolean} isShape
50
+ * @since 3.0.0-rc
51
+ * @readonly
52
+ * @memberof RpgSprite
53
+ * */
54
+ get isShape(): boolean;
55
+ /**
56
+ * To know if the sprite is the sprite controlled by the player
57
+ *
58
+ * @prop {boolean} isCurrentPlayer
59
+ * @readonly
60
+ * @memberof RpgSprite
61
+ * */
62
+ get isCurrentPlayer(): boolean;
63
+ /**
64
+ * Retrieves the logic of the sprite
65
+ *
66
+ * @prop {RpgSpriteLogic} logic
67
+ * @readonly
68
+ * @since 3.0.0-beta.4
69
+ * @memberof RpgSprite
70
+ * */
71
+ get logic(): RpgCommonPlayer | RpgShape | null;
72
+ get guiDisplay(): boolean;
73
+ set guiDisplay(val: boolean);
74
+ setPosition(smooth?: boolean): void;
75
+ update(obj: any): {
76
+ moving: boolean;
77
+ };
78
+ showAnimation(graphic: string | string[], animationName: string): void;
79
+ /**
80
+ * Recover the position according to the graphic
81
+ * Normally, the position is that of the hitbox but, we retrieve the top left corner of the graphic
82
+ *
83
+ * You can also pass the `middle` value as first parameter to retrieve the positions from the middle of the sprite
84
+ *
85
+ * @title Get Positions of Graphic
86
+ * @method sprite.getPositionsOfGraphic(align)
87
+ * @param {string} [align] middle
88
+ * @returns { x: number, y: number }
89
+ * @memberof RpgSprite
90
+ */
91
+ getPositionsOfGraphic(align: string): {
92
+ x: number;
93
+ y: number;
94
+ };
95
+ private callMethodInComponents;
96
+ private updateComponents;
97
+ getScene<T>(): T;
98
+ onInit(): void;
99
+ onUpdate(obj: any): void;
100
+ onMove(): void;
101
+ onChanges(data: any, old: any): void;
102
+ }
@@ -0,0 +1,241 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RpgComponent = void 0;
4
+ const common_1 = require("@rpgjs/common");
5
+ const operators_1 = require("rxjs/operators");
6
+ const Logger_1 = require("../Logger");
7
+ const Player_1 = require("../Sprite/Player");
8
+ const ColorComponent_1 = require("./ColorComponent");
9
+ const ImageComponent_1 = require("./ImageComponent");
10
+ const TextComponent_1 = require("./TextComponent");
11
+ const TileComponent_1 = require("./TileComponent");
12
+ class RpgComponent extends PIXI.Container {
13
+ constructor(data, scene) {
14
+ super();
15
+ this.data = data;
16
+ this.scene = scene;
17
+ /** @internal */
18
+ this.h = 1;
19
+ /** @internal */
20
+ this.w = 1;
21
+ this._x = 0;
22
+ this._y = 0;
23
+ this._rotation = 0;
24
+ this.teleported = 0;
25
+ this.map = '';
26
+ this.z = 0;
27
+ this.fixed = false;
28
+ this.components = [];
29
+ this.direction = 0;
30
+ this.container = new PIXI.Container();
31
+ this.registerComponents = new Map();
32
+ this.setPosition(false);
33
+ this.registerComponents.set(Player_1.RpgSprite.id, Player_1.RpgSprite);
34
+ this.registerComponents.set(TextComponent_1.TextComponent.id, TextComponent_1.TextComponent);
35
+ this.registerComponents.set(ColorComponent_1.ColorComponent.id, ColorComponent_1.ColorComponent);
36
+ this.registerComponents.set(TileComponent_1.TileComponent.id, TileComponent_1.TileComponent);
37
+ this.registerComponents.set(ImageComponent_1.ImageComponent.id, ImageComponent_1.ImageComponent);
38
+ this.addChild(this.container);
39
+ common_1.RpgPlugin.emit(common_1.HookClient.AddSprite, this);
40
+ common_1.RpgPlugin.emit(common_1.HookClient.SceneAddSprite, [this.scene, this], true);
41
+ this.scene.game.listenObject(data.id)
42
+ .pipe((0, operators_1.map)(object => object === null || object === void 0 ? void 0 : object.paramsChanged), (0, operators_1.tap)(() => {
43
+ var _a, _b;
44
+ common_1.RpgPlugin.emit(common_1.HookClient.ChangesSprite, [this, (_a = this.logic) === null || _a === void 0 ? void 0 : _a['paramsChanged'], (_b = this.logic) === null || _b === void 0 ? void 0 : _b['prevParamsChanged']], true);
45
+ }), (0, operators_1.filter)(object => {
46
+ var _a;
47
+ const componentChanged = (_a = this.logic) === null || _a === void 0 ? void 0 : _a['componentChanged'];
48
+ return componentChanged && componentChanged.length;
49
+ }))
50
+ .subscribe((val) => {
51
+ var _a;
52
+ if (this.logic) {
53
+ this.updateComponents((_a = this.logic) === null || _a === void 0 ? void 0 : _a['componentChanged']);
54
+ this.logic['componentChanged'] = undefined;
55
+ }
56
+ });
57
+ }
58
+ /**
59
+ * the direction of the sprite
60
+ *
61
+ * @prop {Direction} dir
62
+ * @readonly
63
+ * @memberof RpgSprite
64
+ * */
65
+ get dir() {
66
+ return this.direction;
67
+ }
68
+ /**
69
+ * To know if the sprite is a player
70
+ *
71
+ * @prop {boolean} isPlayer
72
+ * @readonly
73
+ * @memberof RpgSprite
74
+ * */
75
+ get isPlayer() {
76
+ return this.data.type == common_1.PlayerType.Player;
77
+ }
78
+ /**
79
+ * To know if the sprite is an event
80
+ *
81
+ * @prop {boolean} isEvent
82
+ * @readonly
83
+ * @memberof RpgSprite
84
+ * */
85
+ get isEvent() {
86
+ return this.data.type == common_1.PlayerType.Event;
87
+ }
88
+ /**
89
+ * To know if the sprite is a shape
90
+ *
91
+ * @prop {boolean} isShape
92
+ * @since 3.0.0-rc
93
+ * @readonly
94
+ * @memberof RpgSprite
95
+ * */
96
+ get isShape() {
97
+ return common_1.Utils.isInstanceOf(this.data, common_1.RpgShape);
98
+ }
99
+ /**
100
+ * To know if the sprite is the sprite controlled by the player
101
+ *
102
+ * @prop {boolean} isCurrentPlayer
103
+ * @readonly
104
+ * @memberof RpgSprite
105
+ * */
106
+ get isCurrentPlayer() {
107
+ return this.data.id === this.scene.game.playerId;
108
+ }
109
+ /**
110
+ * Retrieves the logic of the sprite
111
+ *
112
+ * @prop {RpgSpriteLogic} logic
113
+ * @readonly
114
+ * @since 3.0.0-beta.4
115
+ * @memberof RpgSprite
116
+ * */
117
+ get logic() {
118
+ return this.scene.game.world.getAll(this.data.id);
119
+ }
120
+ get guiDisplay() {
121
+ return this.logic.guiDisplay;
122
+ }
123
+ set guiDisplay(val) {
124
+ this.logic.guiDisplay = val;
125
+ }
126
+ setPosition(smooth = true) {
127
+ var _a, _b, _c, _d;
128
+ if (this.isShape) {
129
+ const { width, height, x, y } = this.data;
130
+ this.w = width;
131
+ this.h = height;
132
+ this._x = Math.floor(x);
133
+ this._y = Math.floor(y);
134
+ }
135
+ else {
136
+ const { position, direction } = this.data;
137
+ this._x = Math.floor((_a = position === null || position === void 0 ? void 0 : position.x) !== null && _a !== void 0 ? _a : 0);
138
+ this._y = Math.floor((_b = position === null || position === void 0 ? void 0 : position.y) !== null && _b !== void 0 ? _b : 0);
139
+ this.z = Math.floor((_c = position === null || position === void 0 ? void 0 : position.z) !== null && _c !== void 0 ? _c : 0);
140
+ this.direction = direction;
141
+ }
142
+ this._rotation = (_d = this.data['rotation']) !== null && _d !== void 0 ? _d : 0;
143
+ if (!smooth) {
144
+ this.x = this._x;
145
+ this.y = this._y;
146
+ this.angle = this._rotation;
147
+ }
148
+ }
149
+ update(obj) {
150
+ const { speed, teleported, map, fixed, rotation } = obj;
151
+ this.data = obj;
152
+ this.setPosition();
153
+ if (this._rotation != this.angle) {
154
+ this.angle += Math.min(speed, this._rotation - this.angle);
155
+ }
156
+ let moving = false;
157
+ if (!fixed) {
158
+ if (teleported != this.teleported || map != this.map) {
159
+ this.x = this._x;
160
+ this.y = this._y;
161
+ this.teleported = teleported;
162
+ this.map = map;
163
+ }
164
+ this.parent.parent.zIndex = this._y;
165
+ obj.posX = this._x;
166
+ obj.posY = this._y;
167
+ if (this._x > this.x) {
168
+ this.x += Math.min(speed, this._x - this.x);
169
+ moving = true;
170
+ }
171
+ if (this._x < this.x) {
172
+ this.x -= Math.min(speed, this.x - this._x);
173
+ moving = true;
174
+ }
175
+ if (this._y > this.y) {
176
+ this.y += Math.min(speed, this._y - this.y);
177
+ moving = true;
178
+ }
179
+ if (this._y < this.y) {
180
+ this.y -= Math.min(speed, this.y - this._y);
181
+ moving = true;
182
+ }
183
+ }
184
+ this.callMethodInComponents('update', [obj, { moving }]);
185
+ this.onUpdate(obj);
186
+ return {
187
+ moving
188
+ };
189
+ }
190
+ showAnimation(graphic, animationName) {
191
+ return this.callMethodInComponents('showAnimation', [graphic, animationName]);
192
+ }
193
+ /**
194
+ * Recover the position according to the graphic
195
+ * Normally, the position is that of the hitbox but, we retrieve the top left corner of the graphic
196
+ *
197
+ * You can also pass the `middle` value as first parameter to retrieve the positions from the middle of the sprite
198
+ *
199
+ * @title Get Positions of Graphic
200
+ * @method sprite.getPositionsOfGraphic(align)
201
+ * @param {string} [align] middle
202
+ * @returns { x: number, y: number }
203
+ * @memberof RpgSprite
204
+ */
205
+ getPositionsOfGraphic(align) {
206
+ const sprite = this.container.getChildAt(0);
207
+ const isMiddle = align == 'middle';
208
+ return {
209
+ x: this.x - this.w * sprite.anchor.x + (isMiddle ? this.w / 2 : 0),
210
+ y: this.y - this.h * sprite.anchor.y + (isMiddle ? this.h / 2 : 0)
211
+ };
212
+ }
213
+ callMethodInComponents(name, params) {
214
+ for (let component of this.container.children) {
215
+ if (component[name])
216
+ component[name](...params);
217
+ }
218
+ }
219
+ updateComponents(components) {
220
+ this.container.removeChildren();
221
+ for (let component of components) {
222
+ const compClass = this.registerComponents.get(component.id);
223
+ if (!compClass) {
224
+ throw (0, Logger_1.log)(`Impossible to find ${component.id} component`);
225
+ }
226
+ const instance = new compClass(this, component.value);
227
+ this.container.addChild(instance);
228
+ }
229
+ this.components = components;
230
+ }
231
+ getScene() {
232
+ return this.scene;
233
+ }
234
+ // Hooks
235
+ onInit() { }
236
+ onUpdate(obj) { }
237
+ onMove() { }
238
+ onChanges(data, old) { }
239
+ }
240
+ exports.RpgComponent = RpgComponent;
241
+ //# sourceMappingURL=Component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../src/Components/Component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { RpgComponent } from "./Component";
2
+ export declare class ImageComponent extends PIXI.Container {
3
+ private component;
4
+ private source;
5
+ static readonly id: string;
6
+ constructor(component: RpgComponent, source: string);
7
+ setImage(): void;
8
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ImageComponent = void 0;
4
+ class ImageComponent extends PIXI.Container {
5
+ constructor(component, source) {
6
+ super();
7
+ this.component = component;
8
+ this.source = source;
9
+ this.setImage();
10
+ }
11
+ setImage() {
12
+ const engine = this.component.getScene().game.clientEngine;
13
+ this.addChild(PIXI.Sprite.from(engine.getResourceUrl(this.source)));
14
+ }
15
+ }
16
+ exports.ImageComponent = ImageComponent;
17
+ ImageComponent.id = 'image';
18
+ //# sourceMappingURL=ImageComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ImageComponent.js","sourceRoot":"","sources":["../../src/Components/ImageComponent.ts"],"names":[],"mappings":";;;AAGA,MAAa,cAAe,SAAQ,IAAI,CAAC,SAAS;IAG9C,YAAoB,SAAuB,EAAU,MAAc;QAC/D,KAAK,EAAE,CAAA;QADS,cAAS,GAAT,SAAS,CAAc;QAAU,WAAM,GAAN,MAAM,CAAQ;QAE/D,IAAI,CAAC,QAAQ,EAAE,CAAA;IACnB,CAAC;IAED,QAAQ;QACJ,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAY,CAAC,IAAI,CAAC,YAAY,CAAA;QACpE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACvE,CAAC;;AAXL,wCAYC;AAXmB,iBAAE,GAAW,OAAO,CAAA"}
@@ -0,0 +1,5 @@
1
+ export declare class TextComponent extends PIXI.Text {
2
+ private data;
3
+ static readonly id: string;
4
+ constructor(data: any, _text: string);
5
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TextComponent = void 0;
4
+ class TextComponent extends PIXI.Text {
5
+ constructor(data, _text) {
6
+ super(_text);
7
+ this.data = data;
8
+ }
9
+ }
10
+ exports.TextComponent = TextComponent;
11
+ TextComponent.id = 'text';
12
+ //# sourceMappingURL=TextComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextComponent.js","sourceRoot":"","sources":["../../src/Components/TextComponent.ts"],"names":[],"mappings":";;;AAAA,MAAa,aAAc,SAAQ,IAAI,CAAC,IAAI;IAGxC,YAAoB,IAAI,EAAE,KAAa;QACnC,KAAK,CAAC,KAAK,CAAC,CAAA;QADI,SAAI,GAAJ,IAAI,CAAA;IAExB,CAAC;;AALL,sCAMC;AALmB,gBAAE,GAAW,MAAM,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { RpgComponent } from "./Component";
2
+ export declare class TileComponent extends PIXI.Container {
3
+ private component;
4
+ private gid;
5
+ static readonly id: string;
6
+ constructor(component: RpgComponent, gid: number);
7
+ setTile(): void;
8
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TileComponent = void 0;
7
+ const Tile_1 = __importDefault(require("../Tilemap/Tile"));
8
+ const TileLayer_1 = __importDefault(require("../Tilemap/TileLayer"));
9
+ class TileComponent extends PIXI.Container {
10
+ constructor(component, gid) {
11
+ super();
12
+ this.component = component;
13
+ this.gid = gid;
14
+ this.setTile();
15
+ }
16
+ setTile() {
17
+ const scene = this.component.getScene();
18
+ const tilemap = scene.tilemap;
19
+ const tileset = TileLayer_1.default.findTileSet(this.gid, tilemap.tilesets);
20
+ if (tileset) {
21
+ const tile = new Tile_1.default({
22
+ gid: this.gid
23
+ }, tileset);
24
+ tile.width = this.component.w;
25
+ tile.height = this.component.h;
26
+ this.addChild(tile);
27
+ }
28
+ }
29
+ }
30
+ exports.TileComponent = TileComponent;
31
+ TileComponent.id = 'tile';
32
+ //# sourceMappingURL=TileComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TileComponent.js","sourceRoot":"","sources":["../../src/Components/TileComponent.ts"],"names":[],"mappings":";;;;;;AACA,2DAAkC;AAClC,qEAA4C;AAG5C,MAAa,aAAc,SAAQ,IAAI,CAAC,SAAS;IAG7C,YAAoB,SAAuB,EAAU,GAAW;QAC5D,KAAK,EAAE,CAAA;QADS,cAAS,GAAT,SAAS,CAAc;QAAU,QAAG,GAAH,GAAG,CAAQ;QAE5D,IAAI,CAAC,OAAO,EAAE,CAAA;IAClB,CAAC;IAED,OAAO;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAY,CAAA;QACjD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QAC7B,MAAM,OAAO,GAAG,mBAAS,CAAC,WAAW,CACjC,IAAI,CAAC,GAAG,EACR,OAAO,CAAC,QAAQ,CACnB,CAAA;QACD,IAAI,OAAO,EAAE;YACP,MAAM,IAAI,GAAG,IAAI,cAAI,CAAC;gBACpB,GAAG,EAAE,IAAI,CAAC,GAAG;aACT,EAAE,OAAO,CAAC,CAAA;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;YAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAA;YAC9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;SACtB;IACL,CAAC;;AAvBL,sCAwBC;AAvBmB,gBAAE,GAAW,MAAM,CAAA"}
@@ -1,5 +1,5 @@
1
1
  import { AnimationFrames, FrameOptions } from '../Sprite/Spritesheet';
2
- import RpgSprite from '../Sprite/Character';
2
+ import { RpgComponent } from '../Components/Component';
3
3
  declare type AnimationDataFrames = {
4
4
  container: PIXI.Container;
5
5
  sprites: {
@@ -14,7 +14,7 @@ declare type AnimationDataFrames = {
14
14
  };
15
15
  export declare class Animation extends PIXI.Sprite {
16
16
  id: string;
17
- attachTo: RpgSprite;
17
+ attachTo: RpgComponent;
18
18
  hitbox: {
19
19
  w: number;
20
20
  h: number;
@@ -16,7 +16,7 @@ class Animation extends PIXI.Sprite {
16
16
  this.animations = new Map();
17
17
  this.spritesheet = Spritesheets_1.spritesheets.get(this.id);
18
18
  if (!this.spritesheet) {
19
- throw Logger_1.log(`Impossible to find the ${this.id} spritesheet. Did you put the right name or create the spritesheet?`);
19
+ throw (0, Logger_1.log)(`Impossible to find the ${this.id} spritesheet. Did you put the right name or create the spritesheet?`);
20
20
  }
21
21
  this.createAnimations();
22
22
  }
@@ -34,10 +34,10 @@ class Animation extends PIXI.Sprite {
34
34
  const rectX = j * spriteWidth + offsetX;
35
35
  const rectY = i * spriteHeight + offsetY;
36
36
  if (rectY > height) {
37
- throw Logger_1.log(`Warning, there is a problem with the height of the "${this.id}" spritesheet. When cutting into frames, the frame exceeds the height of the image.`);
37
+ throw (0, Logger_1.log)(`Warning, there is a problem with the height of the "${this.id}" spritesheet. When cutting into frames, the frame exceeds the height of the image.`);
38
38
  }
39
39
  if (rectX > width) {
40
- throw Logger_1.log(`Warning, there is a problem with the width of the "${this.id}" spritesheet. When cutting into frames, the frame exceeds the width of the image.`);
40
+ throw (0, Logger_1.log)(`Warning, there is a problem with the width of the "${this.id}" spritesheet. When cutting into frames, the frame exceeds the width of the image.`);
41
41
  }
42
42
  frames[i].push(new PIXI.Texture(baseTexture, new PIXI.Rectangle(rectX, rectY, spriteWidth, spriteHeight)));
43
43
  }
@@ -121,9 +121,12 @@ class Animation extends PIXI.Sprite {
121
121
  return;
122
122
  const { frames, container, sprites, data } = this.currentAnimation;
123
123
  if (this.attachTo) {
124
- const { x, y } = this.attachTo.getPositionsOfGraphic('middle');
125
- container.x = x;
126
- container.y = y;
124
+ const sprite = this.attachTo;
125
+ const pos = sprite === null || sprite === void 0 ? void 0 : sprite.getPositionsOfGraphic('middle');
126
+ if (pos) {
127
+ container.x = pos.x;
128
+ container.y = pos.y;
129
+ }
127
130
  }
128
131
  for (let _sprite of container.children) {
129
132
  const sprite = _sprite;
@@ -1 +1 @@
1
- {"version":3,"file":"Animation.js","sourceRoot":"","sources":["../../src/Effects/Animation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Animation.js","sourceRoot":"","sources":["../../src/Effects/Animation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { RpgCommonGame, RpgCommonPlayer } from "@rpgjs/common";
1
+ import { RpgCommonGame, RpgCommonPlayer, RpgShape } from "@rpgjs/common";
2
2
  import { Observable } from "rxjs";
3
3
  import { RpgRenderer } from "./Renderer";
4
4
  import { RpgClientEngine } from "./RpgClientEngine";
@@ -12,23 +12,57 @@ export declare class GameEngineClient extends RpgCommonGame {
12
12
  clientEngine: RpgClientEngine;
13
13
  renderer: RpgRenderer;
14
14
  private _objects;
15
+ private _obsObjects;
16
+ private _shapes;
17
+ private _objectsChanged;
15
18
  world: {
16
19
  getObjects: () => {
17
20
  [id: string]: ObjectFixture;
18
21
  };
19
22
  getObject: (id: string) => RpgCommonPlayer | null;
23
+ getShape: (id: string) => RpgShape | null;
24
+ getAll: (id: string) => RpgCommonPlayer | RpgShape | null;
20
25
  removeObject: (id: any) => boolean;
21
26
  getObjectsOfGroup: () => any;
27
+ getShapesOfGroup: () => {
28
+ [id: string]: ObjectFixture;
29
+ };
22
30
  };
23
31
  constructor();
32
+ private _get;
33
+ get objectsChanged(): Observable<{
34
+ [id: string]: ObjectFixture;
35
+ }>;
36
+ setObjectsChanged(val: {
37
+ [playerId: string]: ObjectFixture;
38
+ }): void;
39
+ listenObject(id: string): Observable<ObjectFixture>;
24
40
  get objects(): Observable<{
25
41
  [id: string]: ObjectFixture;
26
42
  }>;
43
+ get shapes(): Observable<{
44
+ [id: string]: ObjectFixture;
45
+ }>;
46
+ get all(): Observable<{
47
+ [id: string]: ObjectFixture;
48
+ }>;
49
+ getShapes(): {
50
+ [id: string]: ObjectFixture;
51
+ };
27
52
  getObjects(): {
28
53
  [id: string]: ObjectFixture;
29
54
  };
30
55
  getObject(id: string): ObjectFixture | null;
56
+ getShape(id: string): ObjectFixture | null;
57
+ getObjectAndShape(id: string): ObjectFixture | null;
31
58
  resetObjects(): void;
59
+ private _remove;
32
60
  removeObject(id: any): boolean;
33
- updateObject(obj: any): any;
61
+ removeShape(id: any): boolean;
62
+ removeObjectAndShape(id: string): boolean;
63
+ static toArray(obj: any, prop: string): void;
64
+ updateObject(obj: any): {
65
+ object: any;
66
+ paramsChanged: any;
67
+ };
34
68
  }