@rpgjs/client 4.3.0 → 5.0.0-alpha.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 (323) 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 +316 -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 +91 -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/index39.js +20 -0
  79. package/dist/index39.js.map +1 -0
  80. package/dist/index4.js +54 -0
  81. package/dist/index4.js.map +1 -0
  82. package/dist/index5.js +15 -0
  83. package/dist/index5.js.map +1 -0
  84. package/dist/index6.js +17 -0
  85. package/dist/index6.js.map +1 -0
  86. package/dist/index7.js +31 -0
  87. package/dist/index7.js.map +1 -0
  88. package/dist/index8.js +90 -0
  89. package/dist/index8.js.map +1 -0
  90. package/dist/index9.js +76 -0
  91. package/dist/index9.js.map +1 -0
  92. package/dist/module.d.ts +14 -0
  93. package/dist/presets/index.d.ts +22 -0
  94. package/{lib/Presets/AnimationSpritesheet.d.ts → dist/presets/rmspritesheet.d.ts} +6 -2
  95. package/dist/services/AbstractSocket.d.ts +15 -0
  96. package/dist/services/loadMap.d.ts +14 -0
  97. package/dist/services/mmorpg.d.ts +32 -0
  98. package/dist/services/standalone.d.ts +34 -0
  99. package/package.json +25 -41
  100. package/src/Game/EffectManager.ts +20 -0
  101. package/src/Game/Event.ts +5 -0
  102. package/src/Game/Map.ts +10 -0
  103. package/src/Game/Object.ts +16 -0
  104. package/src/Game/Player.ts +5 -0
  105. package/src/Gui/Gui.ts +80 -533
  106. package/src/RpgClient.ts +9 -5
  107. package/src/RpgClientEngine.ts +135 -818
  108. package/src/components/character.ce +104 -0
  109. package/src/components/effects/animation.ce +19 -0
  110. package/src/components/effects/hit.ce +87 -0
  111. package/src/components/effects/index.ts +7 -0
  112. package/src/components/gui/dialogbox/index.ce +194 -0
  113. package/src/components/gui/dialogbox/itemMenu.ce +23 -0
  114. package/src/components/gui/dialogbox/selection.ce +67 -0
  115. package/src/components/gui/index.ts +5 -0
  116. package/src/components/index.ts +3 -0
  117. package/src/components/scenes/canvas.ce +51 -0
  118. package/src/components/scenes/draw-map.ce +56 -0
  119. package/src/components/scenes/element-map.ce +23 -0
  120. package/src/components/scenes/event-layer.ce +20 -0
  121. package/src/core/inject.ts +17 -0
  122. package/src/core/setup.ts +18 -0
  123. package/src/index.ts +13 -29
  124. package/src/module.ts +93 -0
  125. package/src/presets/index.ts +5 -0
  126. package/src/{Presets/AnimationSpritesheet.ts → presets/rmspritesheet.ts} +4 -5
  127. package/src/services/AbstractSocket.ts +14 -0
  128. package/src/services/loadMap.ts +33 -0
  129. package/src/services/mmorpg.ts +64 -0
  130. package/src/services/standalone.ts +101 -0
  131. package/src/types/canvas-engine.d.ts +26 -0
  132. package/tsconfig.json +8 -3
  133. package/vite.config.ts +34 -0
  134. package/CHANGELOG.md +0 -189
  135. package/LICENSE +0 -19
  136. package/browser/React-ece4b906.js +0 -195
  137. package/browser/index-ba657126.js +0 -44229
  138. package/browser/manifest.json +0 -21
  139. package/browser/rpg.client.js +0 -40
  140. package/browser/rpg.client.umd.cjs +0 -44456
  141. package/lib/Components/AbstractComponent.d.ts +0 -32
  142. package/lib/Components/AbstractComponent.js +0 -93
  143. package/lib/Components/AbstractComponent.js.map +0 -1
  144. package/lib/Components/BarComponent.d.ts +0 -21
  145. package/lib/Components/BarComponent.js +0 -169
  146. package/lib/Components/BarComponent.js.map +0 -1
  147. package/lib/Components/Component.d.ts +0 -124
  148. package/lib/Components/Component.js +0 -425
  149. package/lib/Components/Component.js.map +0 -1
  150. package/lib/Components/DebugComponent.d.ts +0 -11
  151. package/lib/Components/DebugComponent.js +0 -32
  152. package/lib/Components/DebugComponent.js.map +0 -1
  153. package/lib/Components/ImageComponent.d.ts +0 -11
  154. package/lib/Components/ImageComponent.js +0 -30
  155. package/lib/Components/ImageComponent.js.map +0 -1
  156. package/lib/Components/ShapeComponent.d.ts +0 -11
  157. package/lib/Components/ShapeComponent.js +0 -57
  158. package/lib/Components/ShapeComponent.js.map +0 -1
  159. package/lib/Components/TextComponent.d.ts +0 -11
  160. package/lib/Components/TextComponent.js +0 -35
  161. package/lib/Components/TextComponent.js.map +0 -1
  162. package/lib/Components/TileComponent.d.ts +0 -10
  163. package/lib/Components/TileComponent.js +0 -40
  164. package/lib/Components/TileComponent.js.map +0 -1
  165. package/lib/Effects/Animation.d.ts +0 -55
  166. package/lib/Effects/Animation.js +0 -233
  167. package/lib/Effects/Animation.js.map +0 -1
  168. package/lib/Effects/AnimationCharacter.d.ts +0 -7
  169. package/lib/Effects/AnimationCharacter.js +0 -9
  170. package/lib/Effects/AnimationCharacter.js.map +0 -1
  171. package/lib/Effects/Spinner.d.ts +0 -7
  172. package/lib/Effects/Spinner.js +0 -18
  173. package/lib/Effects/Spinner.js.map +0 -1
  174. package/lib/Effects/Timeline.d.ts +0 -151
  175. package/lib/Effects/Timeline.js +0 -369
  176. package/lib/Effects/Timeline.js.map +0 -1
  177. package/lib/Effects/TransitionScene.d.ts +0 -18
  178. package/lib/Effects/TransitionScene.js +0 -50
  179. package/lib/Effects/TransitionScene.js.map +0 -1
  180. package/lib/GameEngine.d.ts +0 -68
  181. package/lib/GameEngine.js +0 -254
  182. package/lib/GameEngine.js.map +0 -1
  183. package/lib/Gui/Gui.d.ts +0 -110
  184. package/lib/Gui/Gui.js +0 -489
  185. package/lib/Gui/Gui.js.map +0 -1
  186. package/lib/Gui/React.d.ts +0 -28
  187. package/lib/Gui/React.js +0 -147
  188. package/lib/Gui/React.js.map +0 -1
  189. package/lib/Gui/Vue.d.ts +0 -13
  190. package/lib/Gui/Vue.js +0 -114
  191. package/lib/Gui/Vue.js.map +0 -1
  192. package/lib/Interfaces/Character.d.ts +0 -6
  193. package/lib/Interfaces/Character.js +0 -2
  194. package/lib/Interfaces/Character.js.map +0 -1
  195. package/lib/Interfaces/Scene.d.ts +0 -10
  196. package/lib/Interfaces/Scene.js +0 -2
  197. package/lib/Interfaces/Scene.js.map +0 -1
  198. package/lib/KeyboardControls.d.ts +0 -367
  199. package/lib/KeyboardControls.js +0 -714
  200. package/lib/KeyboardControls.js.map +0 -1
  201. package/lib/Logger.d.ts +0 -1
  202. package/lib/Logger.js +0 -4
  203. package/lib/Logger.js.map +0 -1
  204. package/lib/Presets/AnimationSpritesheet.js +0 -39
  205. package/lib/Presets/AnimationSpritesheet.js.map +0 -1
  206. package/lib/Presets/Scene.d.ts +0 -3
  207. package/lib/Presets/Scene.js +0 -5
  208. package/lib/Presets/Scene.js.map +0 -1
  209. package/lib/Renderer.d.ts +0 -62
  210. package/lib/Renderer.js +0 -300
  211. package/lib/Renderer.js.map +0 -1
  212. package/lib/Resources.d.ts +0 -22
  213. package/lib/Resources.js +0 -38
  214. package/lib/Resources.js.map +0 -1
  215. package/lib/RpgClient.js +0 -2
  216. package/lib/RpgClient.js.map +0 -1
  217. package/lib/RpgClientEngine.d.ts +0 -257
  218. package/lib/RpgClientEngine.js +0 -677
  219. package/lib/RpgClientEngine.js.map +0 -1
  220. package/lib/Scene/EventLayer.d.ts +0 -4
  221. package/lib/Scene/EventLayer.js +0 -8
  222. package/lib/Scene/EventLayer.js.map +0 -1
  223. package/lib/Scene/Map.d.ts +0 -109
  224. package/lib/Scene/Map.js +0 -319
  225. package/lib/Scene/Map.js.map +0 -1
  226. package/lib/Scene/Scene.d.ts +0 -184
  227. package/lib/Scene/Scene.js +0 -250
  228. package/lib/Scene/Scene.js.map +0 -1
  229. package/lib/Scene/SceneData.d.ts +0 -4
  230. package/lib/Scene/SceneData.js +0 -8
  231. package/lib/Scene/SceneData.js.map +0 -1
  232. package/lib/Sound/RpgSound.d.ts +0 -11
  233. package/lib/Sound/RpgSound.js +0 -46
  234. package/lib/Sound/RpgSound.js.map +0 -1
  235. package/lib/Sound/Sound.d.ts +0 -78
  236. package/lib/Sound/Sound.js +0 -12
  237. package/lib/Sound/Sound.js.map +0 -1
  238. package/lib/Sound/Sounds.d.ts +0 -2
  239. package/lib/Sound/Sounds.js +0 -6
  240. package/lib/Sound/Sounds.js.map +0 -1
  241. package/lib/Sprite/Character.d.ts +0 -18
  242. package/lib/Sprite/Character.js +0 -131
  243. package/lib/Sprite/Character.js.map +0 -1
  244. package/lib/Sprite/Player.d.ts +0 -3
  245. package/lib/Sprite/Player.js +0 -4
  246. package/lib/Sprite/Player.js.map +0 -1
  247. package/lib/Sprite/Spritesheet.d.ts +0 -365
  248. package/lib/Sprite/Spritesheet.js +0 -13
  249. package/lib/Sprite/Spritesheet.js.map +0 -1
  250. package/lib/Sprite/Spritesheets.d.ts +0 -3
  251. package/lib/Sprite/Spritesheets.js +0 -6
  252. package/lib/Sprite/Spritesheets.js.map +0 -1
  253. package/lib/Tilemap/CommonLayer.d.ts +0 -10
  254. package/lib/Tilemap/CommonLayer.js +0 -17
  255. package/lib/Tilemap/CommonLayer.js.map +0 -1
  256. package/lib/Tilemap/ImageLayer.d.ts +0 -4
  257. package/lib/Tilemap/ImageLayer.js +0 -16
  258. package/lib/Tilemap/ImageLayer.js.map +0 -1
  259. package/lib/Tilemap/Tile.d.ts +0 -21
  260. package/lib/Tilemap/Tile.js +0 -67
  261. package/lib/Tilemap/Tile.js.map +0 -1
  262. package/lib/Tilemap/TileLayer.d.ts +0 -13
  263. package/lib/Tilemap/TileLayer.js +0 -122
  264. package/lib/Tilemap/TileLayer.js.map +0 -1
  265. package/lib/Tilemap/TileSet.d.ts +0 -7
  266. package/lib/Tilemap/TileSet.js +0 -24
  267. package/lib/Tilemap/TileSet.js.map +0 -1
  268. package/lib/Tilemap/index.d.ts +0 -28
  269. package/lib/Tilemap/index.js +0 -151
  270. package/lib/Tilemap/index.js.map +0 -1
  271. package/lib/clientEntryPoint.d.ts +0 -89
  272. package/lib/clientEntryPoint.js +0 -48
  273. package/lib/clientEntryPoint.js.map +0 -1
  274. package/lib/index.d.ts +0 -26
  275. package/lib/index.js +0 -27
  276. package/lib/index.js.map +0 -1
  277. package/lib/inject.d.ts +0 -23
  278. package/lib/inject.js +0 -30
  279. package/lib/inject.js.map +0 -1
  280. package/rpg.toml +0 -14
  281. package/src/Components/AbstractComponent.ts +0 -120
  282. package/src/Components/BarComponent.ts +0 -181
  283. package/src/Components/Component.ts +0 -515
  284. package/src/Components/DebugComponent.ts +0 -36
  285. package/src/Components/ImageComponent.ts +0 -30
  286. package/src/Components/ShapeComponent.ts +0 -64
  287. package/src/Components/TextComponent.ts +0 -33
  288. package/src/Components/TileComponent.ts +0 -43
  289. package/src/Effects/Animation.ts +0 -310
  290. package/src/Effects/AnimationCharacter.ts +0 -7
  291. package/src/Effects/Spinner.ts +0 -19
  292. package/src/Effects/Timeline.ts +0 -378
  293. package/src/Effects/TransitionScene.ts +0 -59
  294. package/src/GameEngine.ts +0 -289
  295. package/src/Gui/React.ts +0 -193
  296. package/src/Gui/Vue.ts +0 -154
  297. package/src/Interfaces/Character.ts +0 -7
  298. package/src/Interfaces/Scene.ts +0 -9
  299. package/src/KeyboardControls.ts +0 -748
  300. package/src/Logger.ts +0 -3
  301. package/src/Presets/Scene.ts +0 -3
  302. package/src/Renderer.ts +0 -334
  303. package/src/Resources.ts +0 -39
  304. package/src/Scene/EventLayer.ts +0 -9
  305. package/src/Scene/Map.ts +0 -402
  306. package/src/Scene/Scene.ts +0 -305
  307. package/src/Scene/SceneData.ts +0 -13
  308. package/src/Sound/RpgSound.ts +0 -50
  309. package/src/Sound/Sound.ts +0 -91
  310. package/src/Sound/Sounds.ts +0 -7
  311. package/src/Sprite/Character.ts +0 -157
  312. package/src/Sprite/Player.ts +0 -3
  313. package/src/Sprite/Spritesheet.ts +0 -392
  314. package/src/Sprite/Spritesheets.ts +0 -8
  315. package/src/Tilemap/CommonLayer.ts +0 -20
  316. package/src/Tilemap/ImageLayer.ts +0 -20
  317. package/src/Tilemap/Tile.ts +0 -80
  318. package/src/Tilemap/TileLayer.ts +0 -142
  319. package/src/Tilemap/TileSet.ts +0 -40
  320. package/src/Tilemap/index.ts +0 -175
  321. package/src/clientEntryPoint.ts +0 -150
  322. package/src/inject.ts +0 -34
  323. package/src/types/howler.d.ts +0 -73
package/LICENSE DELETED
@@ -1,19 +0,0 @@
1
- Copyright (C) 2020 by Samuel Ronce
2
-
3
- Permission is hereby granted, free of charge, to any person obtaining a copy
4
- of this software and associated documentation files (the "Software"), to deal
5
- in the Software without restriction, including without limitation the rights
6
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
- copies of the Software, and to permit persons to whom the Software is
8
- furnished to do so, subject to the following conditions:
9
-
10
- The above copyright notice and this permission notice shall be included in
11
- all copies or substantial portions of the Software.
12
-
13
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
- THE SOFTWARE.
@@ -1,195 +0,0 @@
1
- import require$$0 from "react-dom";
2
- import { useCallback, useSyncExternalStore, createContext, useState, useContext, useEffect, useRef, createElement } from "react";
3
- import { i as inject, R as RpgRenderer, E as EVENTS_MAP } from "./index-ba657126.js";
4
- import { map, tap, BehaviorSubject } from "rxjs";
5
- import { RpgPlugin } from "@rpgjs/common";
6
- import "vue";
7
- var createRoot;
8
- var m = require$$0;
9
- if ({}.NODE_ENV === "production") {
10
- createRoot = m.createRoot;
11
- m.hydrateRoot;
12
- } else {
13
- var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
14
- createRoot = function(c, o) {
15
- i.usingClientEntryPoint = true;
16
- try {
17
- return m.createRoot(c, o);
18
- } finally {
19
- i.usingClientEntryPoint = false;
20
- }
21
- };
22
- }
23
- function listenKeys(store, keys, listener) {
24
- let keysSet = /* @__PURE__ */ new Set([...keys, void 0]);
25
- return store.listen((value, changed) => {
26
- if (keysSet.has(changed)) {
27
- listener(value, changed);
28
- }
29
- });
30
- }
31
- function useStore(store, opts = {}) {
32
- let subscribe = useCallback(
33
- (onChange) => opts.keys ? listenKeys(store, opts.keys, onChange) : store.listen(onChange),
34
- [opts.keys, store]
35
- );
36
- let get = store.get.bind(store);
37
- return useSyncExternalStore(subscribe, get, get);
38
- }
39
- const RpgReactContext = createContext({});
40
- const useObjects = () => {
41
- const [objects, setObjects] = useState([]);
42
- const {
43
- rpgObjects
44
- } = useContext(RpgReactContext);
45
- useEffect(() => {
46
- rpgObjects.pipe(map((objects2) => Object.values(objects2).map((obj) => obj.object))).subscribe(setObjects);
47
- }, []);
48
- return objects;
49
- };
50
- const useCurrentPlayer = () => {
51
- const {
52
- rpgCurrentPlayer
53
- } = useContext(RpgReactContext);
54
- const currentPlayerRef = useRef({});
55
- let _onChanges;
56
- const subscribe = (onChanges) => {
57
- _onChanges = onChanges;
58
- return () => {
59
- _onChanges = null;
60
- };
61
- };
62
- useEffect(() => {
63
- const ob$ = rpgCurrentPlayer.pipe(map((player) => player.object), tap((player) => currentPlayerRef.current = player));
64
- const subscription = ob$.subscribe(() => {
65
- _onChanges == null ? void 0 : _onChanges();
66
- });
67
- return () => subscription.unsubscribe();
68
- }, []);
69
- return useSyncExternalStore(subscribe, () => currentPlayerRef.current);
70
- };
71
- const useEventPropagator = () => {
72
- const ref = useRef(null);
73
- useEffect(() => {
74
- if (ref.current) {
75
- const element = ref.current;
76
- const eventListeners = {};
77
- const renderer = inject(RpgRenderer);
78
- EVENTS_MAP.MouseEvent.forEach((eventType) => {
79
- const listener = (event) => renderer.propagateEvent(event);
80
- element.addEventListener(eventType, listener);
81
- eventListeners[eventType] = listener;
82
- });
83
- return () => {
84
- EVENTS_MAP.MouseEvent.forEach((eventType) => {
85
- element.removeEventListener(eventType, eventListeners[eventType]);
86
- });
87
- };
88
- }
89
- }, [ref]);
90
- return ref;
91
- };
92
- class ReactGui {
93
- //private _tooltips: BehaviorSubject<any[]> = new BehaviorSubject([] as any)
94
- constructor(rootEl, parentGui) {
95
- this._gui = new BehaviorSubject([]);
96
- this.app = createRoot(rootEl);
97
- this.clientEngine = parentGui.clientEngine;
98
- this.renderer = this.clientEngine.renderer;
99
- const GuiTooltip = (ui) => {
100
- return () => {
101
- const [_tooltip, setTooltip] = useState([]);
102
- useEffect(() => {
103
- var _a;
104
- parentGui.listenTooltipObjects.subscribe(setTooltip);
105
- (_a = parentGui.currentScene) == null ? void 0 : _a.objectsMoving.next({});
106
- }, [parentGui.currentScene]);
107
- return parentGui.tooltipFilter(_tooltip).map((sprite) => createElement("div", {
108
- style: parentGui.tooltipPosition({
109
- x: sprite.position.x,
110
- y: sprite.position.y
111
- }),
112
- key: sprite.id
113
- }, createElement(ui.gui, {
114
- spriteData: sprite,
115
- ...ui.data || {}
116
- })));
117
- };
118
- };
119
- const GuiWrapper = () => {
120
- const [_gui, setGui] = useState([]);
121
- useEffect(() => {
122
- this._gui.subscribe((gui) => setGui(gui));
123
- }, []);
124
- return createElement(RpgReactContext.Provider, {
125
- value: parentGui.getInjectObject()
126
- }, ..._gui.filter((ui) => ui.display && !ui.attachToSprite).map((ui) => createElement("div", {
127
- key: ui.name,
128
- style: {
129
- "pointerEvents": "auto"
130
- }
131
- }, createElement(ui.gui, ui.data || {}))), ..._gui.filter((ui) => ui.display && ui.attachToSprite).map((ui) => createElement("div", {
132
- key: ui.name,
133
- style: {
134
- "pointerEvents": "auto"
135
- }
136
- }, createElement(GuiTooltip(ui)))));
137
- };
138
- this.app.render(createElement(GuiWrapper));
139
- }
140
- set gui(val) {
141
- let array = [];
142
- for (let key in val) {
143
- if (!val[key].isFunction)
144
- continue;
145
- array.push(val[key]);
146
- }
147
- this._gui.next(array);
148
- }
149
- }
150
- function RpgGame({
151
- onReady,
152
- modules
153
- }) {
154
- const divRef = useRef(null);
155
- useEffect(() => {
156
- let client, server;
157
- const engine = window.RpgStandalone;
158
- engine(modules).then((val) => {
159
- if (val.client) {
160
- client = val.client;
161
- server = val.server;
162
- } else {
163
- client = val;
164
- server = null;
165
- }
166
- onReady == null ? void 0 : onReady({
167
- client,
168
- server
169
- });
170
- });
171
- return () => {
172
- server == null ? void 0 : server.world.clear();
173
- client.reset();
174
- RpgPlugin.clear();
175
- server == null ? void 0 : server.io.clear();
176
- server == null ? void 0 : server.io.events.clear();
177
- server == null ? void 0 : server.stop();
178
- if (divRef.current)
179
- divRef.current.innerHTML = "";
180
- };
181
- }, [modules]);
182
- return createElement("div", {
183
- id: "rpg",
184
- ref: divRef
185
- });
186
- }
187
- export {
188
- ReactGui,
189
- RpgGame,
190
- RpgReactContext,
191
- useCurrentPlayer,
192
- useEventPropagator,
193
- useObjects,
194
- useStore
195
- };