@rpgjs/client 4.3.0 → 5.0.0-alpha.0

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 (321) hide show
  1. package/dist/Game/EffectManager.d.ts +5 -0
  2. package/dist/Game/Event.d.ts +4 -0
  3. package/dist/Game/Map.d.ts +7 -0
  4. package/dist/Game/Player.d.ts +4 -0
  5. package/dist/Gui/Gui.d.ts +23 -0
  6. package/{lib → dist}/RpgClient.d.ts +9 -6
  7. package/dist/RpgClientEngine.d.ts +43 -0
  8. package/dist/components/effects/index.d.ts +4 -0
  9. package/dist/components/gui/index.d.ts +3 -0
  10. package/dist/components/index.d.ts +2 -0
  11. package/dist/core/inject.d.ts +5 -0
  12. package/dist/core/setup.d.ts +6 -0
  13. package/dist/index.d.ts +13 -0
  14. package/dist/index.js +13 -0
  15. package/dist/index.js.map +1 -0
  16. package/dist/index10.js +8 -0
  17. package/dist/index10.js.map +1 -0
  18. package/dist/index11.js +10 -0
  19. package/dist/index11.js.map +1 -0
  20. package/dist/index12.js +8 -0
  21. package/dist/index12.js.map +1 -0
  22. package/dist/index13.js +17 -0
  23. package/dist/index13.js.map +1 -0
  24. package/dist/index14.js +50 -0
  25. package/dist/index14.js.map +1 -0
  26. package/dist/index15.js +191 -0
  27. package/dist/index15.js.map +1 -0
  28. package/dist/index16.js +9 -0
  29. package/dist/index16.js.map +1 -0
  30. package/dist/index17.js +387 -0
  31. package/dist/index17.js.map +1 -0
  32. package/dist/index18.js +31 -0
  33. package/dist/index18.js.map +1 -0
  34. package/dist/index19.js +24 -0
  35. package/dist/index19.js.map +1 -0
  36. package/dist/index2.js +112 -0
  37. package/dist/index2.js.map +1 -0
  38. package/dist/index20.js +2421 -0
  39. package/dist/index20.js.map +1 -0
  40. package/dist/index21.js +114 -0
  41. package/dist/index21.js.map +1 -0
  42. package/dist/index22.js +109 -0
  43. package/dist/index22.js.map +1 -0
  44. package/dist/index23.js +71 -0
  45. package/dist/index23.js.map +1 -0
  46. package/dist/index24.js +21 -0
  47. package/dist/index24.js.map +1 -0
  48. package/dist/index25.js +41 -0
  49. package/dist/index25.js.map +1 -0
  50. package/dist/index26.js +5 -0
  51. package/dist/index26.js.map +1 -0
  52. package/dist/index27.js +322 -0
  53. package/dist/index27.js.map +1 -0
  54. package/dist/index28.js +25 -0
  55. package/dist/index28.js.map +1 -0
  56. package/dist/index29.js +11 -0
  57. package/dist/index29.js.map +1 -0
  58. package/dist/index3.js +87 -0
  59. package/dist/index3.js.map +1 -0
  60. package/dist/index30.js +11 -0
  61. package/dist/index30.js.map +1 -0
  62. package/dist/index31.js +174 -0
  63. package/dist/index31.js.map +1 -0
  64. package/dist/index32.js +501 -0
  65. package/dist/index32.js.map +1 -0
  66. package/dist/index33.js +12 -0
  67. package/dist/index33.js.map +1 -0
  68. package/dist/index34.js +4403 -0
  69. package/dist/index34.js.map +1 -0
  70. package/dist/index35.js +91 -0
  71. package/dist/index35.js.map +1 -0
  72. package/dist/index36.js +61 -0
  73. package/dist/index36.js.map +1 -0
  74. package/dist/index37.js +20 -0
  75. package/dist/index37.js.map +1 -0
  76. package/dist/index38.js +20 -0
  77. package/dist/index38.js.map +1 -0
  78. package/dist/index4.js +54 -0
  79. package/dist/index4.js.map +1 -0
  80. package/dist/index5.js +15 -0
  81. package/dist/index5.js.map +1 -0
  82. package/dist/index6.js +17 -0
  83. package/dist/index6.js.map +1 -0
  84. package/dist/index7.js +31 -0
  85. package/dist/index7.js.map +1 -0
  86. package/dist/index8.js +90 -0
  87. package/dist/index8.js.map +1 -0
  88. package/dist/index9.js +76 -0
  89. package/dist/index9.js.map +1 -0
  90. package/dist/module.d.ts +14 -0
  91. package/dist/presets/index.d.ts +22 -0
  92. package/{lib/Presets/AnimationSpritesheet.d.ts → dist/presets/rmspritesheet.d.ts} +6 -2
  93. package/dist/services/AbstractSocket.d.ts +15 -0
  94. package/dist/services/loadMap.d.ts +14 -0
  95. package/dist/services/mmorpg.d.ts +32 -0
  96. package/dist/services/standalone.d.ts +34 -0
  97. package/package.json +25 -41
  98. package/src/Game/EffectManager.ts +20 -0
  99. package/src/Game/Event.ts +5 -0
  100. package/src/Game/Map.ts +10 -0
  101. package/src/Game/Object.ts +16 -0
  102. package/src/Game/Player.ts +5 -0
  103. package/src/Gui/Gui.ts +80 -533
  104. package/src/RpgClient.ts +9 -5
  105. package/src/RpgClientEngine.ts +135 -818
  106. package/src/components/character.ce +104 -0
  107. package/src/components/effects/animation.ce +19 -0
  108. package/src/components/effects/hit.ce +87 -0
  109. package/src/components/effects/index.ts +7 -0
  110. package/src/components/gui/dialogbox/index.ce +194 -0
  111. package/src/components/gui/dialogbox/itemMenu.ce +23 -0
  112. package/src/components/gui/dialogbox/selection.ce +67 -0
  113. package/src/components/gui/index.ts +5 -0
  114. package/src/components/index.ts +3 -0
  115. package/src/components/scenes/canvas.ce +51 -0
  116. package/src/components/scenes/draw-map.ce +56 -0
  117. package/src/components/scenes/element-map.ce +23 -0
  118. package/src/components/scenes/event-layer.ce +20 -0
  119. package/src/core/inject.ts +17 -0
  120. package/src/core/setup.ts +18 -0
  121. package/src/index.ts +13 -29
  122. package/src/module.ts +93 -0
  123. package/src/presets/index.ts +5 -0
  124. package/src/{Presets/AnimationSpritesheet.ts → presets/rmspritesheet.ts} +4 -5
  125. package/src/services/AbstractSocket.ts +14 -0
  126. package/src/services/loadMap.ts +33 -0
  127. package/src/services/mmorpg.ts +64 -0
  128. package/src/services/standalone.ts +101 -0
  129. package/src/types/canvas-engine.d.ts +26 -0
  130. package/tsconfig.json +8 -3
  131. package/vite.config.ts +34 -0
  132. package/CHANGELOG.md +0 -189
  133. package/LICENSE +0 -19
  134. package/browser/React-ece4b906.js +0 -195
  135. package/browser/index-ba657126.js +0 -44229
  136. package/browser/manifest.json +0 -21
  137. package/browser/rpg.client.js +0 -40
  138. package/browser/rpg.client.umd.cjs +0 -44456
  139. package/lib/Components/AbstractComponent.d.ts +0 -32
  140. package/lib/Components/AbstractComponent.js +0 -93
  141. package/lib/Components/AbstractComponent.js.map +0 -1
  142. package/lib/Components/BarComponent.d.ts +0 -21
  143. package/lib/Components/BarComponent.js +0 -169
  144. package/lib/Components/BarComponent.js.map +0 -1
  145. package/lib/Components/Component.d.ts +0 -124
  146. package/lib/Components/Component.js +0 -425
  147. package/lib/Components/Component.js.map +0 -1
  148. package/lib/Components/DebugComponent.d.ts +0 -11
  149. package/lib/Components/DebugComponent.js +0 -32
  150. package/lib/Components/DebugComponent.js.map +0 -1
  151. package/lib/Components/ImageComponent.d.ts +0 -11
  152. package/lib/Components/ImageComponent.js +0 -30
  153. package/lib/Components/ImageComponent.js.map +0 -1
  154. package/lib/Components/ShapeComponent.d.ts +0 -11
  155. package/lib/Components/ShapeComponent.js +0 -57
  156. package/lib/Components/ShapeComponent.js.map +0 -1
  157. package/lib/Components/TextComponent.d.ts +0 -11
  158. package/lib/Components/TextComponent.js +0 -35
  159. package/lib/Components/TextComponent.js.map +0 -1
  160. package/lib/Components/TileComponent.d.ts +0 -10
  161. package/lib/Components/TileComponent.js +0 -40
  162. package/lib/Components/TileComponent.js.map +0 -1
  163. package/lib/Effects/Animation.d.ts +0 -55
  164. package/lib/Effects/Animation.js +0 -233
  165. package/lib/Effects/Animation.js.map +0 -1
  166. package/lib/Effects/AnimationCharacter.d.ts +0 -7
  167. package/lib/Effects/AnimationCharacter.js +0 -9
  168. package/lib/Effects/AnimationCharacter.js.map +0 -1
  169. package/lib/Effects/Spinner.d.ts +0 -7
  170. package/lib/Effects/Spinner.js +0 -18
  171. package/lib/Effects/Spinner.js.map +0 -1
  172. package/lib/Effects/Timeline.d.ts +0 -151
  173. package/lib/Effects/Timeline.js +0 -369
  174. package/lib/Effects/Timeline.js.map +0 -1
  175. package/lib/Effects/TransitionScene.d.ts +0 -18
  176. package/lib/Effects/TransitionScene.js +0 -50
  177. package/lib/Effects/TransitionScene.js.map +0 -1
  178. package/lib/GameEngine.d.ts +0 -68
  179. package/lib/GameEngine.js +0 -254
  180. package/lib/GameEngine.js.map +0 -1
  181. package/lib/Gui/Gui.d.ts +0 -110
  182. package/lib/Gui/Gui.js +0 -489
  183. package/lib/Gui/Gui.js.map +0 -1
  184. package/lib/Gui/React.d.ts +0 -28
  185. package/lib/Gui/React.js +0 -147
  186. package/lib/Gui/React.js.map +0 -1
  187. package/lib/Gui/Vue.d.ts +0 -13
  188. package/lib/Gui/Vue.js +0 -114
  189. package/lib/Gui/Vue.js.map +0 -1
  190. package/lib/Interfaces/Character.d.ts +0 -6
  191. package/lib/Interfaces/Character.js +0 -2
  192. package/lib/Interfaces/Character.js.map +0 -1
  193. package/lib/Interfaces/Scene.d.ts +0 -10
  194. package/lib/Interfaces/Scene.js +0 -2
  195. package/lib/Interfaces/Scene.js.map +0 -1
  196. package/lib/KeyboardControls.d.ts +0 -367
  197. package/lib/KeyboardControls.js +0 -714
  198. package/lib/KeyboardControls.js.map +0 -1
  199. package/lib/Logger.d.ts +0 -1
  200. package/lib/Logger.js +0 -4
  201. package/lib/Logger.js.map +0 -1
  202. package/lib/Presets/AnimationSpritesheet.js +0 -39
  203. package/lib/Presets/AnimationSpritesheet.js.map +0 -1
  204. package/lib/Presets/Scene.d.ts +0 -3
  205. package/lib/Presets/Scene.js +0 -5
  206. package/lib/Presets/Scene.js.map +0 -1
  207. package/lib/Renderer.d.ts +0 -62
  208. package/lib/Renderer.js +0 -300
  209. package/lib/Renderer.js.map +0 -1
  210. package/lib/Resources.d.ts +0 -22
  211. package/lib/Resources.js +0 -38
  212. package/lib/Resources.js.map +0 -1
  213. package/lib/RpgClient.js +0 -2
  214. package/lib/RpgClient.js.map +0 -1
  215. package/lib/RpgClientEngine.d.ts +0 -257
  216. package/lib/RpgClientEngine.js +0 -677
  217. package/lib/RpgClientEngine.js.map +0 -1
  218. package/lib/Scene/EventLayer.d.ts +0 -4
  219. package/lib/Scene/EventLayer.js +0 -8
  220. package/lib/Scene/EventLayer.js.map +0 -1
  221. package/lib/Scene/Map.d.ts +0 -109
  222. package/lib/Scene/Map.js +0 -319
  223. package/lib/Scene/Map.js.map +0 -1
  224. package/lib/Scene/Scene.d.ts +0 -184
  225. package/lib/Scene/Scene.js +0 -250
  226. package/lib/Scene/Scene.js.map +0 -1
  227. package/lib/Scene/SceneData.d.ts +0 -4
  228. package/lib/Scene/SceneData.js +0 -8
  229. package/lib/Scene/SceneData.js.map +0 -1
  230. package/lib/Sound/RpgSound.d.ts +0 -11
  231. package/lib/Sound/RpgSound.js +0 -46
  232. package/lib/Sound/RpgSound.js.map +0 -1
  233. package/lib/Sound/Sound.d.ts +0 -78
  234. package/lib/Sound/Sound.js +0 -12
  235. package/lib/Sound/Sound.js.map +0 -1
  236. package/lib/Sound/Sounds.d.ts +0 -2
  237. package/lib/Sound/Sounds.js +0 -6
  238. package/lib/Sound/Sounds.js.map +0 -1
  239. package/lib/Sprite/Character.d.ts +0 -18
  240. package/lib/Sprite/Character.js +0 -131
  241. package/lib/Sprite/Character.js.map +0 -1
  242. package/lib/Sprite/Player.d.ts +0 -3
  243. package/lib/Sprite/Player.js +0 -4
  244. package/lib/Sprite/Player.js.map +0 -1
  245. package/lib/Sprite/Spritesheet.d.ts +0 -365
  246. package/lib/Sprite/Spritesheet.js +0 -13
  247. package/lib/Sprite/Spritesheet.js.map +0 -1
  248. package/lib/Sprite/Spritesheets.d.ts +0 -3
  249. package/lib/Sprite/Spritesheets.js +0 -6
  250. package/lib/Sprite/Spritesheets.js.map +0 -1
  251. package/lib/Tilemap/CommonLayer.d.ts +0 -10
  252. package/lib/Tilemap/CommonLayer.js +0 -17
  253. package/lib/Tilemap/CommonLayer.js.map +0 -1
  254. package/lib/Tilemap/ImageLayer.d.ts +0 -4
  255. package/lib/Tilemap/ImageLayer.js +0 -16
  256. package/lib/Tilemap/ImageLayer.js.map +0 -1
  257. package/lib/Tilemap/Tile.d.ts +0 -21
  258. package/lib/Tilemap/Tile.js +0 -67
  259. package/lib/Tilemap/Tile.js.map +0 -1
  260. package/lib/Tilemap/TileLayer.d.ts +0 -13
  261. package/lib/Tilemap/TileLayer.js +0 -122
  262. package/lib/Tilemap/TileLayer.js.map +0 -1
  263. package/lib/Tilemap/TileSet.d.ts +0 -7
  264. package/lib/Tilemap/TileSet.js +0 -24
  265. package/lib/Tilemap/TileSet.js.map +0 -1
  266. package/lib/Tilemap/index.d.ts +0 -28
  267. package/lib/Tilemap/index.js +0 -151
  268. package/lib/Tilemap/index.js.map +0 -1
  269. package/lib/clientEntryPoint.d.ts +0 -89
  270. package/lib/clientEntryPoint.js +0 -48
  271. package/lib/clientEntryPoint.js.map +0 -1
  272. package/lib/index.d.ts +0 -26
  273. package/lib/index.js +0 -27
  274. package/lib/index.js.map +0 -1
  275. package/lib/inject.d.ts +0 -23
  276. package/lib/inject.js +0 -30
  277. package/lib/inject.js.map +0 -1
  278. package/rpg.toml +0 -14
  279. package/src/Components/AbstractComponent.ts +0 -120
  280. package/src/Components/BarComponent.ts +0 -181
  281. package/src/Components/Component.ts +0 -515
  282. package/src/Components/DebugComponent.ts +0 -36
  283. package/src/Components/ImageComponent.ts +0 -30
  284. package/src/Components/ShapeComponent.ts +0 -64
  285. package/src/Components/TextComponent.ts +0 -33
  286. package/src/Components/TileComponent.ts +0 -43
  287. package/src/Effects/Animation.ts +0 -310
  288. package/src/Effects/AnimationCharacter.ts +0 -7
  289. package/src/Effects/Spinner.ts +0 -19
  290. package/src/Effects/Timeline.ts +0 -378
  291. package/src/Effects/TransitionScene.ts +0 -59
  292. package/src/GameEngine.ts +0 -289
  293. package/src/Gui/React.ts +0 -193
  294. package/src/Gui/Vue.ts +0 -154
  295. package/src/Interfaces/Character.ts +0 -7
  296. package/src/Interfaces/Scene.ts +0 -9
  297. package/src/KeyboardControls.ts +0 -748
  298. package/src/Logger.ts +0 -3
  299. package/src/Presets/Scene.ts +0 -3
  300. package/src/Renderer.ts +0 -334
  301. package/src/Resources.ts +0 -39
  302. package/src/Scene/EventLayer.ts +0 -9
  303. package/src/Scene/Map.ts +0 -402
  304. package/src/Scene/Scene.ts +0 -305
  305. package/src/Scene/SceneData.ts +0 -13
  306. package/src/Sound/RpgSound.ts +0 -50
  307. package/src/Sound/Sound.ts +0 -91
  308. package/src/Sound/Sounds.ts +0 -7
  309. package/src/Sprite/Character.ts +0 -157
  310. package/src/Sprite/Player.ts +0 -3
  311. package/src/Sprite/Spritesheet.ts +0 -392
  312. package/src/Sprite/Spritesheets.ts +0 -8
  313. package/src/Tilemap/CommonLayer.ts +0 -20
  314. package/src/Tilemap/ImageLayer.ts +0 -20
  315. package/src/Tilemap/Tile.ts +0 -80
  316. package/src/Tilemap/TileLayer.ts +0 -142
  317. package/src/Tilemap/TileSet.ts +0 -40
  318. package/src/Tilemap/index.ts +0 -175
  319. package/src/clientEntryPoint.ts +0 -150
  320. package/src/inject.ts +0 -34
  321. package/src/types/howler.d.ts +0 -73
@@ -1 +0,0 @@
1
- {"version":3,"file":"RpgClientEngine.js","sourceRoot":"","sources":["../src/RpgClientEngine.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { Container } from "pixi.js";
2
- export declare class EventLayer extends Container {
3
- constructor();
4
- }
@@ -1,8 +0,0 @@
1
- import { Container } from "pixi.js";
2
- export class EventLayer extends Container {
3
- constructor() {
4
- super();
5
- this.sortableChildren = true;
6
- }
7
- }
8
- //# sourceMappingURL=EventLayer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventLayer.js","sourceRoot":"","sources":["../../src/Scene/EventLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,OAAO,UAAW,SAAQ,SAAS;IACrC;QACI,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAA;IAChC,CAAC;CACJ"}
@@ -1,109 +0,0 @@
1
- import { RpgShape, RpgCommonPlayer, InjectContext } from '@rpgjs/common';
2
- import TileMap from '../Tilemap/index.js';
3
- import { type Viewport } from 'pixi-viewport';
4
- import { Scene, SceneSpriteLogic } from './Scene.js';
5
- import { TiledMap } from '@rpgjs/tiled';
6
- import { RpgComponent } from '../Components/Component.js';
7
- import { type CameraOptions } from '@rpgjs/types';
8
- import { Container, IRenderer, DisplayObjectEvents } from 'pixi.js';
9
- interface MapObject extends TiledMap {
10
- id: number;
11
- sounds: string | string[] | undefined;
12
- }
13
- export declare class SceneMap extends Scene {
14
- protected context: InjectContext;
15
- private renderer;
16
- private options;
17
- static readonly EVENTS_LAYER_DEFAULT: string;
18
- /**
19
- * Get the tilemap
20
- *
21
- * @prop {PIXI.Container} [tilemap]
22
- * @memberof RpgSceneMap
23
- * */
24
- tilemap: TileMap;
25
- /**
26
- * The viewport of the map
27
- *
28
- * It automatically follows the sprite representing the player but you can attach it to something else
29
- *
30
- * > Do not change the size of the viewport
31
- *
32
- * @prop {PIXI.Viewport} viewport
33
- * @memberof RpgSceneMap
34
- * */
35
- viewport: Viewport | undefined;
36
- private players;
37
- private isLoaded;
38
- private gameMap;
39
- private eventsLayers;
40
- private defaultLayer;
41
- shapes: {};
42
- constructor(context: InjectContext, renderer: IRenderer, options?: {
43
- screenWidth?: number;
44
- screenHeight?: number;
45
- drawMap?: boolean;
46
- });
47
- private constructMethods;
48
- createEventLayers(map: MapObject): Container[];
49
- getEventLayer(objectName?: string): Container | undefined;
50
- private updateTilesOverlay;
51
- onUpdateObject(logic: SceneSpriteLogic, sprite: RpgComponent, moving: boolean): RpgComponent;
52
- addObject(obj: RpgCommonPlayer | RpgShape, id: string): RpgComponent;
53
- removeObject(id: string): void;
54
- cameraFollowSprite(id: string, options?: CameraOptions): void;
55
- /**
56
- * Listen to the events of the smile on the stage
57
- *
58
- * @title Listen mouse event
59
- * @method on(eventName,callback)
60
- * @since 3.0.0-beta.4
61
- * @param {string} eventName Name of the event (see PIXI documentation). Name often used in the codes
62
- * - click
63
- * - mousedown
64
- * - mouseup
65
- * - mousemove
66
- * - pointerdown
67
- * - pointermove
68
- * - pointerup
69
- * - (etc...)
70
- * @param {(position: { x: number, y: number }, ev?: PIXI.InteractionEvent ) => any} callback
71
- * @example
72
- * ```ts
73
- * sceneMap.on('pointerdown', (position) => {
74
- * console.log(position)
75
- * })
76
- * ```
77
- * @returns {void}
78
- * @memberof RpgSceneMap
79
- */
80
- on(eventName: keyof DisplayObjectEvents, cb: (position: {
81
- x: number;
82
- y: number;
83
- }, ev?: any) => any): void;
84
- }
85
- export interface SceneMap {
86
- data: any;
87
- tileWidth: number;
88
- tileHeight: number;
89
- layers: any[];
90
- widthPx: number;
91
- heightPx: number;
92
- zTileHeight: number;
93
- getShapes(): RpgShape[];
94
- getShape(name: string): RpgShape | undefined;
95
- getPositionByShape(filter: (shape: RpgShape) => {}): {
96
- x: number;
97
- y: number;
98
- z: number;
99
- } | null;
100
- getTileIndex(x: number, y: number, [z]?: [number]): number;
101
- getTileByIndex(tileIndex: number, zPlayer?: [number, number]): any;
102
- getTileOriginPosition(x: number, y: number): {
103
- x: number;
104
- y: number;
105
- };
106
- getTileByPosition(x: number, y: number, z?: [number, number]): any;
107
- getLayerByName(name: string): any;
108
- }
109
- export {};
package/lib/Scene/Map.js DELETED
@@ -1,319 +0,0 @@
1
- import { RpgCommonMap, RpgPlugin, HookClient, Utils, RpgCommonPlayer } from '@rpgjs/common';
2
- import TileMap from '../Tilemap/index.js';
3
- import * as _PixiViewport from 'pixi-viewport';
4
- import { Scene } from './Scene.js';
5
- import { spritesheets } from '../Sprite/Spritesheets.js';
6
- import { RpgSound } from '../Sound/RpgSound.js';
7
- import { TiledLayerType } from '@rpgjs/tiled';
8
- import { RpgComponent } from '../Components/Component.js';
9
- import { Assets, Container, Point } from 'pixi.js';
10
- import { EventLayer } from './EventLayer.js';
11
- // The export was made in this way to ensure compatibility with unit tests (https://github.com/RSamaium/RPG-JS/issues/240)
12
- const { Viewport: PixiViewport } = _PixiViewport;
13
- class SceneMap extends Scene {
14
- constructor(context, renderer, options = {}) {
15
- super(context);
16
- this.context = context;
17
- this.renderer = renderer;
18
- this.options = options;
19
- this.players = {};
20
- this.isLoaded = false;
21
- this.eventsLayers = {};
22
- this.shapes = {};
23
- if (options.drawMap === undefined)
24
- this.options.drawMap = true;
25
- this.onInit();
26
- }
27
- constructMethods() {
28
- [
29
- 'getTileIndex',
30
- 'getTileByIndex',
31
- 'getTileOriginPosition',
32
- 'getTileByPosition',
33
- 'getLayerByName'
34
- ].forEach(method => this[method] = this.gameMap[method].bind(this.gameMap));
35
- [
36
- 'heightPx',
37
- 'widthPx',
38
- 'zTileHeight',
39
- 'tileHeight',
40
- 'tileWidth',
41
- 'data',
42
- 'layers'
43
- ].forEach(prop => this[prop] = this.gameMap[prop]);
44
- }
45
- /** @internal */
46
- async load(obj, prevObj, isUpdate = false) {
47
- let { sounds } = obj;
48
- const { clientEngine } = this.game;
49
- if (sounds) {
50
- if (!Utils.isArray(sounds))
51
- sounds = obj.sounds = [sounds];
52
- }
53
- this.gameMap = new RpgCommonMap();
54
- this.gameMap.load(obj);
55
- this.gameMap.clearCacheTilesets();
56
- this.constructMethods();
57
- RpgCommonMap.bufferClient.set(obj.id, this.gameMap);
58
- this.tilemap = new TileMap(this.context, this.gameMap.getData());
59
- // TODO: Remove this
60
- Assets.reset();
61
- let nbLoad = 0;
62
- const objects = this.game.world.getObjectsOfGroup();
63
- for (let { object } of Object.values(objects)) {
64
- if (Utils.isInstanceOf(object, RpgCommonPlayer) && object) {
65
- object.updateInVirtualGrid();
66
- }
67
- }
68
- const assets = [];
69
- for (let tileset of this.tilemap.tilesets) {
70
- let spritesheet = spritesheets.get(tileset.name);
71
- if (!spritesheet) {
72
- clientEngine.addSpriteSheet(tileset.image.source, tileset.name);
73
- spritesheet = spritesheets.get(tileset.name);
74
- }
75
- if (spritesheet?.resource) {
76
- continue;
77
- }
78
- Assets.add(tileset.name, spritesheet.image);
79
- assets.push(tileset.name);
80
- nbLoad++;
81
- }
82
- if (nbLoad > 0) {
83
- const assetsLoaded = await Assets.load(assets);
84
- for (let assetName in assetsLoaded) {
85
- const spritesheet = spritesheets.get(assetName);
86
- if (spritesheet)
87
- spritesheet.resource = assetsLoaded[assetName];
88
- }
89
- }
90
- RpgPlugin.emit(HookClient.SceneMapLoading, Assets);
91
- this.tilemap.load({
92
- drawTiles: this.options.drawMap,
93
- isUpdate
94
- });
95
- this.viewport = new PixiViewport({
96
- screenWidth: this.options.screenWidth,
97
- screenHeight: this.options.screenHeight,
98
- worldWidth: obj.width * obj.tilewidth,
99
- worldHeight: obj.height * obj.tileheight,
100
- noTicker: true,
101
- events: this.renderer.events
102
- });
103
- this.tilemap.addChild(this.animationLayer);
104
- this.viewport.clamp({ direction: 'all' });
105
- this.viewport.addChild(this.tilemap, ...this.createEventLayers(obj));
106
- this.isLoaded = true;
107
- if (prevObj.sounds && prevObj.sounds instanceof Array) {
108
- prevObj.sounds.forEach(soundId => {
109
- const continueSound = (obj.sounds || []).find(id => id == soundId);
110
- if (!continueSound)
111
- RpgSound.stop(soundId);
112
- });
113
- }
114
- if (sounds)
115
- sounds.forEach(soundId => RpgSound.play(soundId));
116
- if (this.onLoad)
117
- this.onLoad();
118
- return this.viewport;
119
- }
120
- createEventLayers(map) {
121
- const containers = [];
122
- map.layers.forEach((layerData) => {
123
- if (layerData.type !== TiledLayerType.ObjectGroup)
124
- return;
125
- if (this.eventsLayers[layerData.name]) {
126
- containers.push(this.eventsLayers[layerData.name]);
127
- return;
128
- }
129
- const layer = new EventLayer();
130
- this.defaultLayer = this.eventsLayers[layerData.name] = layer;
131
- containers.push(layer);
132
- });
133
- if (containers.length == 0) {
134
- if (!this.defaultLayer) {
135
- this.defaultLayer = new EventLayer();
136
- }
137
- containers.push(this.defaultLayer);
138
- }
139
- this.cameraFollowSprite(this.game.playerId);
140
- return containers;
141
- }
142
- getEventLayer(objectName) {
143
- for (let layerData of this.data.layers) {
144
- if (layerData.type != TiledLayerType.ObjectGroup) {
145
- continue;
146
- }
147
- if (!layerData.objects) {
148
- continue;
149
- }
150
- for (let object of layerData.objects) {
151
- if (object.name == objectName) {
152
- return this.eventsLayers[layerData.name];
153
- }
154
- }
155
- }
156
- return this.defaultLayer;
157
- }
158
- /** @internal */
159
- changeTile(x, y, layers) {
160
- for (let layerName in layers) {
161
- const layerInfo = layers[layerName];
162
- this.gameMap?.setTile(x, y, layerName, layerInfo);
163
- this.tilemap.changeTile(x, y, layerName);
164
- }
165
- }
166
- /** @internal */
167
- draw(t, deltaTime, deltaRatio, frame) {
168
- if (!this.isLoaded) {
169
- return;
170
- }
171
- super.draw(t, deltaTime, deltaRatio, frame);
172
- this.tilemap.drawAnimateTile(frame);
173
- this.viewport?.update(deltaTime);
174
- }
175
- // @internal
176
- updateTilesOverlayAllSprites() {
177
- const objects = this.objects;
178
- for (let [id, sprite] of objects) {
179
- this.updateTilesOverlay(sprite);
180
- }
181
- }
182
- updateTilesOverlay(sprite) {
183
- if (!this.gameMap)
184
- return sprite;
185
- const { tileWidth, tileHeight } = this.gameMap;
186
- const { tilesOverlay } = sprite;
187
- const bounds = sprite.parent.getLocalBounds();
188
- const width = Math.ceil(bounds.width / tileWidth) * tileWidth;
189
- const height = Math.ceil(bounds.height / tileHeight) * tileHeight;
190
- const _x = bounds.x;
191
- const _y = bounds.y;
192
- const addTile = (x, y) => {
193
- const tiles = this.tilemap.createOverlayTiles(x, y, sprite);
194
- if (tiles.length)
195
- tilesOverlay.addChild(...tiles);
196
- };
197
- tilesOverlay.removeChildren();
198
- for (let i = _x; i <= _x + width; i += tileWidth) {
199
- for (let j = _y; j <= _y + height; j += tileHeight) {
200
- addTile(i, j);
201
- }
202
- }
203
- return sprite;
204
- }
205
- onUpdateObject(logic, sprite, moving) {
206
- const { paramsChanged } = logic;
207
- if (!this.gameMap)
208
- return sprite;
209
- if (moving || (paramsChanged && (paramsChanged.width || paramsChanged.height))) {
210
- this.updateTilesOverlay(sprite);
211
- }
212
- return sprite;
213
- }
214
- /** @internal */
215
- setPlayerPosition(id, { x, y }) {
216
- this.players[id].x = x;
217
- this.players[id].y = y;
218
- }
219
- /** @internal */
220
- updateScene(obj) { }
221
- addObject(obj, id) {
222
- const wrapper = new Container();
223
- const inner = new Container();
224
- const tilesOverlay = new Container();
225
- const component = new RpgComponent(obj, this);
226
- component.tilesOverlay = tilesOverlay;
227
- inner.addChild(component);
228
- wrapper.addChild(inner, tilesOverlay);
229
- this.objects.set(id, component);
230
- this.getEventLayer(obj.id)?.addChild(wrapper);
231
- if (component.isCurrentPlayer)
232
- this.cameraFollowSprite(id);
233
- component.onInit();
234
- return component;
235
- }
236
- removeObject(id) {
237
- let sprite = this.objects.get(id);
238
- if (sprite) {
239
- if (!sprite.animationIsPlaying) {
240
- this.objects.delete(id);
241
- RpgPlugin.emit(HookClient.SceneRemoveSprite, [this, sprite], true);
242
- RpgPlugin.emit(HookClient.RemoveSprite, sprite);
243
- sprite.destroy();
244
- }
245
- else {
246
- sprite.visible = false;
247
- }
248
- }
249
- }
250
- getShape(name) {
251
- return this.game.getShape(name)?.object;
252
- }
253
- getShapes() {
254
- const shapes = Object.values(this.game.getShapes());
255
- return shapes.map(shape => shape.object);
256
- }
257
- cameraFollowSprite(id, options = {}) {
258
- const sprite = this.getSprite(id);
259
- const follow = () => {
260
- if (sprite)
261
- this.viewport?.follow(sprite);
262
- };
263
- if (options.smoothMove) {
264
- this.viewport?.plugins.remove('follow');
265
- let moreOptions = {};
266
- if (typeof options.smoothMove != 'boolean') {
267
- moreOptions = options.smoothMove;
268
- }
269
- this.viewport?.animate({
270
- position: new Point(sprite?.x, sprite?.y),
271
- ...moreOptions,
272
- callbackOnComplete: follow
273
- });
274
- }
275
- else {
276
- follow();
277
- }
278
- }
279
- /**
280
- * Listen to the events of the smile on the stage
281
- *
282
- * @title Listen mouse event
283
- * @method on(eventName,callback)
284
- * @since 3.0.0-beta.4
285
- * @param {string} eventName Name of the event (see PIXI documentation). Name often used in the codes
286
- * - click
287
- * - mousedown
288
- * - mouseup
289
- * - mousemove
290
- * - pointerdown
291
- * - pointermove
292
- * - pointerup
293
- * - (etc...)
294
- * @param {(position: { x: number, y: number }, ev?: PIXI.InteractionEvent ) => any} callback
295
- * @example
296
- * ```ts
297
- * sceneMap.on('pointerdown', (position) => {
298
- * console.log(position)
299
- * })
300
- * ```
301
- * @returns {void}
302
- * @memberof RpgSceneMap
303
- */
304
- on(eventName, cb) {
305
- if (!this.viewport)
306
- return;
307
- this.viewport.eventMode = 'static';
308
- this.viewport.on(eventName, (...args) => {
309
- const ev = args[0];
310
- const pos = ev.getLocalPosition(this.viewport);
311
- if (ev.defaultPrevented)
312
- return;
313
- cb(pos, ev);
314
- });
315
- }
316
- }
317
- SceneMap.EVENTS_LAYER_DEFAULT = 'events-layer-default';
318
- export { SceneMap };
319
- //# sourceMappingURL=Map.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/Scene/Map.ts"],"names":[],"mappings":"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"}