@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,333 +0,0 @@
|
|
|
1
|
-
import { Direction, RpgShape, Vector2d } from '@rpgjs/common';
|
|
2
|
-
import { Behavior, ClientMode, MoveMode, MoveTo, PositionXY, SocketEvents } from '@rpgjs/types';
|
|
3
|
-
import { Observable, Subject } from 'rxjs';
|
|
4
|
-
import { RpgServerEngine } from '../server';
|
|
5
|
-
import { RpgEvent, RpgPlayer } from './Player';
|
|
6
|
-
type CallbackTileMove = (player: RpgPlayer, map: any) => Direction[];
|
|
7
|
-
type CallbackTurnMove = (player: RpgPlayer, map: any) => string;
|
|
8
|
-
type Routes = (string | Promise<any> | Direction | Direction[] | Function)[];
|
|
9
|
-
export declare enum Frequency {
|
|
10
|
-
Lowest = 600,
|
|
11
|
-
Lower = 400,
|
|
12
|
-
Low = 200,
|
|
13
|
-
High = 100,
|
|
14
|
-
Higher = 50,
|
|
15
|
-
Highest = 25,
|
|
16
|
-
None = 0
|
|
17
|
-
}
|
|
18
|
-
export declare enum Speed {
|
|
19
|
-
Slowest = 0.2,
|
|
20
|
-
Slower = 0.5,
|
|
21
|
-
Slow = 1,
|
|
22
|
-
Normal = 3,
|
|
23
|
-
Fast = 5,
|
|
24
|
-
Faster = 7,
|
|
25
|
-
Fastest = 10
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* @title Move
|
|
29
|
-
* @enum {Object}
|
|
30
|
-
*
|
|
31
|
-
* Move.right(repeat=1) | Movement of a number of pixels on the right
|
|
32
|
-
* Move.left(repeat=1) | Movement of a number of pixels on the left
|
|
33
|
-
* Move.up(repeat=1) | Movement of a number of pixels on the up
|
|
34
|
-
* Move.down(repeat=1) | Movement of a number of pixels on the down
|
|
35
|
-
* Move.random(repeat=1) | Movement of a number of pixels in a random direction
|
|
36
|
-
* Move.towardPlayer(player, repeat=1) | Moves a number of pixels in the direction of the designated player
|
|
37
|
-
* Move.awayFromPlayer(player, repeat=1) | Moves a number of pixels in the opposite direction of the designated player
|
|
38
|
-
* Move.tileRight(repeat=1) | Movement of a number of tiles on the right
|
|
39
|
-
* Move.tileLeft(repeat=1) | Movement of a number of tiles on the left
|
|
40
|
-
* Move.tileUp(repeat=1) | Movement of a number of tiles on the up
|
|
41
|
-
* Move.tileDown(repeat=1) | Movement of a number of tiles on the down
|
|
42
|
-
* Move.tileRandom(repeat=1) | Movement of a number of tiles in a random direction
|
|
43
|
-
* Move.tileTowardPlayer(player, repeat=1) | Moves a number of tiles in the direction of the designated player
|
|
44
|
-
* Move.tileAwayFromPlayer(player, repeat=1) | Moves a number of tiles in the opposite direction of the designated player
|
|
45
|
-
* Move.turnRight() | Turn to the right
|
|
46
|
-
* Move.turnLeft() | Turn to the left
|
|
47
|
-
* Move.turnUp() | Turn to the up
|
|
48
|
-
* Move.turnDown() | Turn to the down
|
|
49
|
-
* Move.turnRandom() | Turn to random direction
|
|
50
|
-
* Move.turnAwayFromPlayer(player) | Turns in the opposite direction of the designated player
|
|
51
|
-
* Move.turnTowardPlayer(player) | Turns in the direction of the designated player
|
|
52
|
-
* @memberof Move
|
|
53
|
-
* */
|
|
54
|
-
declare class MoveList {
|
|
55
|
-
repeatMove(direction: Direction, repeat: number): Direction[];
|
|
56
|
-
private repeatTileMove;
|
|
57
|
-
right(repeat?: number): Direction[];
|
|
58
|
-
left(repeat?: number): Direction[];
|
|
59
|
-
up(repeat?: number): Direction[];
|
|
60
|
-
down(repeat?: number): Direction[];
|
|
61
|
-
wait(sec: number): Promise<unknown>;
|
|
62
|
-
random(repeat?: number): Direction[];
|
|
63
|
-
tileRight(repeat?: number): CallbackTileMove;
|
|
64
|
-
tileLeft(repeat?: number): CallbackTileMove;
|
|
65
|
-
tileUp(repeat?: number): CallbackTileMove;
|
|
66
|
-
tileDown(repeat?: number): CallbackTileMove;
|
|
67
|
-
tileRandom(repeat?: number): CallbackTileMove;
|
|
68
|
-
private _awayFromPlayerDirection;
|
|
69
|
-
private _towardPlayerDirection;
|
|
70
|
-
private _awayFromPlayer;
|
|
71
|
-
towardPlayer(player: RpgPlayer, repeat?: number): (player: RpgPlayer, map: any) => any;
|
|
72
|
-
tileTowardPlayer(player: RpgPlayer, repeat?: number): (player: RpgPlayer, map: any) => any;
|
|
73
|
-
awayFromPlayer(player: RpgPlayer, repeat?: number): CallbackTileMove;
|
|
74
|
-
tileAwayFromPlayer(player: RpgPlayer, repeat?: number): CallbackTileMove;
|
|
75
|
-
turnLeft(): string;
|
|
76
|
-
turnRight(): string;
|
|
77
|
-
turnUp(): string;
|
|
78
|
-
turnDown(): string;
|
|
79
|
-
turnRandom(): string;
|
|
80
|
-
turnAwayFromPlayer(otherPlayer: RpgPlayer): CallbackTurnMove;
|
|
81
|
-
turnTowardPlayer(otherPlayer: RpgPlayer): CallbackTurnMove;
|
|
82
|
-
}
|
|
83
|
-
export declare const Move: MoveList;
|
|
84
|
-
export declare class MoveManager {
|
|
85
|
-
private movingSubscription;
|
|
86
|
-
private _infiniteRoutes;
|
|
87
|
-
private _finishRoute;
|
|
88
|
-
/**
|
|
89
|
-
* Changes the player's speed
|
|
90
|
-
*
|
|
91
|
-
* ```ts
|
|
92
|
-
* player.speed = 1
|
|
93
|
-
* ```
|
|
94
|
-
*
|
|
95
|
-
* You can use Speed enum
|
|
96
|
-
*
|
|
97
|
-
* ```ts
|
|
98
|
-
* import { Speed } from '@rpgjs/server'
|
|
99
|
-
* player.speed = Speed.Slow
|
|
100
|
-
* ```
|
|
101
|
-
*
|
|
102
|
-
* @title Change Speed
|
|
103
|
-
* @prop {number} player.speed
|
|
104
|
-
* @enum {number}
|
|
105
|
-
*
|
|
106
|
-
* Speed.Slowest | 0.2
|
|
107
|
-
* Speed.Slower | 0.5
|
|
108
|
-
* Speed.Slow | 1
|
|
109
|
-
* Speed.Normal | 3
|
|
110
|
-
* Speed.Fast | 5
|
|
111
|
-
* Speed.Faster | 7
|
|
112
|
-
* Speed.Fastest | 10
|
|
113
|
-
* @default 3
|
|
114
|
-
* @memberof MoveManager
|
|
115
|
-
* */
|
|
116
|
-
speed: number;
|
|
117
|
-
/**
|
|
118
|
-
* Blocks the movement. The player will not be able to move even if he presses the direction keys on the keyboard.
|
|
119
|
-
*
|
|
120
|
-
* ```ts
|
|
121
|
-
* player.canMove = false
|
|
122
|
-
* ```
|
|
123
|
-
*
|
|
124
|
-
* @title Block movement
|
|
125
|
-
* @prop {boolean} player.canMove
|
|
126
|
-
* @default true
|
|
127
|
-
* @memberof MoveManager
|
|
128
|
-
* */
|
|
129
|
-
canMove: boolean;
|
|
130
|
-
/**
|
|
131
|
-
* The player passes through the other players (or vice versa). But the player does not go through the events.
|
|
132
|
-
*
|
|
133
|
-
* ```ts
|
|
134
|
-
* player.throughOtherPlayer = true
|
|
135
|
-
* ```
|
|
136
|
-
*
|
|
137
|
-
* @title Go through to other player
|
|
138
|
-
* @prop {boolean} player.throughOtherPlayer
|
|
139
|
-
* @default true
|
|
140
|
-
* @memberof MoveManager
|
|
141
|
-
* */
|
|
142
|
-
throughOtherPlayer: boolean;
|
|
143
|
-
/**
|
|
144
|
-
* The player goes through the event or the other players (or vice versa)
|
|
145
|
-
*
|
|
146
|
-
* ```ts
|
|
147
|
-
* player.through = true
|
|
148
|
-
* ```
|
|
149
|
-
*
|
|
150
|
-
* @title Go through the player
|
|
151
|
-
* @prop {boolean} player.through
|
|
152
|
-
* @default false
|
|
153
|
-
* @memberof MoveManager
|
|
154
|
-
* */
|
|
155
|
-
through: boolean;
|
|
156
|
-
/**
|
|
157
|
-
* The frequency allows to put a stop time between each movement in the array of the moveRoutes() method.
|
|
158
|
-
* The value represents a dwell time in milliseconds. The higher the value, the slower the frequency.
|
|
159
|
-
*
|
|
160
|
-
* ```ts
|
|
161
|
-
* player.frequency = 400
|
|
162
|
-
* ```
|
|
163
|
-
*
|
|
164
|
-
* You can use Frequency enum
|
|
165
|
-
*
|
|
166
|
-
* ```ts
|
|
167
|
-
* import { Frequency } from '@rpgjs/server'
|
|
168
|
-
* player.frequency = Frequency.Low
|
|
169
|
-
* ```
|
|
170
|
-
*
|
|
171
|
-
* @title Change Frequency
|
|
172
|
-
* @prop {number} player.speed
|
|
173
|
-
* @enum {number}
|
|
174
|
-
*
|
|
175
|
-
* Frequency.Lowest | 600
|
|
176
|
-
* Frequency.Lower | 400
|
|
177
|
-
* Frequency.Low | 200
|
|
178
|
-
* Frequency.High | 100
|
|
179
|
-
* Frequency.Higher | 50
|
|
180
|
-
* Frequency.Highest | 25
|
|
181
|
-
* Frequency.None | 0
|
|
182
|
-
* @default 0
|
|
183
|
-
* @memberof MoveManager
|
|
184
|
-
* */
|
|
185
|
-
frequency: number;
|
|
186
|
-
/**
|
|
187
|
-
* Gives an itinerary.
|
|
188
|
-
*
|
|
189
|
-
* You can create your own motion function:
|
|
190
|
-
*
|
|
191
|
-
* ```ts
|
|
192
|
-
* import { Direction } from '@rpgjs/server'
|
|
193
|
-
*
|
|
194
|
-
* const customMove = () => {
|
|
195
|
-
* return [Direction.Left, Direction.Up]
|
|
196
|
-
* }
|
|
197
|
-
*
|
|
198
|
-
* player.moveRoutes([ customMove() ])
|
|
199
|
-
* ```
|
|
200
|
-
*
|
|
201
|
-
* Your function can also return a function:
|
|
202
|
-
*
|
|
203
|
-
* ```ts
|
|
204
|
-
* import { Direction, RpgPlayer } from '@rpgjs/server'
|
|
205
|
-
*
|
|
206
|
-
* // This function can be found in another file. By returning a function, you have access to the player who is making a move.
|
|
207
|
-
* const customMove = (otherPlayer: RpgPlayer) => {
|
|
208
|
-
* return (player: RpgPlayer, map) => {
|
|
209
|
-
* return otherPlayer.position.x > player.position.x ? Direction.Left : Direction.Right
|
|
210
|
-
* }
|
|
211
|
-
* }
|
|
212
|
-
*
|
|
213
|
-
* player.moveRoutes([ customMove(otherPlayer) ])
|
|
214
|
-
* ```
|
|
215
|
-
*
|
|
216
|
-
* the function contains two parameters:
|
|
217
|
-
*
|
|
218
|
-
* - `player`: the player concerned by the movement
|
|
219
|
-
* - `map`: The information of the current map
|
|
220
|
-
*
|
|
221
|
-
* @title Give an itinerary
|
|
222
|
-
* @method player.moveRoutes(routes)
|
|
223
|
-
* @param {Array<Move>} routes
|
|
224
|
-
* @returns {Promise}
|
|
225
|
-
* @memberof MoveManager
|
|
226
|
-
* @example
|
|
227
|
-
*
|
|
228
|
-
* ```ts
|
|
229
|
-
* import { Move } from '@rpgjs/server'
|
|
230
|
-
*
|
|
231
|
-
* await player.moveRoutes([ Move.tileLeft(), Move.tileDown(2) ])
|
|
232
|
-
* // The path is over when the promise is resolved
|
|
233
|
-
* ```
|
|
234
|
-
*/
|
|
235
|
-
moveRoutes(routes: Routes): Promise<boolean>;
|
|
236
|
-
/**
|
|
237
|
-
* Giving a path that repeats itself in a loop to a character
|
|
238
|
-
*
|
|
239
|
-
* You can stop the movement at any time with `breakRoutes()` and replay it with `replayRoutes()`.
|
|
240
|
-
*
|
|
241
|
-
* @title Infinite Move Routes
|
|
242
|
-
* @method player.infiniteMoveRoute(routes)
|
|
243
|
-
* @param {Array<Move>} routes
|
|
244
|
-
* @returns {void}
|
|
245
|
-
* @memberof MoveManager
|
|
246
|
-
* @example
|
|
247
|
-
*
|
|
248
|
-
* ```ts
|
|
249
|
-
* import { Move } from '@rpgjs/server'
|
|
250
|
-
*
|
|
251
|
-
* player.infiniteMoveRoute([ Move.tileRandom() ])
|
|
252
|
-
* ```
|
|
253
|
-
*/
|
|
254
|
-
infiniteMoveRoute(routes: Routes): void;
|
|
255
|
-
/**
|
|
256
|
-
* Works only for infinite movements. You must first use the method `infiniteMoveRoute()`
|
|
257
|
-
*
|
|
258
|
-
* @title Stop an infinite movement
|
|
259
|
-
* @method player.breakRoutes(force=false)
|
|
260
|
-
* @param {boolean} [force] Forces the stop of the infinite movement
|
|
261
|
-
* @returns {void}
|
|
262
|
-
* @memberof MoveManager
|
|
263
|
-
* @example
|
|
264
|
-
*
|
|
265
|
-
* ```ts
|
|
266
|
-
* import { Move } from '@rpgjs/server'
|
|
267
|
-
*
|
|
268
|
-
* player.infiniteMoveRoute([ Move.tileRandom() ])
|
|
269
|
-
* player.breakRoutes(true)
|
|
270
|
-
* ```
|
|
271
|
-
*/
|
|
272
|
-
breakRoutes(force?: boolean): void;
|
|
273
|
-
/**
|
|
274
|
-
* Works only for infinite movements. You must first use the method `infiniteMoveRoute()`
|
|
275
|
-
* If the road was stopped with `breakRoutes()`, you can restart it with this method
|
|
276
|
-
*
|
|
277
|
-
* @title Replay an infinite movement
|
|
278
|
-
* @method player.replayRoutes()
|
|
279
|
-
* @returns {void}
|
|
280
|
-
* @memberof MoveManager
|
|
281
|
-
* @example
|
|
282
|
-
*
|
|
283
|
-
* ```ts
|
|
284
|
-
* import { Move } from '@rpgjs/server'
|
|
285
|
-
*
|
|
286
|
-
* player.infiniteMoveRoute([ Move.tileRandom() ])
|
|
287
|
-
* player.breakRoutes(true)
|
|
288
|
-
* player.replayRoutes()
|
|
289
|
-
* ```
|
|
290
|
-
*/
|
|
291
|
-
replayRoutes(): void;
|
|
292
|
-
/**
|
|
293
|
-
* Move the event to another event, a player, a shape or a specific position.
|
|
294
|
-
* The event will avoid obstacles, but you can tell if it is stuck or has completed its path
|
|
295
|
-
*
|
|
296
|
-
* @title Move To
|
|
297
|
-
* @method player.moveTo()
|
|
298
|
-
* @param {RpgPlayer|RpgEvent|RpgShape|Position} target the target
|
|
299
|
-
* @param {object} [options] - animate. Set a boolean to use default parameters
|
|
300
|
-
* @param {boolean} [options.infinite=false] - moves infinitely towards the target, you have to stop its movement manually with the method `stopMoveTo()`
|
|
301
|
-
* @param {() => void} [options.onComplete] - Callback when the event arrives at the destination
|
|
302
|
-
* @param {(duration:number) => void} [options.onStuck] - callback when the event is blocked against a wall. Duration gives you the duration (in frames) of the blocking time
|
|
303
|
-
* @returns {Observable<void>}
|
|
304
|
-
* @since 3.2.0
|
|
305
|
-
* @memberof MoveManager
|
|
306
|
-
* @example
|
|
307
|
-
*
|
|
308
|
-
* ```ts
|
|
309
|
-
* import { Move } from '@rpgjs/server'
|
|
310
|
-
*
|
|
311
|
-
* player.moveTo(otherPlayer).subscribe()
|
|
312
|
-
* ```
|
|
313
|
-
*/
|
|
314
|
-
moveTo(event: RpgEvent, options?: MoveTo): Observable<void>;
|
|
315
|
-
moveTo(player: RpgPlayer, options?: MoveTo): Observable<void>;
|
|
316
|
-
moveTo(position: PositionXY, options?: MoveTo): Observable<void>;
|
|
317
|
-
moveTo(shape: RpgShape, options?: MoveTo): Observable<void>;
|
|
318
|
-
setMoveMode(mode: MoveMode): void;
|
|
319
|
-
}
|
|
320
|
-
export interface MoveManager {
|
|
321
|
-
moveByDirection: (direction: Direction, deltaTimeInt: number) => Promise<boolean>;
|
|
322
|
-
changeDirection: (direction: Direction) => boolean;
|
|
323
|
-
getCurrentMap: any;
|
|
324
|
-
checkCollision: boolean;
|
|
325
|
-
clientModeMove: ClientMode;
|
|
326
|
-
behavior: Behavior;
|
|
327
|
-
emit(name: SocketEvents, params: any): any;
|
|
328
|
-
id: string;
|
|
329
|
-
server: RpgServerEngine;
|
|
330
|
-
position: Vector2d;
|
|
331
|
-
_destroy$: Subject<void>;
|
|
332
|
-
}
|
|
333
|
-
export {};
|