@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.
- package/{lib → dist}/Gui/DialogGui.d.ts +1 -2
- package/{lib → dist}/Gui/Gui.d.ts +1 -2
- package/dist/Player/BattleManager.d.ts +22 -0
- package/dist/Player/ClassManager.d.ts +18 -0
- package/dist/Player/Event.d.ts +0 -0
- package/dist/Player/ItemManager.d.ts +17 -0
- package/dist/Player/MoveManager.d.ts +177 -0
- package/dist/Player/ParameterManager.d.ts +42 -0
- package/dist/Player/Player.d.ts +73 -0
- package/dist/Player/SkillManager.d.ts +23 -0
- package/dist/Player/StateManager.d.ts +39 -0
- package/{lib → dist}/RpgServer.d.ts +32 -15
- package/dist/RpgServerEngine.d.ts +5 -0
- package/dist/core/context.d.ts +2 -0
- package/dist/core/inject.d.ts +5 -0
- package/dist/core/setup.d.ts +6 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +29673 -0
- package/dist/index.js.map +1 -0
- package/dist/module.d.ts +2 -0
- package/dist/rooms/lobby.d.ts +6 -0
- package/dist/rooms/map.d.ts +110 -0
- package/package.json +15 -37
- package/src/Gui/DialogGui.ts +3 -4
- package/src/Gui/Gui.ts +4 -6
- package/src/Player/BattleManager.ts +108 -99
- package/src/Player/ClassManager.ts +47 -46
- package/src/Player/ComponentManager.ts +26 -535
- package/src/Player/EffectManager.ts +44 -59
- package/src/Player/ElementManager.ts +70 -72
- package/src/Player/Event.ts +0 -0
- package/src/Player/GoldManager.ts +24 -6
- package/src/Player/GuiManager.ts +106 -97
- package/src/Player/ItemFixture.ts +22 -17
- package/src/Player/ItemManager.ts +234 -225
- package/src/Player/MoveManager.ts +1047 -457
- package/src/Player/ParameterManager.ts +59 -37
- package/src/Player/Player.ts +272 -1058
- package/src/Player/SkillManager.ts +146 -137
- package/src/Player/StateManager.ts +124 -98
- package/src/Player/VariableManager.ts +23 -3
- package/src/RpgServer.ts +36 -12
- package/src/RpgServerEngine.ts +7 -0
- package/src/core/context.ts +3 -0
- package/src/core/inject.ts +17 -0
- package/src/core/setup.ts +20 -0
- package/src/index.ts +9 -31
- package/src/module.ts +32 -0
- package/src/presets/index.ts +1 -3
- package/src/rooms/lobby.ts +24 -0
- package/src/rooms/map.ts +311 -0
- package/tsconfig.json +26 -23
- package/vite.config.ts +21 -0
- package/CHANGELOG.md +0 -174
- package/LICENSE +0 -19
- package/browser/manifest.json +0 -7
- package/browser/rpg.server.js +0 -22379
- package/browser/rpg.server.umd.cjs +0 -22410
- package/lib/Game/EventManager.d.ts +0 -54
- package/lib/Game/EventManager.js +0 -107
- package/lib/Game/EventManager.js.map +0 -1
- package/lib/Game/Map.d.ts +0 -191
- package/lib/Game/Map.js +0 -419
- package/lib/Game/Map.js.map +0 -1
- package/lib/Game/WorldMaps.d.ts +0 -17
- package/lib/Game/WorldMaps.js +0 -28
- package/lib/Game/WorldMaps.js.map +0 -1
- package/lib/Gui/DialogGui.js +0 -57
- package/lib/Gui/DialogGui.js.map +0 -1
- package/lib/Gui/Gui.js +0 -37
- package/lib/Gui/Gui.js.map +0 -1
- package/lib/Gui/MenuGui.js +0 -23
- package/lib/Gui/MenuGui.js.map +0 -1
- package/lib/Gui/NotificationGui.js +0 -8
- package/lib/Gui/NotificationGui.js.map +0 -1
- package/lib/Gui/ShopGui.js +0 -40
- package/lib/Gui/ShopGui.js.map +0 -1
- package/lib/Gui/index.js +0 -7
- package/lib/Gui/index.js.map +0 -1
- package/lib/Interfaces/Gui.d.ts +0 -4
- package/lib/Interfaces/Gui.js +0 -2
- package/lib/Interfaces/Gui.js.map +0 -1
- package/lib/Interfaces/StateStore.d.ts +0 -5
- package/lib/Interfaces/StateStore.js +0 -2
- package/lib/Interfaces/StateStore.js.map +0 -1
- package/lib/MatchMaker.d.ts +0 -24
- package/lib/MatchMaker.js +0 -42
- package/lib/MatchMaker.js.map +0 -1
- package/lib/Monitor/index.d.ts +0 -17
- package/lib/Monitor/index.js +0 -72
- package/lib/Monitor/index.js.map +0 -1
- package/lib/Player/BattleManager.d.ts +0 -36
- package/lib/Player/BattleManager.js +0 -101
- package/lib/Player/BattleManager.js.map +0 -1
- package/lib/Player/ClassManager.d.ts +0 -47
- package/lib/Player/ClassManager.js +0 -65
- package/lib/Player/ClassManager.js.map +0 -1
- package/lib/Player/ComponentManager.d.ts +0 -397
- package/lib/Player/ComponentManager.js +0 -505
- package/lib/Player/ComponentManager.js.map +0 -1
- package/lib/Player/EffectManager.d.ts +0 -46
- package/lib/Player/EffectManager.js +0 -75
- package/lib/Player/EffectManager.js.map +0 -1
- package/lib/Player/ElementManager.d.ts +0 -108
- package/lib/Player/ElementManager.js +0 -120
- package/lib/Player/ElementManager.js.map +0 -1
- package/lib/Player/GoldManager.d.ts +0 -17
- package/lib/Player/GoldManager.js +0 -27
- package/lib/Player/GoldManager.js.map +0 -1
- package/lib/Player/GuiManager.d.ts +0 -247
- package/lib/Player/GuiManager.js +0 -291
- package/lib/Player/GuiManager.js.map +0 -1
- package/lib/Player/ItemFixture.d.ts +0 -7
- package/lib/Player/ItemFixture.js +0 -19
- package/lib/Player/ItemFixture.js.map +0 -1
- package/lib/Player/ItemManager.d.ts +0 -331
- package/lib/Player/ItemManager.js +0 -475
- package/lib/Player/ItemManager.js.map +0 -1
- package/lib/Player/MoveManager.d.ts +0 -333
- package/lib/Player/MoveManager.js +0 -450
- package/lib/Player/MoveManager.js.map +0 -1
- package/lib/Player/ParameterManager.d.ts +0 -316
- package/lib/Player/ParameterManager.js +0 -408
- package/lib/Player/ParameterManager.js.map +0 -1
- package/lib/Player/Player.d.ts +0 -828
- package/lib/Player/Player.js +0 -927
- package/lib/Player/Player.js.map +0 -1
- package/lib/Player/SkillManager.d.ts +0 -163
- package/lib/Player/SkillManager.js +0 -223
- package/lib/Player/SkillManager.js.map +0 -1
- package/lib/Player/StateManager.d.ts +0 -185
- package/lib/Player/StateManager.js +0 -228
- package/lib/Player/StateManager.js.map +0 -1
- package/lib/Player/VariableManager.d.ts +0 -46
- package/lib/Player/VariableManager.js +0 -52
- package/lib/Player/VariableManager.js.map +0 -1
- package/lib/Query.d.ts +0 -127
- package/lib/Query.js +0 -159
- package/lib/Query.js.map +0 -1
- package/lib/RpgServer.js +0 -2
- package/lib/RpgServer.js.map +0 -1
- package/lib/Scenes/Map.d.ts +0 -136
- package/lib/Scenes/Map.js +0 -273
- package/lib/Scenes/Map.js.map +0 -1
- package/lib/decorators/event.d.ts +0 -43
- package/lib/decorators/event.js +0 -13
- package/lib/decorators/event.js.map +0 -1
- package/lib/decorators/map.d.ts +0 -178
- package/lib/decorators/map.js +0 -43
- package/lib/decorators/map.js.map +0 -1
- package/lib/entry-point.d.ts +0 -34
- package/lib/entry-point.js +0 -70
- package/lib/entry-point.js.map +0 -1
- package/lib/express/api.d.ts +0 -3
- package/lib/express/api.js +0 -105
- package/lib/express/api.js.map +0 -1
- package/lib/express/errors/NotAuthorized.d.ts +0 -4
- package/lib/express/errors/NotAuthorized.js +0 -7
- package/lib/express/errors/NotAuthorized.js.map +0 -1
- package/lib/express/errors/NotFound.d.ts +0 -4
- package/lib/express/errors/NotFound.js +0 -7
- package/lib/express/errors/NotFound.js.map +0 -1
- package/lib/express/server.d.ts +0 -18
- package/lib/express/server.js +0 -70
- package/lib/express/server.js.map +0 -1
- package/lib/index.d.ts +0 -20
- package/lib/index.js +0 -19
- package/lib/index.js.map +0 -1
- package/lib/inject.d.ts +0 -22
- package/lib/inject.js +0 -29
- package/lib/inject.js.map +0 -1
- package/lib/logs/index.js +0 -6
- package/lib/logs/index.js.map +0 -1
- package/lib/logs/item.js +0 -34
- package/lib/logs/item.js.map +0 -1
- package/lib/logs/log.js +0 -7
- package/lib/logs/log.js.map +0 -1
- package/lib/logs/skill.js +0 -19
- package/lib/logs/skill.js.map +0 -1
- package/lib/logs/state.js +0 -13
- package/lib/logs/state.js.map +0 -1
- package/lib/models/Item.d.ts +0 -10
- package/lib/models/Item.js +0 -2
- package/lib/models/Item.js.map +0 -1
- package/lib/presets/index.js +0 -65
- package/lib/presets/index.js.map +0 -1
- package/lib/server.d.ts +0 -137
- package/lib/server.js +0 -443
- package/lib/server.js.map +0 -1
- package/rpg.toml +0 -14
- package/src/Game/EventManager.ts +0 -125
- package/src/Game/Map.ts +0 -500
- package/src/Game/WorldMaps.ts +0 -45
- package/src/Interfaces/Gui.ts +0 -4
- package/src/Interfaces/StateStore.ts +0 -5
- package/src/MatchMaker.ts +0 -65
- package/src/Monitor/index.ts +0 -78
- package/src/Query.ts +0 -172
- package/src/Scenes/Map.ts +0 -310
- package/src/decorators/event.ts +0 -58
- package/src/decorators/map.ts +0 -226
- package/src/entry-point.ts +0 -111
- package/src/express/api.ts +0 -118
- package/src/express/errors/NotAuthorized.ts +0 -6
- package/src/express/errors/NotFound.ts +0 -6
- package/src/express/server.ts +0 -94
- package/src/inject.ts +0 -33
- package/src/models/Item.ts +0 -11
- package/src/server.ts +0 -459
- /package/{lib → dist}/Gui/MenuGui.d.ts +0 -0
- /package/{lib → dist}/Gui/NotificationGui.d.ts +0 -0
- /package/{lib → dist}/Gui/ShopGui.d.ts +0 -0
- /package/{lib → dist}/Gui/index.d.ts +0 -0
- /package/{lib → dist}/logs/index.d.ts +0 -0
- /package/{lib → dist}/logs/item.d.ts +0 -0
- /package/{lib → dist}/logs/log.d.ts +0 -0
- /package/{lib → dist}/logs/skill.d.ts +0 -0
- /package/{lib → dist}/logs/state.d.ts +0 -0
- /package/{lib → dist}/presets/index.d.ts +0 -0
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { RpgPlayer } from './Player';
|
|
2
|
-
import { ItemFixture } from './ItemFixture';
|
|
3
|
-
import { ItemInstance } from '@rpgjs/database';
|
|
4
|
-
export declare class ElementManager extends ItemFixture {
|
|
5
|
-
_elementsEfficiency: {
|
|
6
|
-
rate: number;
|
|
7
|
-
element: any;
|
|
8
|
-
}[];
|
|
9
|
-
/**
|
|
10
|
-
* Recovers the player's elements defense on inventory. This list is generated from the `elementsDefense` 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 } from '@rpgjs/server'
|
|
15
|
-
*
|
|
16
|
-
* enum Elements {
|
|
17
|
-
* Fire = 'fire'
|
|
18
|
-
* }
|
|
19
|
-
*
|
|
20
|
-
* @Armor({
|
|
21
|
-
* name: 'Shield',
|
|
22
|
-
* elementsDefense: [{ rate: 1, element: Elements.Fire }]
|
|
23
|
-
* })
|
|
24
|
-
* class Shield {}
|
|
25
|
-
*
|
|
26
|
-
* @Armor({
|
|
27
|
-
* name: 'FireShield',
|
|
28
|
-
* elementsDefense: [{ rate: 0.5, element: Elements.Fire }]
|
|
29
|
-
* })
|
|
30
|
-
* class FireShield {}
|
|
31
|
-
*
|
|
32
|
-
* player.addItem(Shield)
|
|
33
|
-
* player.addItem(FireShield)
|
|
34
|
-
* player.equip(Shield)
|
|
35
|
-
* player.equip(FireShield)
|
|
36
|
-
*
|
|
37
|
-
* console.log(player.elementsDefense) // [{ rate: 1, element: 'fire' }]
|
|
38
|
-
* ```
|
|
39
|
-
* @title Get Elements Defense
|
|
40
|
-
* @prop {Array<{ rate: number, element: Element}>} player.elementsDefense
|
|
41
|
-
* @readonly
|
|
42
|
-
* @memberof ElementManager
|
|
43
|
-
* */
|
|
44
|
-
get elementsDefense(): {
|
|
45
|
-
rate: number;
|
|
46
|
-
element: any;
|
|
47
|
-
}[];
|
|
48
|
-
/**
|
|
49
|
-
* Set or retrieves all the elements where the player is vulnerable or not.
|
|
50
|
-
*
|
|
51
|
-
* ```ts
|
|
52
|
-
* import { Class } from '@rpgjs/server'
|
|
53
|
-
*
|
|
54
|
-
* enum Elements {
|
|
55
|
-
* Fire = 'fire',
|
|
56
|
-
* Ice = 'ice'
|
|
57
|
-
* }
|
|
58
|
-
*
|
|
59
|
-
* @Class({
|
|
60
|
-
* name: 'Fighter',
|
|
61
|
-
* elementsEfficiency: [{ rate: 1, element: Elements.Fire }]
|
|
62
|
-
* })
|
|
63
|
-
* class Hero {}
|
|
64
|
-
*
|
|
65
|
-
* player.setClass(Hero)
|
|
66
|
-
*
|
|
67
|
-
* console.log(player.elementsEfficiency) // [{ rate: 1, element: 'fire' }]
|
|
68
|
-
*
|
|
69
|
-
* player.elementsEfficiency = [{ rate: 2, element: Elements.Ice }]
|
|
70
|
-
*
|
|
71
|
-
* console.log(player.elementsEfficiency) // [{ rate: 1, element: 'fire' }, { rate: 2, element: 'ice' }]
|
|
72
|
-
* ```
|
|
73
|
-
* @title Set/Get Elements Efficiency
|
|
74
|
-
* @prop {Array<{ rate: number, element: Element}>} player.elementsEfficiency
|
|
75
|
-
* @memberof ElementManager
|
|
76
|
-
* */
|
|
77
|
-
get elementsEfficiency(): {
|
|
78
|
-
rate: number;
|
|
79
|
-
element: any;
|
|
80
|
-
}[];
|
|
81
|
-
set elementsEfficiency(val: {
|
|
82
|
-
rate: number;
|
|
83
|
-
element: any;
|
|
84
|
-
}[]);
|
|
85
|
-
/**
|
|
86
|
-
* Retrieves a array of elements assigned to the player and the elements of the weapons / armor equipped
|
|
87
|
-
*
|
|
88
|
-
* ```ts
|
|
89
|
-
* console.log(player.elements)
|
|
90
|
-
* ```
|
|
91
|
-
* @title Get Elements
|
|
92
|
-
* @prop {Array<Element>} player.elements
|
|
93
|
-
* @readonly
|
|
94
|
-
* @memberof ElementManager
|
|
95
|
-
* */
|
|
96
|
-
get elements(): {
|
|
97
|
-
rate: number;
|
|
98
|
-
element: string;
|
|
99
|
-
}[];
|
|
100
|
-
coefficientElements(otherPlayer: RpgPlayer): number;
|
|
101
|
-
}
|
|
102
|
-
export interface ElementManager {
|
|
103
|
-
equipments: ItemInstance[];
|
|
104
|
-
getFormulas: (name: string) => any;
|
|
105
|
-
_class: any;
|
|
106
|
-
}
|
|
107
|
-
export interface ElementManager extends ItemFixture {
|
|
108
|
-
}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { Utils } from '@rpgjs/common';
|
|
2
|
-
import { ItemFixture } from './ItemFixture.js';
|
|
3
|
-
const { arrayUniq, applyMixins } = Utils;
|
|
4
|
-
export class ElementManager extends ItemFixture {
|
|
5
|
-
/**
|
|
6
|
-
* Recovers the player's elements defense on inventory. This list is generated from the `elementsDefense` property defined on the weapons or armors equipped.
|
|
7
|
-
* If several items have the same element, only the highest rate will be taken into account.
|
|
8
|
-
*
|
|
9
|
-
* ```ts
|
|
10
|
-
* import { Armor } from '@rpgjs/server'
|
|
11
|
-
*
|
|
12
|
-
* enum Elements {
|
|
13
|
-
* Fire = 'fire'
|
|
14
|
-
* }
|
|
15
|
-
*
|
|
16
|
-
* @Armor({
|
|
17
|
-
* name: 'Shield',
|
|
18
|
-
* elementsDefense: [{ rate: 1, element: Elements.Fire }]
|
|
19
|
-
* })
|
|
20
|
-
* class Shield {}
|
|
21
|
-
*
|
|
22
|
-
* @Armor({
|
|
23
|
-
* name: 'FireShield',
|
|
24
|
-
* elementsDefense: [{ rate: 0.5, element: Elements.Fire }]
|
|
25
|
-
* })
|
|
26
|
-
* class FireShield {}
|
|
27
|
-
*
|
|
28
|
-
* player.addItem(Shield)
|
|
29
|
-
* player.addItem(FireShield)
|
|
30
|
-
* player.equip(Shield)
|
|
31
|
-
* player.equip(FireShield)
|
|
32
|
-
*
|
|
33
|
-
* console.log(player.elementsDefense) // [{ rate: 1, element: 'fire' }]
|
|
34
|
-
* ```
|
|
35
|
-
* @title Get Elements Defense
|
|
36
|
-
* @prop {Array<{ rate: number, element: Element}>} player.elementsDefense
|
|
37
|
-
* @readonly
|
|
38
|
-
* @memberof ElementManager
|
|
39
|
-
* */
|
|
40
|
-
get elementsDefense() {
|
|
41
|
-
return this.getFeature('elementsDefense', 'element');
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* Set or retrieves all the elements where the player is vulnerable or not.
|
|
45
|
-
*
|
|
46
|
-
* ```ts
|
|
47
|
-
* import { Class } from '@rpgjs/server'
|
|
48
|
-
*
|
|
49
|
-
* enum Elements {
|
|
50
|
-
* Fire = 'fire',
|
|
51
|
-
* Ice = 'ice'
|
|
52
|
-
* }
|
|
53
|
-
*
|
|
54
|
-
* @Class({
|
|
55
|
-
* name: 'Fighter',
|
|
56
|
-
* elementsEfficiency: [{ rate: 1, element: Elements.Fire }]
|
|
57
|
-
* })
|
|
58
|
-
* class Hero {}
|
|
59
|
-
*
|
|
60
|
-
* player.setClass(Hero)
|
|
61
|
-
*
|
|
62
|
-
* console.log(player.elementsEfficiency) // [{ rate: 1, element: 'fire' }]
|
|
63
|
-
*
|
|
64
|
-
* player.elementsEfficiency = [{ rate: 2, element: Elements.Ice }]
|
|
65
|
-
*
|
|
66
|
-
* console.log(player.elementsEfficiency) // [{ rate: 1, element: 'fire' }, { rate: 2, element: 'ice' }]
|
|
67
|
-
* ```
|
|
68
|
-
* @title Set/Get Elements Efficiency
|
|
69
|
-
* @prop {Array<{ rate: number, element: Element}>} player.elementsEfficiency
|
|
70
|
-
* @memberof ElementManager
|
|
71
|
-
* */
|
|
72
|
-
get elementsEfficiency() {
|
|
73
|
-
if (this._class) {
|
|
74
|
-
return [...this._elementsEfficiency, ...this._class.elementsEfficiency];
|
|
75
|
-
}
|
|
76
|
-
return this._elementsEfficiency;
|
|
77
|
-
}
|
|
78
|
-
set elementsEfficiency(val) {
|
|
79
|
-
this._elementsEfficiency = val;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Retrieves a array of elements assigned to the player and the elements of the weapons / armor equipped
|
|
83
|
-
*
|
|
84
|
-
* ```ts
|
|
85
|
-
* console.log(player.elements)
|
|
86
|
-
* ```
|
|
87
|
-
* @title Get Elements
|
|
88
|
-
* @prop {Array<Element>} player.elements
|
|
89
|
-
* @readonly
|
|
90
|
-
* @memberof ElementManager
|
|
91
|
-
* */
|
|
92
|
-
get elements() {
|
|
93
|
-
let elements = [];
|
|
94
|
-
for (let item of this.equipments) {
|
|
95
|
-
if (item.elements) {
|
|
96
|
-
elements = [...elements, ...item.elements];
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
return arrayUniq(elements);
|
|
100
|
-
}
|
|
101
|
-
coefficientElements(otherPlayer) {
|
|
102
|
-
const atkPlayerElements = otherPlayer.elements;
|
|
103
|
-
const playerElements = this.elementsEfficiency;
|
|
104
|
-
let coefficient = 1;
|
|
105
|
-
for (let atkElement of atkPlayerElements) {
|
|
106
|
-
const elementPlayer = playerElements.find(el => el.element == atkElement.element);
|
|
107
|
-
const elementPlayerDef = this.elementsDefense.find(el => el.element == atkElement.element);
|
|
108
|
-
if (!elementPlayer)
|
|
109
|
-
continue;
|
|
110
|
-
const fn = this.getFormulas('coefficientElements');
|
|
111
|
-
if (!fn) {
|
|
112
|
-
return coefficient;
|
|
113
|
-
}
|
|
114
|
-
coefficient += fn(atkElement, elementPlayer, elementPlayerDef || { rate: 0 });
|
|
115
|
-
}
|
|
116
|
-
return coefficient;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
applyMixins(ElementManager, [ItemFixture]);
|
|
120
|
-
//# sourceMappingURL=ElementManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ElementManager.js","sourceRoot":"","sources":["../../src/Player/ElementManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAO,eAAe,CAAA;AAEtC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,EACF,SAAS,EACT,WAAW,EACd,GAAG,KAAK,CAAA;AAET,MAAM,OAAO,cAAe,SAAQ,WAAW;IAG1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAkCI;IACL,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAA;IACxD,CAAC;IAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA4BI;IACL,IAAI,kBAAkB;QAClB,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,OAAY,CAAC,GAAG,IAAI,CAAC,mBAAmB,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAA;SAC/E;QACD,OAAO,IAAI,CAAC,mBAAmB,CAAA;IACnC,CAAC;IAED,IAAI,kBAAkB,CAAC,GAAG;QACtB,IAAI,CAAC,mBAAmB,GAAG,GAAG,CAAA;IAClC,CAAC;IAED;;;;;;;;;;SAUK;IACL,IAAI,QAAQ;QAIR,IAAI,QAAQ,GAAQ,EAAE,CAAA;QACtB,KAAK,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;YAC9B,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAA;aAC7C;SACJ;QACD,OAAO,SAAS,CAAC,QAAQ,CAAC,CAAA;IAC9B,CAAC;IAED,mBAAmB,CAAC,WAAsB;QACtC,MAAM,iBAAiB,GAAQ,WAAW,CAAC,QAAQ,CAAA;QACnD,MAAM,cAAc,GAAQ,IAAI,CAAC,kBAAkB,CAAA;QACnD,IAAI,WAAW,GAAG,CAAC,CAAA;QAEnB,KAAK,IAAI,UAAU,IAAI,iBAAiB,EAAE;YACtC,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;YACjF,MAAM,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,CAAA;YAC1F,IAAI,CAAC,aAAa;gBAAE,SAAQ;YAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,CAAA;YAClD,IAAI,CAAC,EAAE,EAAE;gBACL,OAAO,WAAW,CAAA;aACrB;YACD,WAAW,IAAI,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,gBAAgB,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAA;SAChF;QACD,OAAO,WAAW,CAAA;IACtB,CAAC;CACJ;AASD,WAAW,CAAC,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
export declare class GoldManager {
|
|
2
|
-
private _gold;
|
|
3
|
-
/**
|
|
4
|
-
* You can change the game money
|
|
5
|
-
*
|
|
6
|
-
* ```ts
|
|
7
|
-
* player.gold += 100
|
|
8
|
-
* ```
|
|
9
|
-
*
|
|
10
|
-
* @title Change Gold
|
|
11
|
-
* @prop {number} player.gold
|
|
12
|
-
* @default 0
|
|
13
|
-
* @memberof GoldManager
|
|
14
|
-
* */
|
|
15
|
-
set gold(val: number);
|
|
16
|
-
get gold(): number;
|
|
17
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export class GoldManager {
|
|
2
|
-
constructor() {
|
|
3
|
-
this._gold = 0;
|
|
4
|
-
}
|
|
5
|
-
/**
|
|
6
|
-
* You can change the game money
|
|
7
|
-
*
|
|
8
|
-
* ```ts
|
|
9
|
-
* player.gold += 100
|
|
10
|
-
* ```
|
|
11
|
-
*
|
|
12
|
-
* @title Change Gold
|
|
13
|
-
* @prop {number} player.gold
|
|
14
|
-
* @default 0
|
|
15
|
-
* @memberof GoldManager
|
|
16
|
-
* */
|
|
17
|
-
set gold(val) {
|
|
18
|
-
if (val < 0) {
|
|
19
|
-
val = 0;
|
|
20
|
-
}
|
|
21
|
-
this._gold = val;
|
|
22
|
-
}
|
|
23
|
-
get gold() {
|
|
24
|
-
return this._gold;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=GoldManager.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GoldManager.js","sourceRoot":"","sources":["../../src/Player/GoldManager.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,WAAW;IAAxB;QACY,UAAK,GAAW,CAAC,CAAA;IAwB7B,CAAC;IAtBI;;;;;;;;;;;QAWI;IACL,IAAI,IAAI,CAAC,GAAW;QAChB,IAAI,GAAG,GAAG,CAAC,EAAE;YACT,GAAG,GAAG,CAAC,CAAA;SACV;QACD,IAAI,CAAC,KAAK,GAAG,GAAG,CAAA;IACpB,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,KAAK,CAAA;IACrB,CAAC;CACJ"}
|
|
@@ -1,247 +0,0 @@
|
|
|
1
|
-
import { RpgPlayer } from './Player';
|
|
2
|
-
import { Gui } from '../Gui';
|
|
3
|
-
import { DialogOptions, Choice } from '../Gui/DialogGui';
|
|
4
|
-
export declare class GuiManager {
|
|
5
|
-
_gui: {
|
|
6
|
-
[id: string]: Gui;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Show a text. This is a graphical interface already built. Opens the GUI named `rpg-dialog`
|
|
10
|
-
*
|
|
11
|
-
* ```ts
|
|
12
|
-
* player.showText('Hello World')
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* The method returns a promise. It is resolved when the dialog box is closed.
|
|
16
|
-
*
|
|
17
|
-
* ```ts
|
|
18
|
-
* await player.showText('Hello World')
|
|
19
|
-
* // dialog box is closed, then ...
|
|
20
|
-
* ```
|
|
21
|
-
*
|
|
22
|
-
* **Option: position**
|
|
23
|
-
*
|
|
24
|
-
* You can define how the dialog box is displayed:
|
|
25
|
-
* - top
|
|
26
|
-
* - middle
|
|
27
|
-
* - bottom
|
|
28
|
-
*
|
|
29
|
-
* (bottom by default)
|
|
30
|
-
*
|
|
31
|
-
* ```ts
|
|
32
|
-
* player.showText('Hello World', {
|
|
33
|
-
* position: 'top'
|
|
34
|
-
* })
|
|
35
|
-
* ```
|
|
36
|
-
*
|
|
37
|
-
* **Option: fullWidth**
|
|
38
|
-
*
|
|
39
|
-
* `boolean` (true by default)
|
|
40
|
-
*
|
|
41
|
-
* Indicate that the dialog box will take the full width of the screen.
|
|
42
|
-
*
|
|
43
|
-
* ```ts
|
|
44
|
-
* player.showText('Hello World', {
|
|
45
|
-
* fullWidth: true
|
|
46
|
-
* })
|
|
47
|
-
* ```
|
|
48
|
-
*
|
|
49
|
-
* **Option: autoClose**
|
|
50
|
-
*
|
|
51
|
-
* `boolean` (false by default)
|
|
52
|
-
*
|
|
53
|
-
* If false, the user will have to press Enter to close the dialog box.
|
|
54
|
-
*
|
|
55
|
-
* ```ts
|
|
56
|
-
* player.showText('Hello World', {
|
|
57
|
-
* autoClose: true
|
|
58
|
-
* })
|
|
59
|
-
* ```
|
|
60
|
-
*
|
|
61
|
-
* **Option: typewriterEffect**
|
|
62
|
-
*
|
|
63
|
-
* `boolean` (true by default)
|
|
64
|
-
*
|
|
65
|
-
* Performs a typewriter effect
|
|
66
|
-
*
|
|
67
|
-
* ```ts
|
|
68
|
-
* player.showText('Hello World', {
|
|
69
|
-
* typewriterEffect: false
|
|
70
|
-
* })
|
|
71
|
-
* ```
|
|
72
|
-
*
|
|
73
|
-
* **Option: talkWith**
|
|
74
|
-
*
|
|
75
|
-
* `RpgPlayer` (nothing by default)
|
|
76
|
-
*
|
|
77
|
-
* If you specify the event or another player, the other player will stop his or her movement and look in the player's direction.
|
|
78
|
-
*
|
|
79
|
-
* ```ts
|
|
80
|
-
* // Code in an event
|
|
81
|
-
* player.showText('Hello World', {
|
|
82
|
-
* talkWith: this
|
|
83
|
-
* })
|
|
84
|
-
* ```
|
|
85
|
-
*
|
|
86
|
-
* @title Show Text
|
|
87
|
-
* @method player.showText(text,options)
|
|
88
|
-
* @param {string} text
|
|
89
|
-
* @param {object} [options] the different options, see usage below
|
|
90
|
-
* @returns {Promise}
|
|
91
|
-
* @memberof GuiManager
|
|
92
|
-
*/
|
|
93
|
-
showText(msg: string, options?: DialogOptions): Promise<any>;
|
|
94
|
-
/**
|
|
95
|
-
* Shows a dialog box with a choice. Opens the GUI named `rpg-dialog`
|
|
96
|
-
*
|
|
97
|
-
* ```ts
|
|
98
|
-
* const choice = await player.showChoices('What color do you prefer?', [
|
|
99
|
-
* { text: 'Black', value: 'black' },
|
|
100
|
-
* { text: 'Rather the blue', value: 'blue' },
|
|
101
|
-
* { text: 'I don\'t have a preference!', value: 'none' }
|
|
102
|
-
* ])
|
|
103
|
-
*
|
|
104
|
-
* // If the player selects the first
|
|
105
|
-
* console.log(choice) // { text: 'Black', value: 'black' }
|
|
106
|
-
* ```
|
|
107
|
-
*
|
|
108
|
-
* @title Show Choices
|
|
109
|
-
* @method player.showChoices(text,choices)
|
|
110
|
-
* @param {string} text
|
|
111
|
-
* @param {Array<{ text: string, value: any }>} choices
|
|
112
|
-
* @param {object} [options] Same options as the openDialog method
|
|
113
|
-
* @returns {Promise<Choice | null>}
|
|
114
|
-
* @memberof GuiManager
|
|
115
|
-
*/
|
|
116
|
-
showChoices(msg: string, choices: Choice[], options?: DialogOptions): Promise<Choice | null>;
|
|
117
|
-
/**
|
|
118
|
-
* Displays a notification . Opens the GUI named `rpg-notification`
|
|
119
|
-
*
|
|
120
|
-
* @title Displays a notification
|
|
121
|
-
* @method player.showNotification()
|
|
122
|
-
* @param {string} message - The message to display in the notification
|
|
123
|
-
* @param {object} options - An object containing options for the notification
|
|
124
|
-
* @param {number} options.time - The time to display the notification for (in ms). Default: 2000ms
|
|
125
|
-
* @param {string} options.icon - The icon to display in the notification. Put the identifier of the spritesheet (defined on the client side)
|
|
126
|
-
* @param {string} options.sound - The sound to play when the notification is shown. Set the sound ID (defined on the client side)
|
|
127
|
-
* @returns {void}
|
|
128
|
-
* @memberof GuiManager
|
|
129
|
-
*/
|
|
130
|
-
showNotification(message: string, options?: {
|
|
131
|
-
time?: number;
|
|
132
|
-
icon?: string;
|
|
133
|
-
sound?: string;
|
|
134
|
-
}): Promise<any>;
|
|
135
|
-
/**
|
|
136
|
-
* Calls main menu. Opens the GUI named `rpg-main-menu`
|
|
137
|
-
*
|
|
138
|
-
* @title Call Main Menu
|
|
139
|
-
* @method player.callMainMenu()
|
|
140
|
-
* @returns {void}
|
|
141
|
-
* @memberof GuiManager
|
|
142
|
-
*/
|
|
143
|
-
callMainMenu(): Promise<any>;
|
|
144
|
-
/**
|
|
145
|
-
* Calls shop menu. Opens the GUI named `rpg-shop`
|
|
146
|
-
*
|
|
147
|
-
* @title Call Shop Menu
|
|
148
|
-
* @method player.callShop()
|
|
149
|
-
* @returns {void}
|
|
150
|
-
* @memberof GuiManager
|
|
151
|
-
*/
|
|
152
|
-
callShop(items: any[]): Promise<any>;
|
|
153
|
-
/**
|
|
154
|
-
* Call a custom Gui
|
|
155
|
-
|
|
156
|
-
* ```ts
|
|
157
|
-
* // Calls a client-side component, created with VueJS, named "inn".
|
|
158
|
-
* const gui = player.gui('inn')
|
|
159
|
-
*
|
|
160
|
-
* // You can wait for actions on the menu. It only works if the menu is open.
|
|
161
|
-
* gui.on('accept', () => {
|
|
162
|
-
* player.allRecovery()
|
|
163
|
-
* })
|
|
164
|
-
*
|
|
165
|
-
* // The GUI is opened by passing recoverable data on the client side.
|
|
166
|
-
* gui.open({ hello: 'world' })
|
|
167
|
-
* ```
|
|
168
|
-
*
|
|
169
|
-
* When opening the GUI, one can give options
|
|
170
|
-
*
|
|
171
|
-
* ```ts
|
|
172
|
-
* await gui.open({ hello: 'world' }, {
|
|
173
|
-
* waitingAction: true,
|
|
174
|
-
* blockPlayerInput: true
|
|
175
|
-
* })
|
|
176
|
-
* // After the GUI is closed
|
|
177
|
-
* ```
|
|
178
|
-
*
|
|
179
|
-
* - `blockPlayerInput`: while the GUI is open, the player can not move on the map
|
|
180
|
-
* - `waitingAction`: We explicitly wait until the GUI is closed for the promise to be resolved.
|
|
181
|
-
*
|
|
182
|
-
* @title Call custom GUI
|
|
183
|
-
* @method player.gui(guiId)
|
|
184
|
-
* @param {string} guiId
|
|
185
|
-
* @returns {Gui}
|
|
186
|
-
* @memberof GuiManager
|
|
187
|
-
*/
|
|
188
|
-
gui(guiId: string): Gui;
|
|
189
|
-
/**
|
|
190
|
-
* Closes the GUI and removes it from memory
|
|
191
|
-
*
|
|
192
|
-
* @title Close custom GUI
|
|
193
|
-
* @method player.removeGui(guiId,data)
|
|
194
|
-
* @param {string} guiId
|
|
195
|
-
* @param {object} [data] Passing data if you close the GUI
|
|
196
|
-
* @returns {Gui}
|
|
197
|
-
* @memberof GuiManager
|
|
198
|
-
*/
|
|
199
|
-
removeGui(guiId: string, data?: any): void;
|
|
200
|
-
private _attachedGui;
|
|
201
|
-
/**
|
|
202
|
-
* Display the GUI attached to the players
|
|
203
|
-
*
|
|
204
|
-
* If you don't specify the players as parameters, it will display the GUI of the instance
|
|
205
|
-
* But you can specify which GUIs to display by specifying the players as the first parameter
|
|
206
|
-
*
|
|
207
|
-
* @title View to GUI attached
|
|
208
|
-
* @method player.showAttachedGui(players?)
|
|
209
|
-
* @param {RpgPlayer[] | RpgPlayer} [players] The GUIs attached to the players to display
|
|
210
|
-
* @since 3.0.0-beta.5
|
|
211
|
-
* @example
|
|
212
|
-
* ```ts
|
|
213
|
-
* player.showAttachedGui()
|
|
214
|
-
* ```
|
|
215
|
-
* ```ts
|
|
216
|
-
* player.showAttachedGui(aPlayer)
|
|
217
|
-
* ```
|
|
218
|
-
* ```ts
|
|
219
|
-
* player.showAttachedGui([player1, player2])
|
|
220
|
-
* ```
|
|
221
|
-
* @memberof GuiManager
|
|
222
|
-
* */
|
|
223
|
-
showAttachedGui(players?: RpgPlayer[] | RpgPlayer): void;
|
|
224
|
-
/**
|
|
225
|
-
* Hide the GUI attached to the players
|
|
226
|
-
*
|
|
227
|
-
* @title Hide to GUI attached
|
|
228
|
-
* @method player.hideAttachedGui(players?)
|
|
229
|
-
* @param {RpgPlayer[] | RpgPlayer} [players] The GUIs attached to the players to hide
|
|
230
|
-
* @since 3.0.0-beta.5
|
|
231
|
-
* @example
|
|
232
|
-
* ```ts
|
|
233
|
-
* player.hideAttachedGui()
|
|
234
|
-
* ```
|
|
235
|
-
* ```ts
|
|
236
|
-
* player.hideAttachedGui(aPlayer)
|
|
237
|
-
* ```
|
|
238
|
-
* ```ts
|
|
239
|
-
* player.hideAttachedGui([player1, player2])
|
|
240
|
-
* ```
|
|
241
|
-
* @memberof GuiManager
|
|
242
|
-
* */
|
|
243
|
-
hideAttachedGui(players?: RpgPlayer[] | RpgPlayer): void;
|
|
244
|
-
}
|
|
245
|
-
export interface GuiManager {
|
|
246
|
-
emit: any;
|
|
247
|
-
}
|