@rpgjs/server 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 (219) hide show
  1. package/{lib → dist}/Gui/DialogGui.d.ts +1 -2
  2. package/{lib → dist}/Gui/Gui.d.ts +1 -2
  3. package/dist/Player/BattleManager.d.ts +22 -0
  4. package/dist/Player/ClassManager.d.ts +18 -0
  5. package/dist/Player/Event.d.ts +0 -0
  6. package/dist/Player/ItemManager.d.ts +17 -0
  7. package/dist/Player/MoveManager.d.ts +177 -0
  8. package/dist/Player/ParameterManager.d.ts +42 -0
  9. package/dist/Player/Player.d.ts +73 -0
  10. package/dist/Player/SkillManager.d.ts +23 -0
  11. package/dist/Player/StateManager.d.ts +39 -0
  12. package/{lib → dist}/RpgServer.d.ts +32 -15
  13. package/dist/RpgServerEngine.d.ts +5 -0
  14. package/dist/core/context.d.ts +2 -0
  15. package/dist/core/inject.d.ts +5 -0
  16. package/dist/core/setup.d.ts +6 -0
  17. package/dist/index.d.ts +9 -0
  18. package/dist/index.js +29673 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/module.d.ts +2 -0
  21. package/dist/rooms/lobby.d.ts +6 -0
  22. package/dist/rooms/map.d.ts +110 -0
  23. package/package.json +15 -37
  24. package/src/Gui/DialogGui.ts +3 -4
  25. package/src/Gui/Gui.ts +4 -6
  26. package/src/Player/BattleManager.ts +108 -99
  27. package/src/Player/ClassManager.ts +47 -46
  28. package/src/Player/ComponentManager.ts +26 -535
  29. package/src/Player/EffectManager.ts +44 -59
  30. package/src/Player/ElementManager.ts +70 -72
  31. package/src/Player/Event.ts +0 -0
  32. package/src/Player/GoldManager.ts +24 -6
  33. package/src/Player/GuiManager.ts +106 -97
  34. package/src/Player/ItemFixture.ts +22 -17
  35. package/src/Player/ItemManager.ts +234 -225
  36. package/src/Player/MoveManager.ts +1047 -457
  37. package/src/Player/ParameterManager.ts +59 -37
  38. package/src/Player/Player.ts +272 -1058
  39. package/src/Player/SkillManager.ts +146 -137
  40. package/src/Player/StateManager.ts +124 -98
  41. package/src/Player/VariableManager.ts +23 -3
  42. package/src/RpgServer.ts +36 -12
  43. package/src/RpgServerEngine.ts +7 -0
  44. package/src/core/context.ts +3 -0
  45. package/src/core/inject.ts +17 -0
  46. package/src/core/setup.ts +20 -0
  47. package/src/index.ts +9 -31
  48. package/src/module.ts +32 -0
  49. package/src/presets/index.ts +1 -3
  50. package/src/rooms/lobby.ts +24 -0
  51. package/src/rooms/map.ts +311 -0
  52. package/tsconfig.json +26 -23
  53. package/vite.config.ts +21 -0
  54. package/CHANGELOG.md +0 -174
  55. package/LICENSE +0 -19
  56. package/browser/manifest.json +0 -7
  57. package/browser/rpg.server.js +0 -22379
  58. package/browser/rpg.server.umd.cjs +0 -22410
  59. package/lib/Game/EventManager.d.ts +0 -54
  60. package/lib/Game/EventManager.js +0 -107
  61. package/lib/Game/EventManager.js.map +0 -1
  62. package/lib/Game/Map.d.ts +0 -191
  63. package/lib/Game/Map.js +0 -419
  64. package/lib/Game/Map.js.map +0 -1
  65. package/lib/Game/WorldMaps.d.ts +0 -17
  66. package/lib/Game/WorldMaps.js +0 -28
  67. package/lib/Game/WorldMaps.js.map +0 -1
  68. package/lib/Gui/DialogGui.js +0 -57
  69. package/lib/Gui/DialogGui.js.map +0 -1
  70. package/lib/Gui/Gui.js +0 -37
  71. package/lib/Gui/Gui.js.map +0 -1
  72. package/lib/Gui/MenuGui.js +0 -23
  73. package/lib/Gui/MenuGui.js.map +0 -1
  74. package/lib/Gui/NotificationGui.js +0 -8
  75. package/lib/Gui/NotificationGui.js.map +0 -1
  76. package/lib/Gui/ShopGui.js +0 -40
  77. package/lib/Gui/ShopGui.js.map +0 -1
  78. package/lib/Gui/index.js +0 -7
  79. package/lib/Gui/index.js.map +0 -1
  80. package/lib/Interfaces/Gui.d.ts +0 -4
  81. package/lib/Interfaces/Gui.js +0 -2
  82. package/lib/Interfaces/Gui.js.map +0 -1
  83. package/lib/Interfaces/StateStore.d.ts +0 -5
  84. package/lib/Interfaces/StateStore.js +0 -2
  85. package/lib/Interfaces/StateStore.js.map +0 -1
  86. package/lib/MatchMaker.d.ts +0 -24
  87. package/lib/MatchMaker.js +0 -42
  88. package/lib/MatchMaker.js.map +0 -1
  89. package/lib/Monitor/index.d.ts +0 -17
  90. package/lib/Monitor/index.js +0 -72
  91. package/lib/Monitor/index.js.map +0 -1
  92. package/lib/Player/BattleManager.d.ts +0 -36
  93. package/lib/Player/BattleManager.js +0 -101
  94. package/lib/Player/BattleManager.js.map +0 -1
  95. package/lib/Player/ClassManager.d.ts +0 -47
  96. package/lib/Player/ClassManager.js +0 -65
  97. package/lib/Player/ClassManager.js.map +0 -1
  98. package/lib/Player/ComponentManager.d.ts +0 -397
  99. package/lib/Player/ComponentManager.js +0 -505
  100. package/lib/Player/ComponentManager.js.map +0 -1
  101. package/lib/Player/EffectManager.d.ts +0 -46
  102. package/lib/Player/EffectManager.js +0 -75
  103. package/lib/Player/EffectManager.js.map +0 -1
  104. package/lib/Player/ElementManager.d.ts +0 -108
  105. package/lib/Player/ElementManager.js +0 -120
  106. package/lib/Player/ElementManager.js.map +0 -1
  107. package/lib/Player/GoldManager.d.ts +0 -17
  108. package/lib/Player/GoldManager.js +0 -27
  109. package/lib/Player/GoldManager.js.map +0 -1
  110. package/lib/Player/GuiManager.d.ts +0 -247
  111. package/lib/Player/GuiManager.js +0 -291
  112. package/lib/Player/GuiManager.js.map +0 -1
  113. package/lib/Player/ItemFixture.d.ts +0 -7
  114. package/lib/Player/ItemFixture.js +0 -19
  115. package/lib/Player/ItemFixture.js.map +0 -1
  116. package/lib/Player/ItemManager.d.ts +0 -331
  117. package/lib/Player/ItemManager.js +0 -475
  118. package/lib/Player/ItemManager.js.map +0 -1
  119. package/lib/Player/MoveManager.d.ts +0 -333
  120. package/lib/Player/MoveManager.js +0 -450
  121. package/lib/Player/MoveManager.js.map +0 -1
  122. package/lib/Player/ParameterManager.d.ts +0 -316
  123. package/lib/Player/ParameterManager.js +0 -408
  124. package/lib/Player/ParameterManager.js.map +0 -1
  125. package/lib/Player/Player.d.ts +0 -828
  126. package/lib/Player/Player.js +0 -927
  127. package/lib/Player/Player.js.map +0 -1
  128. package/lib/Player/SkillManager.d.ts +0 -163
  129. package/lib/Player/SkillManager.js +0 -223
  130. package/lib/Player/SkillManager.js.map +0 -1
  131. package/lib/Player/StateManager.d.ts +0 -185
  132. package/lib/Player/StateManager.js +0 -228
  133. package/lib/Player/StateManager.js.map +0 -1
  134. package/lib/Player/VariableManager.d.ts +0 -46
  135. package/lib/Player/VariableManager.js +0 -52
  136. package/lib/Player/VariableManager.js.map +0 -1
  137. package/lib/Query.d.ts +0 -127
  138. package/lib/Query.js +0 -159
  139. package/lib/Query.js.map +0 -1
  140. package/lib/RpgServer.js +0 -2
  141. package/lib/RpgServer.js.map +0 -1
  142. package/lib/Scenes/Map.d.ts +0 -136
  143. package/lib/Scenes/Map.js +0 -273
  144. package/lib/Scenes/Map.js.map +0 -1
  145. package/lib/decorators/event.d.ts +0 -43
  146. package/lib/decorators/event.js +0 -13
  147. package/lib/decorators/event.js.map +0 -1
  148. package/lib/decorators/map.d.ts +0 -178
  149. package/lib/decorators/map.js +0 -43
  150. package/lib/decorators/map.js.map +0 -1
  151. package/lib/entry-point.d.ts +0 -34
  152. package/lib/entry-point.js +0 -70
  153. package/lib/entry-point.js.map +0 -1
  154. package/lib/express/api.d.ts +0 -3
  155. package/lib/express/api.js +0 -105
  156. package/lib/express/api.js.map +0 -1
  157. package/lib/express/errors/NotAuthorized.d.ts +0 -4
  158. package/lib/express/errors/NotAuthorized.js +0 -7
  159. package/lib/express/errors/NotAuthorized.js.map +0 -1
  160. package/lib/express/errors/NotFound.d.ts +0 -4
  161. package/lib/express/errors/NotFound.js +0 -7
  162. package/lib/express/errors/NotFound.js.map +0 -1
  163. package/lib/express/server.d.ts +0 -18
  164. package/lib/express/server.js +0 -70
  165. package/lib/express/server.js.map +0 -1
  166. package/lib/index.d.ts +0 -20
  167. package/lib/index.js +0 -19
  168. package/lib/index.js.map +0 -1
  169. package/lib/inject.d.ts +0 -22
  170. package/lib/inject.js +0 -29
  171. package/lib/inject.js.map +0 -1
  172. package/lib/logs/index.js +0 -6
  173. package/lib/logs/index.js.map +0 -1
  174. package/lib/logs/item.js +0 -34
  175. package/lib/logs/item.js.map +0 -1
  176. package/lib/logs/log.js +0 -7
  177. package/lib/logs/log.js.map +0 -1
  178. package/lib/logs/skill.js +0 -19
  179. package/lib/logs/skill.js.map +0 -1
  180. package/lib/logs/state.js +0 -13
  181. package/lib/logs/state.js.map +0 -1
  182. package/lib/models/Item.d.ts +0 -10
  183. package/lib/models/Item.js +0 -2
  184. package/lib/models/Item.js.map +0 -1
  185. package/lib/presets/index.js +0 -65
  186. package/lib/presets/index.js.map +0 -1
  187. package/lib/server.d.ts +0 -137
  188. package/lib/server.js +0 -443
  189. package/lib/server.js.map +0 -1
  190. package/rpg.toml +0 -14
  191. package/src/Game/EventManager.ts +0 -125
  192. package/src/Game/Map.ts +0 -500
  193. package/src/Game/WorldMaps.ts +0 -45
  194. package/src/Interfaces/Gui.ts +0 -4
  195. package/src/Interfaces/StateStore.ts +0 -5
  196. package/src/MatchMaker.ts +0 -65
  197. package/src/Monitor/index.ts +0 -78
  198. package/src/Query.ts +0 -172
  199. package/src/Scenes/Map.ts +0 -310
  200. package/src/decorators/event.ts +0 -58
  201. package/src/decorators/map.ts +0 -226
  202. package/src/entry-point.ts +0 -111
  203. package/src/express/api.ts +0 -118
  204. package/src/express/errors/NotAuthorized.ts +0 -6
  205. package/src/express/errors/NotFound.ts +0 -6
  206. package/src/express/server.ts +0 -94
  207. package/src/inject.ts +0 -33
  208. package/src/models/Item.ts +0 -11
  209. package/src/server.ts +0 -459
  210. /package/{lib → dist}/Gui/MenuGui.d.ts +0 -0
  211. /package/{lib → dist}/Gui/NotificationGui.d.ts +0 -0
  212. /package/{lib → dist}/Gui/ShopGui.d.ts +0 -0
  213. /package/{lib → dist}/Gui/index.d.ts +0 -0
  214. /package/{lib → dist}/logs/index.d.ts +0 -0
  215. /package/{lib → dist}/logs/item.d.ts +0 -0
  216. /package/{lib → dist}/logs/log.d.ts +0 -0
  217. /package/{lib → dist}/logs/skill.d.ts +0 -0
  218. /package/{lib → dist}/logs/state.d.ts +0 -0
  219. /package/{lib → dist}/presets/index.d.ts +0 -0
@@ -1,228 +0,0 @@
1
- import { Utils } from '@rpgjs/common';
2
- import { ItemFixture } from './ItemFixture.js';
3
- import { StateLog } from '../logs/state.js';
4
- const { isInstanceOf, applyMixins, isString } = Utils;
5
- export class StateManager {
6
- constructor() {
7
- this.states = [];
8
- }
9
- /**
10
- * Recovers the player's states defense on inventory. This list is generated from the `statesDefense` property defined on the weapons or armors equipped.
11
- * If several items have the same element, only the highest rate will be taken into account.
12
- *
13
- * ```ts
14
- * import { Armor, State } from '@rpgjs/server'
15
- *
16
- * @State({
17
- * name: 'Paralyze'
18
- * })
19
- * class Paralyze {}
20
- *
21
- * @Armor({
22
- * name: 'Shield',
23
- * statesDefense: [{ rate: 1, state: Paralyze }]
24
- * })
25
- * class Shield {}
26
- *
27
- * @Armor({
28
- * name: 'FireShield',
29
- * statesDefense: [{ rate: 0.5, state: Paralyze }]
30
- * })
31
- * class FireShield {}
32
- *
33
- * player.addItem(Shield)
34
- * player.addItem(FireShield)
35
- * player.equip(Shield)
36
- * player.equip(FireShield)
37
- *
38
- * console.log(player.statesDefense) // [{ rate: 1, state: instance of Paralyze }]
39
- * ```
40
- * @title Get States Defense
41
- * @prop {Array<{ rate: number, state: StateClass}>} player.statesDefense
42
- * @readonly
43
- * @memberof StateManager
44
- * */
45
- get statesDefense() {
46
- return this.getFeature('statesDefense', 'state');
47
- }
48
- /**
49
- * Set or retrieves all the states where the player is vulnerable or not.
50
- *
51
- * ```ts
52
- * import { Class, State } from '@rpgjs/server'
53
- *
54
- * @State({
55
- * name: 'Paralyze'
56
- * })
57
- * class Paralyze {}
58
- *
59
- * @State({
60
- * name: 'Sleep'
61
- * })
62
- * class Sleep {}
63
- *
64
- * @Class({
65
- * name: 'Fighter',
66
- * statesEfficiency: [{ rate: 1, state: Paralyze }]
67
- * })
68
- * class Hero {}
69
- *
70
- * player.setClass(Hero)
71
- *
72
- * console.log(player.statesEfficiency) // [{ rate: 1, instance of Paralyze }]
73
- *
74
- * player.statesEfficiency = [{ rate: 2, state: Sleep }]
75
- *
76
- * console.log(player.statesEfficiency) // [{ rate: 1, state: instance of Paralyze }, { rate: 2, state: instance of Sleep }]
77
- * ```
78
- * @title Set/Get States Efficiency
79
- * @prop {Array<{ rate: number, state: StateClass}>} player.statesEfficiency
80
- * @memberof StateManager
81
- * */
82
- get statesEfficiency() {
83
- return this._statesEfficiency;
84
- }
85
- set statesEfficiency(val) {
86
- this._statesEfficiency = val;
87
- }
88
- applyStates(player, { addStates, removeStates }) {
89
- if (addStates) {
90
- for (let { state, rate } of addStates) {
91
- player.addState(state, rate);
92
- }
93
- }
94
- if (removeStates) {
95
- for (let { state, rate } of removeStates) {
96
- player.removeState(state, rate);
97
- }
98
- }
99
- }
100
- /**
101
- * Get a state to the player. Returns `null` if the state is not present on the player
102
- * ```ts
103
- * import Paralyze from 'your-database/states/paralyze'
104
- *
105
- * player.getState(Paralyze)
106
- * ```
107
- *
108
- * @title Get State
109
- * @method player.getState(stateClass)
110
- * @param {StateClass | string} stateClass or state id
111
- * @returns {instance of StateClass | null}
112
- * @memberof StateManager
113
- */
114
- getState(stateClass) {
115
- if (isString(stateClass))
116
- stateClass = this.databaseById(stateClass);
117
- return this.states.find((state) => {
118
- if (isString(stateClass)) {
119
- return state.id == stateClass;
120
- }
121
- return isInstanceOf(state, stateClass);
122
- });
123
- }
124
- /**
125
- * Adds a state to the player. Set the chance between 0 and 1 that the state can apply
126
- * ```ts
127
- * import Paralyze from 'your-database/states/paralyze'
128
- *
129
- * try {
130
- * player.addState(Paralyze)
131
- * }
132
- * catch (err) {
133
- * console.log(err)
134
- * }
135
- * ```
136
- *
137
- * @title Add State
138
- * @method player.addState(stateClass,chance=1)
139
- * @param {StateClass | string} stateClass state class or state id
140
- * @param {number} [chance] 1 by default
141
- * @throws {StateLog} addFailed
142
- * If the chance to add the state has failed (defined with the `chance` param)
143
- * ```
144
- * {
145
- * id: ADD_STATE_FAILED,
146
- * msg: '...'
147
- * }
148
- * ```
149
- * @returns {instance of StateClass}
150
- * @memberof StateManager
151
- * @todo
152
- */
153
- addState(stateClass, chance = 1) {
154
- const state = this.getState(stateClass);
155
- if (isString(stateClass)) {
156
- stateClass = this.databaseById(stateClass);
157
- }
158
- if (!state) {
159
- if (Math.random() > chance) {
160
- throw StateLog.addFailed(stateClass);
161
- }
162
- //const efficiency = this.findStateEfficiency(stateClass)
163
- const instance = new stateClass();
164
- this.states.push(instance);
165
- this.applyStates(this, instance);
166
- return instance;
167
- }
168
- return null;
169
- }
170
- /**
171
- * Remove a state to the player. Set the chance between 0 and 1 that the state can be removed
172
- * ```ts
173
- * import Paralyze from 'your-database/states/paralyze'
174
- *
175
- * try {
176
- * player.removeState(Paralyze)
177
- * }
178
- * catch (err) {
179
- * console.log(err)
180
- * }
181
- * ```
182
- *
183
- * @title Remove State
184
- * @method player.removeState(stateClass,chance=1)
185
- * @param {StateClass|string} stateClass class state or state id
186
- * @param {number} [chance] 1 by default
187
- * @throws {StateLog} removeFailed
188
- * If the chance to remove the state has failed (defined with the `chance` param)
189
- * ```
190
- * {
191
- * id: REMOVE_STATE_FAILED,
192
- * msg: '...'
193
- * }
194
- * ```
195
- * @throws {StateLog} notApplied
196
- * If the status does not exist
197
- * ```
198
- * {
199
- * id: STATE_NOT_APPLIED,
200
- * msg: '...'
201
- * }
202
- * ```
203
- * @returns {instance of StateClass}
204
- * @memberof StateManager
205
- */
206
- removeState(stateClass, chance = 1) {
207
- const index = this.states.findIndex((state) => {
208
- if (isString(stateClass)) {
209
- return state.id == stateClass;
210
- }
211
- return isInstanceOf(state, stateClass);
212
- });
213
- if (index != -1) {
214
- if (Math.random() > chance) {
215
- throw StateLog.removeFailed(stateClass);
216
- }
217
- this.states.splice(index, 1);
218
- }
219
- else {
220
- throw StateLog.notApplied(stateClass);
221
- }
222
- }
223
- findStateEfficiency(stateClass) {
224
- return this.statesEfficiency.find(state => isInstanceOf(state.state, stateClass));
225
- }
226
- }
227
- applyMixins(StateManager, [ItemFixture]);
228
- //# sourceMappingURL=StateManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"StateManager.js","sourceRoot":"","sources":["../../src/Player/StateManager.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- export declare class VariableManager {
2
- variables: Map<string, any>;
3
- /**
4
- * Assign a variable to the player
5
- *
6
- * ```ts
7
- * player.setVariable('OPEN_CHEST', true)
8
- * ```
9
- *
10
- * @title Set variable
11
- * @method player.setVariable(key,val)
12
- * @param {string} key
13
- * @param {any} val
14
- * @returns {void}
15
- * @memberof VariableManager
16
- * */
17
- setVariable(key: string, val: any): void;
18
- /**
19
- * Get a variable
20
- *
21
- * ```ts
22
- * const val = player.getVariable('OPEN_CHEST')
23
- * ```
24
- *
25
- * @title Get variable
26
- * @method player.setVariable(key,val)
27
- * @param {string} key
28
- * @returns {any}
29
- * @memberof VariableManager
30
- * */
31
- getVariable(key: string): any;
32
- /**
33
- * Remove a variable
34
- *
35
- * ```ts
36
- * player.removeVariable('OPEN_CHEST')
37
- * ```
38
- *
39
- * @title Remove variable
40
- * @method player.removeVariable(key)
41
- * @param {string} key
42
- * @returns {boolean} true if a variable existed and has been removed, or false if the variable does not exist.
43
- * @memberof VariableManager
44
- * */
45
- removeVariable(key: string): boolean;
46
- }
@@ -1,52 +0,0 @@
1
- export class VariableManager {
2
- /**
3
- * Assign a variable to the player
4
- *
5
- * ```ts
6
- * player.setVariable('OPEN_CHEST', true)
7
- * ```
8
- *
9
- * @title Set variable
10
- * @method player.setVariable(key,val)
11
- * @param {string} key
12
- * @param {any} val
13
- * @returns {void}
14
- * @memberof VariableManager
15
- * */
16
- setVariable(key, val) {
17
- this.variables.set(key, val);
18
- }
19
- /**
20
- * Get a variable
21
- *
22
- * ```ts
23
- * const val = player.getVariable('OPEN_CHEST')
24
- * ```
25
- *
26
- * @title Get variable
27
- * @method player.setVariable(key,val)
28
- * @param {string} key
29
- * @returns {any}
30
- * @memberof VariableManager
31
- * */
32
- getVariable(key) {
33
- return this.variables.get(key);
34
- }
35
- /**
36
- * Remove a variable
37
- *
38
- * ```ts
39
- * player.removeVariable('OPEN_CHEST')
40
- * ```
41
- *
42
- * @title Remove variable
43
- * @method player.removeVariable(key)
44
- * @param {string} key
45
- * @returns {boolean} true if a variable existed and has been removed, or false if the variable does not exist.
46
- * @memberof VariableManager
47
- * */
48
- removeVariable(key) {
49
- return this.variables.delete(key);
50
- }
51
- }
52
- //# sourceMappingURL=VariableManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"VariableManager.js","sourceRoot":"","sources":["../../src/Player/VariableManager.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,eAAe;IAGxB;;;;;;;;;;;;;SAaK;IACL,WAAW,CAAC,GAAW,EAAE,GAAG;QACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IAChC,CAAC;IAED;;;;;;;;;;;;SAYK;IACL,WAAW,CAAC,GAAW;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAClC,CAAC;IAED;;;;;;;;;;;;SAYK;IACL,cAAc,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IACrC,CAAC;CACJ"}
package/lib/Query.d.ts DELETED
@@ -1,127 +0,0 @@
1
- import { RpgShape } from '@rpgjs/common';
2
- import { RpgPlayer } from './Player/Player';
3
- import { Observable } from 'rxjs';
4
- declare class QueryClass {
5
- /**
6
- * Listen to the changes on all the rooms
7
- *
8
- * ```ts
9
- * import { RpgWorld } from '@rpgjs/server'
10
- * import { map } from 'rxjs/operators' // install rxjs
11
- *
12
- * RpgWorld.changes
13
- * .pipe(
14
- * map(rooms => rooms['mymap'])
15
- * )
16
- * .subscribe((room) => {
17
- * const users: any = Object.values(room.users)
18
- * console.log(users)
19
- * })
20
- * ```
21
- *
22
- * @title Subscribe to the world
23
- * @prop {Observable} RpgWorld.changes
24
- * @memberof RpgWorld
25
- * */
26
- get changes(): Observable<any>;
27
- /**
28
- * Retrieve a player according to his ID
29
- *
30
- * ```ts
31
- * import { RpgWorld } from '@rpgjs/server'
32
- *
33
- * const player = RpgWorld.getPlayer(player) // player is RpgPlayer (player.id) or string (id)
34
- * ```
35
- *
36
- * @title Get Player
37
- * @method RpgWorld.getPlayer(player)
38
- * @param {RpgPlayer | string} player identifier
39
- * @returns {RpgPlayer}
40
- * @memberof RpgWorld
41
- */
42
- getPlayer(player: RpgPlayer | string): RpgPlayer;
43
- /**
44
- * Recover all the players of the game
45
- *
46
- * ```ts
47
- * import { RpgWorld } from '@rpgjs/server'
48
- *
49
- * const players = RpgWorld.getPlayers()
50
- * ```
51
- *
52
- * @title Get all Players
53
- * @method RpgWorld.getPlayers()
54
- * @returns {Array<RpgPlayer>}
55
- * @memberof RpgWorld
56
- */
57
- getPlayers(): RpgPlayer[];
58
- /**
59
- * Recover all map objects: players and events. If you specify the `player` parameter, it also retrieves the events in scenario mode of the player in question
60
- *
61
- * ```ts
62
- * import { RpgWorld } from '@rpgjs/server'
63
- *
64
- * const objects = RpgWorld.getObjectsOfMap('mapname')
65
- * console.log(objects)
66
- * ```
67
- *
68
- * Also retrieve events in Scenario mode:
69
- *
70
- * ```ts
71
- * import { RpgWorld } from '@rpgjs/server'
72
- *
73
- * const objects = RpgWorld.getObjectsOfMap('mapname', 'playerid')
74
- * ```
75
- *
76
- * @title Get all objects of map
77
- * @method RpgWorld.getObjectsOfMap(map,playerId?)
78
- * @param {string} map Map Name
79
- * @param {RpgPlayer | string} playerId player identifier
80
- * @returns {Array<RpgPlayer>}
81
- * @memberof RpgWorld
82
- */
83
- getObjectsOfMap(map: string, playerId?: RpgPlayer | string): RpgPlayer[];
84
- _getObjectsOfMap(map: string, playerId?: RpgPlayer | string): {
85
- [id: string]: RpgPlayer;
86
- };
87
- /**
88
- * Find all the shapes of the map
89
- *
90
- * ```ts
91
- * import { RpgWorld } from '@rpgjs/server'
92
- *
93
- * const shapes = RpgWorld.getShapesOfMap('mapname')
94
- * console.log(shapes)
95
- * ```
96
- *
97
- * @title Get all shapes of map
98
- * @method RpgWorld.getShapesOfMap(map)
99
- * @param {string} map Map Name
100
- * @returns {Array<RpgShape>}
101
- * @memberof RpgWorld
102
- */
103
- getShapesOfMap(map: string): RpgShape[];
104
- _getShapesOfMap(map: string): {
105
- [id: string]: RpgShape;
106
- };
107
- getRooms<T>(): Map<string, T>;
108
- getRoom<T>(name: string): T;
109
- /**
110
- * Recover all the players of a map
111
- *
112
- * ```ts
113
- * import { RpgWorld } from '@rpgjs/server'
114
- *
115
- * const players = RpgWorld.getPlayersOfMap('mapname')
116
- * ```
117
- *
118
- * @title Get all Players a map
119
- * @method RpgWorld.getPlayersOfMap(map)
120
- * @param {string} map Map Name
121
- * @returns {Array<RpgPlayer>}
122
- * @memberof RpgWorld
123
- */
124
- getPlayersOfMap(map: string): RpgPlayer[];
125
- }
126
- export declare const Query: QueryClass;
127
- export {};
package/lib/Query.js DELETED
@@ -1,159 +0,0 @@
1
- import { World } from 'simple-room';
2
- import { Utils } from '@rpgjs/common';
3
- const { isString } = Utils;
4
- class QueryClass {
5
- /**
6
- * Listen to the changes on all the rooms
7
- *
8
- * ```ts
9
- * import { RpgWorld } from '@rpgjs/server'
10
- * import { map } from 'rxjs/operators' // install rxjs
11
- *
12
- * RpgWorld.changes
13
- * .pipe(
14
- * map(rooms => rooms['mymap'])
15
- * )
16
- * .subscribe((room) => {
17
- * const users: any = Object.values(room.users)
18
- * console.log(users)
19
- * })
20
- * ```
21
- *
22
- * @title Subscribe to the world
23
- * @prop {Observable} RpgWorld.changes
24
- * @memberof RpgWorld
25
- * */
26
- get changes() {
27
- return World.changes.asObservable();
28
- }
29
- /**
30
- * Retrieve a player according to his ID
31
- *
32
- * ```ts
33
- * import { RpgWorld } from '@rpgjs/server'
34
- *
35
- * const player = RpgWorld.getPlayer(player) // player is RpgPlayer (player.id) or string (id)
36
- * ```
37
- *
38
- * @title Get Player
39
- * @method RpgWorld.getPlayer(player)
40
- * @param {RpgPlayer | string} player identifier
41
- * @returns {RpgPlayer}
42
- * @memberof RpgWorld
43
- */
44
- getPlayer(player) {
45
- const id = isString(player) ? player : '' + player.id;
46
- const _player = World.getUser(id);
47
- return _player;
48
- }
49
- /**
50
- * Recover all the players of the game
51
- *
52
- * ```ts
53
- * import { RpgWorld } from '@rpgjs/server'
54
- *
55
- * const players = RpgWorld.getPlayers()
56
- * ```
57
- *
58
- * @title Get all Players
59
- * @method RpgWorld.getPlayers()
60
- * @returns {Array<RpgPlayer>}
61
- * @memberof RpgWorld
62
- */
63
- getPlayers() {
64
- const users = World.getUsers();
65
- const array = Object.values(users);
66
- return array.map((user) => this.getPlayer(user));
67
- }
68
- /**
69
- * Recover all map objects: players and events. If you specify the `player` parameter, it also retrieves the events in scenario mode of the player in question
70
- *
71
- * ```ts
72
- * import { RpgWorld } from '@rpgjs/server'
73
- *
74
- * const objects = RpgWorld.getObjectsOfMap('mapname')
75
- * console.log(objects)
76
- * ```
77
- *
78
- * Also retrieve events in Scenario mode:
79
- *
80
- * ```ts
81
- * import { RpgWorld } from '@rpgjs/server'
82
- *
83
- * const objects = RpgWorld.getObjectsOfMap('mapname', 'playerid')
84
- * ```
85
- *
86
- * @title Get all objects of map
87
- * @method RpgWorld.getObjectsOfMap(map,playerId?)
88
- * @param {string} map Map Name
89
- * @param {RpgPlayer | string} playerId player identifier
90
- * @returns {Array<RpgPlayer>}
91
- * @memberof RpgWorld
92
- */
93
- getObjectsOfMap(map, playerId) {
94
- return Object.values(this._getObjectsOfMap(map, playerId));
95
- }
96
- _getObjectsOfMap(map, playerId) {
97
- const room = World.getRoom(map);
98
- let player = null;
99
- if (playerId) {
100
- player = this.getPlayer(playerId);
101
- }
102
- return {
103
- ...room.users,
104
- ...room.events,
105
- ...(player ? player.events : {})
106
- };
107
- }
108
- /**
109
- * Find all the shapes of the map
110
- *
111
- * ```ts
112
- * import { RpgWorld } from '@rpgjs/server'
113
- *
114
- * const shapes = RpgWorld.getShapesOfMap('mapname')
115
- * console.log(shapes)
116
- * ```
117
- *
118
- * @title Get all shapes of map
119
- * @method RpgWorld.getShapesOfMap(map)
120
- * @param {string} map Map Name
121
- * @returns {Array<RpgShape>}
122
- * @memberof RpgWorld
123
- */
124
- getShapesOfMap(map) {
125
- return Object.values(this._getShapesOfMap(map));
126
- }
127
- _getShapesOfMap(map) {
128
- const room = World.getRoom(map);
129
- return room.shapes;
130
- }
131
- // TODO
132
- getRooms() {
133
- return World.getRooms();
134
- }
135
- getRoom(name) {
136
- return World.getRoom(name);
137
- }
138
- /**
139
- * Recover all the players of a map
140
- *
141
- * ```ts
142
- * import { RpgWorld } from '@rpgjs/server'
143
- *
144
- * const players = RpgWorld.getPlayersOfMap('mapname')
145
- * ```
146
- *
147
- * @title Get all Players a map
148
- * @method RpgWorld.getPlayersOfMap(map)
149
- * @param {string} map Map Name
150
- * @returns {Array<RpgPlayer>}
151
- * @memberof RpgWorld
152
- */
153
- getPlayersOfMap(map) {
154
- const room = World.getRoom(map);
155
- return Object.values(room.users);
156
- }
157
- }
158
- export const Query = new QueryClass();
159
- //# sourceMappingURL=Query.js.map
package/lib/Query.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"Query.js","sourceRoot":"","sources":["../src/Query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAY,KAAK,EAAE,MAAM,eAAe,CAAA;AAI/C,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAA;AAE1B,MAAM,UAAU;IACZ;;;;;;;;;;;;;;;;;;;;SAoBK;IACL,IAAI,OAAO;QACP,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,EAAS,CAAA;IAC9C,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,MAA0B;QAChC,MAAM,EAAE,GAAQ,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAI,MAAoB,CAAC,EAAE,CAAA;QACzE,MAAM,OAAO,GAAQ,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;QACtC,OAAO,OAAoB,CAAA;IAC/B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,UAAU;QACN,MAAM,KAAK,GAAQ,KAAK,CAAC,QAAQ,EAAE,CAAA;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAgB,CAAA;QACjD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAe,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,eAAe,CAAC,GAAW,EAAE,QAA6B;QACtD,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAgB,CAAA;IAC7E,CAAC;IAED,gBAAgB,CAAC,GAAW,EAAE,QAA6B;QACvD,MAAM,IAAI,GAAQ,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACpC,IAAI,MAAM,GAAQ,IAAI,CAAA;QACtB,IAAI,QAAQ,EAAE;YACV,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;SACpC;QACD,OAAO;YACH,GAAG,IAAI,CAAC,KAAK;YACb,GAAG,IAAI,CAAC,MAAM;YACd,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;SACnC,CAAA;IACL,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,cAAc,CAAC,GAAW;QACtB,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IACnD,CAAC;IAED,eAAe,CAAC,GAAW;QACvB,MAAM,IAAI,GAAQ,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACpC,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAED,OAAO;IACP,QAAQ;QACJ,OAAO,KAAK,CAAC,QAAQ,EAAoB,CAAA;IAC7C,CAAC;IAED,OAAO,CAAI,IAAY;QACnB,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAM,CAAA;IACnC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,GAAW;QACvB,MAAM,IAAI,GAAQ,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QACpC,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAgB,CAAA;IACnD,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,UAAU,EAAE,CAAA"}
package/lib/RpgServer.js DELETED
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=RpgServer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RpgServer.js","sourceRoot":"","sources":["../src/RpgServer.ts"],"names":[],"mappings":""}