@rpgjs/server 3.0.0-beta.6 → 3.0.0-beta.9
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/Game/Map.d.ts +15 -9
- package/lib/Game/Map.js +26 -5
- package/lib/Game/Map.js.map +1 -1
- package/lib/Game/WorldMaps.d.ts +16 -0
- package/lib/Game/WorldMaps.js +33 -0
- package/lib/Game/WorldMaps.js.map +1 -0
- package/lib/Interfaces/StateStore.d.ts +5 -0
- package/lib/Interfaces/StateStore.js +3 -0
- package/lib/Interfaces/StateStore.js.map +1 -0
- package/lib/MatchMaker.d.ts +24 -0
- package/lib/MatchMaker.js +58 -0
- package/lib/MatchMaker.js.map +1 -0
- package/lib/Player/MoveManager.js +19 -6
- package/lib/Player/MoveManager.js.map +1 -1
- package/lib/Player/Player.d.ts +70 -24
- package/lib/Player/Player.js +188 -72
- package/lib/Player/Player.js.map +1 -1
- package/lib/RpgServer.d.ts +142 -5
- package/lib/Scenes/Map.d.ts +76 -8
- package/lib/Scenes/Map.js +130 -13
- package/lib/Scenes/Map.js.map +1 -1
- package/lib/decorators/event.d.ts +1 -1
- package/lib/decorators/event.js +2 -2
- package/lib/decorators/event.js.map +1 -1
- package/lib/decorators/map.d.ts +6 -3
- package/lib/decorators/map.js.map +1 -1
- package/lib/entry-point.d.ts +1 -1
- package/lib/entry-point.js +61 -27
- package/lib/entry-point.js.map +1 -1
- package/lib/index.d.ts +7 -5
- package/lib/index.js +13 -8
- package/lib/index.js.map +1 -1
- package/lib/server.d.ts +8 -5
- package/lib/server.js +38 -10
- package/lib/server.js.map +1 -1
- package/package.json +8 -5
package/lib/Scenes/Map.d.ts
CHANGED
|
@@ -1,21 +1,81 @@
|
|
|
1
|
+
import { TiledMap } from '@rpgjs/tiled';
|
|
1
2
|
import { MapOptions } from '../decorators/map';
|
|
2
3
|
import { RpgMap } from '../Game/Map';
|
|
4
|
+
import { RpgWorldMaps, WorldMap } from '../Game/WorldMaps';
|
|
3
5
|
import { RpgPlayer } from '../Player/Player';
|
|
6
|
+
import { RpgServerEngine } from '../server';
|
|
7
|
+
export interface RpgClassMap<T> {
|
|
8
|
+
id?: string;
|
|
9
|
+
new (server: any): T;
|
|
10
|
+
}
|
|
4
11
|
export declare class SceneMap {
|
|
5
12
|
private maps;
|
|
6
13
|
private server;
|
|
7
14
|
static readonly id: string;
|
|
8
15
|
private mapsById;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
16
|
+
private worldMaps;
|
|
17
|
+
constructor(maps: any[], worldMaps: WorldMap[], server: RpgServerEngine);
|
|
18
|
+
getMapBydId(id: string): RpgClassMap<RpgMap> | null;
|
|
19
|
+
loadMap(id: string): Promise<RpgMap | undefined>;
|
|
20
|
+
/**
|
|
21
|
+
* Loads the content of a `.world` file from Tiled Map Editor into the map scene
|
|
22
|
+
*
|
|
23
|
+
* > Note, that if the map already exists (i.e. you have already defined an RpgMap), the world will retrieve the already existing map. Otherwise it will create a new map
|
|
24
|
+
*
|
|
25
|
+
* @title Create worlds dynamically
|
|
26
|
+
* @method sceneMap.createDynamicWorldMaps(world)
|
|
27
|
+
* @param {object} world
|
|
28
|
+
* object is
|
|
29
|
+
* ```ts
|
|
30
|
+
* {
|
|
31
|
+
* id?: string
|
|
32
|
+
* maps: {
|
|
33
|
+
* id?: string
|
|
34
|
+
* properties?: object
|
|
35
|
+
* fileName: string;
|
|
36
|
+
height: number;
|
|
37
|
+
width: number;
|
|
38
|
+
x: number;
|
|
39
|
+
y: number;
|
|
40
|
+
* }[],
|
|
41
|
+
onlyShowAdjacentMaps: boolean, // only for Tiled Map Editor
|
|
42
|
+
type: 'world' // only for Tiled Map Editor
|
|
43
|
+
* }
|
|
44
|
+
* ```
|
|
45
|
+
* @since 3.0.0-beta.8
|
|
46
|
+
* @memberof SceneMap
|
|
47
|
+
*/
|
|
48
|
+
createDynamicWorldMaps(world: WorldMap): RpgWorldMaps;
|
|
49
|
+
/**
|
|
50
|
+
* Recover a world
|
|
51
|
+
*
|
|
52
|
+
* @title Recover a world
|
|
53
|
+
* @method sceneMap.getWorldMaps(id)
|
|
54
|
+
* @param {string} id world id
|
|
55
|
+
* @return { RpgWorldMaps | undefined }
|
|
56
|
+
* @since 3.0.0-beta.8
|
|
57
|
+
* @memberof SceneMap
|
|
58
|
+
*/
|
|
59
|
+
getWorldMaps(id: string): RpgWorldMaps | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Delete a world
|
|
62
|
+
*
|
|
63
|
+
* @title Delete a world
|
|
64
|
+
* @method sceneMap.deleteWorldMaps(id)
|
|
65
|
+
* @param {string} id world id
|
|
66
|
+
* @since 3.0.0-beta.8
|
|
67
|
+
* @memberof SceneMap
|
|
68
|
+
*/
|
|
69
|
+
deleteWorldMaps(id: string): void;
|
|
12
70
|
/**
|
|
13
71
|
* Create a dynamic map
|
|
14
72
|
*
|
|
73
|
+
* Since version 3.0.0-beta.8, you can just pass the path to the file. The identifier will then be the name of the file
|
|
74
|
+
*
|
|
15
75
|
* @method sceneMap.createDynamicMap(mapData)
|
|
16
76
|
* @title Create a dynamic map
|
|
17
|
-
* @param {object | RpgMap} mapData The same property as [@MapData decorator](https://docs.rpgjs.dev/classes/map.html#mapdata-decorator)
|
|
18
|
-
* @returns {
|
|
77
|
+
* @param {object | RpgMap | string} mapData The same property as [@MapData decorator](https://docs.rpgjs.dev/classes/map.html#mapdata-decorator)
|
|
78
|
+
* @returns {RpgMap}
|
|
19
79
|
* @since 3.0.0-beta.4
|
|
20
80
|
* @memberof SceneMap
|
|
21
81
|
* @example
|
|
@@ -31,11 +91,19 @@ export declare class SceneMap {
|
|
|
31
91
|
* ```ts
|
|
32
92
|
* player.changeMap('myid')
|
|
33
93
|
* ```
|
|
94
|
+
*
|
|
95
|
+
* ---
|
|
96
|
+
*
|
|
97
|
+
* since beta.8
|
|
98
|
+
*
|
|
99
|
+
* ```ts
|
|
100
|
+
* sceneMap.createDynamicMap(require('./tmx/mymap.tmx')) // id is "mymap"
|
|
101
|
+
* ```
|
|
34
102
|
*/
|
|
35
|
-
createDynamicMap(mapData: MapOptions):
|
|
103
|
+
createDynamicMap(mapData: MapOptions | string | RpgClassMap<RpgMap> | TiledMap): RpgClassMap<RpgMap> | never;
|
|
36
104
|
changeMap(mapId: string, player: RpgPlayer, positions?: {
|
|
37
105
|
x: number;
|
|
38
106
|
y: number;
|
|
39
|
-
z
|
|
40
|
-
} | string): Promise<RpgMap>;
|
|
107
|
+
z?: number;
|
|
108
|
+
} | string): Promise<RpgMap | null | boolean>;
|
|
41
109
|
}
|
package/lib/Scenes/Map.js
CHANGED
|
@@ -18,25 +18,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
18
18
|
exports.SceneMap = void 0;
|
|
19
19
|
const common_1 = require("@rpgjs/common");
|
|
20
20
|
const sync_server_1 = require("@rpgjs/sync-server");
|
|
21
|
+
const tiled_1 = require("@rpgjs/tiled");
|
|
21
22
|
const map_1 = require("../decorators/map");
|
|
22
23
|
const Map_1 = require("../Game/Map");
|
|
24
|
+
const WorldMaps_1 = require("../Game/WorldMaps");
|
|
25
|
+
const Player_1 = require("../Player/Player");
|
|
23
26
|
class SceneMap {
|
|
24
|
-
constructor(maps, server) {
|
|
27
|
+
constructor(maps, worldMaps, server) {
|
|
25
28
|
this.maps = maps;
|
|
26
29
|
this.server = server;
|
|
27
30
|
this.mapsById = {};
|
|
31
|
+
this.worldMaps = new Map();
|
|
28
32
|
this.mapsById = {};
|
|
33
|
+
common_1.RpgCommonMap.buffer.clear();
|
|
29
34
|
if (this.maps) {
|
|
30
35
|
for (let map of this.maps) {
|
|
31
36
|
this.createDynamicMap(map);
|
|
32
37
|
}
|
|
33
38
|
}
|
|
39
|
+
if (this.worldMaps) {
|
|
40
|
+
for (let worldMap of worldMaps) {
|
|
41
|
+
this.createDynamicWorldMaps(worldMap);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
34
44
|
}
|
|
35
45
|
getMapBydId(id) {
|
|
36
46
|
let mapClass = this.mapsById[id];
|
|
37
47
|
if (!mapClass) {
|
|
38
|
-
|
|
39
|
-
return false;
|
|
48
|
+
return null;
|
|
40
49
|
}
|
|
41
50
|
if (!common_1.Utils.isClass(mapClass))
|
|
42
51
|
mapClass = common_1.Utils.createConstructor(mapClass);
|
|
@@ -45,27 +54,96 @@ class SceneMap {
|
|
|
45
54
|
loadMap(id) {
|
|
46
55
|
return __awaiter(this, void 0, void 0, function* () {
|
|
47
56
|
const mapClass = this.getMapBydId(id);
|
|
57
|
+
if (!mapClass) {
|
|
58
|
+
console.log(`Map ${id} not exists`);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
48
61
|
let mapInstance;
|
|
49
|
-
if (mapClass
|
|
50
|
-
return mapClass
|
|
62
|
+
if (mapClass['buffer'].has(id)) {
|
|
63
|
+
return mapClass['buffer'].get(id);
|
|
51
64
|
}
|
|
52
65
|
if (common_1.RpgCommonMap.buffer.has(id)) {
|
|
53
66
|
mapInstance = common_1.RpgCommonMap.buffer.get(id);
|
|
54
67
|
}
|
|
55
68
|
else {
|
|
56
|
-
|
|
69
|
+
const room = new mapClass(this.server);
|
|
70
|
+
room.$schema.users = [
|
|
71
|
+
Object.assign(Object.assign({}, Player_1.RpgPlayer.schemas), this.server['playerProps'])
|
|
72
|
+
];
|
|
73
|
+
mapInstance = sync_server_1.World.addRoom(id, room);
|
|
57
74
|
yield mapInstance.load();
|
|
58
75
|
}
|
|
59
76
|
return mapInstance;
|
|
60
77
|
});
|
|
61
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Loads the content of a `.world` file from Tiled Map Editor into the map scene
|
|
81
|
+
*
|
|
82
|
+
* > Note, that if the map already exists (i.e. you have already defined an RpgMap), the world will retrieve the already existing map. Otherwise it will create a new map
|
|
83
|
+
*
|
|
84
|
+
* @title Create worlds dynamically
|
|
85
|
+
* @method sceneMap.createDynamicWorldMaps(world)
|
|
86
|
+
* @param {object} world
|
|
87
|
+
* object is
|
|
88
|
+
* ```ts
|
|
89
|
+
* {
|
|
90
|
+
* id?: string
|
|
91
|
+
* maps: {
|
|
92
|
+
* id?: string
|
|
93
|
+
* properties?: object
|
|
94
|
+
* fileName: string;
|
|
95
|
+
height: number;
|
|
96
|
+
width: number;
|
|
97
|
+
x: number;
|
|
98
|
+
y: number;
|
|
99
|
+
* }[],
|
|
100
|
+
onlyShowAdjacentMaps: boolean, // only for Tiled Map Editor
|
|
101
|
+
type: 'world' // only for Tiled Map Editor
|
|
102
|
+
* }
|
|
103
|
+
* ```
|
|
104
|
+
* @since 3.0.0-beta.8
|
|
105
|
+
* @memberof SceneMap
|
|
106
|
+
*/
|
|
107
|
+
createDynamicWorldMaps(world) {
|
|
108
|
+
world.id = world.id || common_1.Utils.generateUID();
|
|
109
|
+
const worldMap = new WorldMaps_1.RpgWorldMaps(world.id).load(world, this);
|
|
110
|
+
this.worldMaps.set(world.id, worldMap);
|
|
111
|
+
return worldMap;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Recover a world
|
|
115
|
+
*
|
|
116
|
+
* @title Recover a world
|
|
117
|
+
* @method sceneMap.getWorldMaps(id)
|
|
118
|
+
* @param {string} id world id
|
|
119
|
+
* @return { RpgWorldMaps | undefined }
|
|
120
|
+
* @since 3.0.0-beta.8
|
|
121
|
+
* @memberof SceneMap
|
|
122
|
+
*/
|
|
123
|
+
getWorldMaps(id) {
|
|
124
|
+
return this.worldMaps.get(id);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Delete a world
|
|
128
|
+
*
|
|
129
|
+
* @title Delete a world
|
|
130
|
+
* @method sceneMap.deleteWorldMaps(id)
|
|
131
|
+
* @param {string} id world id
|
|
132
|
+
* @since 3.0.0-beta.8
|
|
133
|
+
* @memberof SceneMap
|
|
134
|
+
*/
|
|
135
|
+
deleteWorldMaps(id) {
|
|
136
|
+
this.worldMaps.delete(id);
|
|
137
|
+
}
|
|
62
138
|
/**
|
|
63
139
|
* Create a dynamic map
|
|
64
140
|
*
|
|
141
|
+
* Since version 3.0.0-beta.8, you can just pass the path to the file. The identifier will then be the name of the file
|
|
142
|
+
*
|
|
65
143
|
* @method sceneMap.createDynamicMap(mapData)
|
|
66
144
|
* @title Create a dynamic map
|
|
67
|
-
* @param {object | RpgMap} mapData The same property as [@MapData decorator](https://docs.rpgjs.dev/classes/map.html#mapdata-decorator)
|
|
68
|
-
* @returns {
|
|
145
|
+
* @param {object | RpgMap | string} mapData The same property as [@MapData decorator](https://docs.rpgjs.dev/classes/map.html#mapdata-decorator)
|
|
146
|
+
* @returns {RpgMap}
|
|
69
147
|
* @since 3.0.0-beta.4
|
|
70
148
|
* @memberof SceneMap
|
|
71
149
|
* @example
|
|
@@ -81,8 +159,34 @@ class SceneMap {
|
|
|
81
159
|
* ```ts
|
|
82
160
|
* player.changeMap('myid')
|
|
83
161
|
* ```
|
|
162
|
+
*
|
|
163
|
+
* ---
|
|
164
|
+
*
|
|
165
|
+
* since beta.8
|
|
166
|
+
*
|
|
167
|
+
* ```ts
|
|
168
|
+
* sceneMap.createDynamicMap(require('./tmx/mymap.tmx')) // id is "mymap"
|
|
169
|
+
* ```
|
|
84
170
|
*/
|
|
85
171
|
createDynamicMap(mapData) {
|
|
172
|
+
if (common_1.Utils.isString(mapData)) {
|
|
173
|
+
const id = common_1.Utils.extractId(mapData);
|
|
174
|
+
if (!id) {
|
|
175
|
+
throw new Error('Unable to extract the file identifier. Check that the file has only the following characters: [a-zA-Z0-9-_$!]+');
|
|
176
|
+
}
|
|
177
|
+
mapData = {
|
|
178
|
+
id: id[1],
|
|
179
|
+
file: mapData
|
|
180
|
+
};
|
|
181
|
+
}
|
|
182
|
+
if (tiled_1.isTiledFormat(mapData)) {
|
|
183
|
+
const tiledData = mapData;
|
|
184
|
+
mapData = {
|
|
185
|
+
file: Object.assign({}, tiledData)
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
if (!mapData.id)
|
|
189
|
+
mapData.id = common_1.Utils.generateUID();
|
|
86
190
|
if (!common_1.Utils.isClass(mapData)) {
|
|
87
191
|
let DynamicMap = class DynamicMap extends Map_1.RpgMap {
|
|
88
192
|
};
|
|
@@ -91,19 +195,33 @@ class SceneMap {
|
|
|
91
195
|
], DynamicMap);
|
|
92
196
|
mapData = DynamicMap;
|
|
93
197
|
}
|
|
94
|
-
|
|
95
|
-
this.mapsById[
|
|
198
|
+
const map = mapData;
|
|
199
|
+
this.mapsById[map.id] = map;
|
|
200
|
+
return map;
|
|
96
201
|
}
|
|
97
202
|
changeMap(mapId, player, positions) {
|
|
98
203
|
return __awaiter(this, void 0, void 0, function* () {
|
|
204
|
+
const boolArray = yield common_1.RpgPlugin.emit(common_1.HookServer.PlayerCanChangeMap, [player, this.getMapBydId(mapId)], true);
|
|
205
|
+
if (boolArray.some(el => el === false)) {
|
|
206
|
+
return null;
|
|
207
|
+
}
|
|
208
|
+
player.emit('preLoadScene', mapId);
|
|
99
209
|
player.prevMap = player.map;
|
|
100
210
|
if (player.prevMap) {
|
|
101
|
-
player.execMethod('onLeaveMap', [player.getCurrentMap()]);
|
|
211
|
+
yield player.execMethod('onLeaveMap', [player.getCurrentMap()]);
|
|
102
212
|
sync_server_1.World.leaveRoom(player.prevMap, player.id);
|
|
103
213
|
}
|
|
104
214
|
player.map = mapId;
|
|
105
215
|
player.events = {};
|
|
216
|
+
player.tmpPositions = positions;
|
|
217
|
+
const scalabilityArray = yield common_1.RpgPlugin.emit(common_1.HookServer.ScalabilityChangeServer, player);
|
|
218
|
+
if (scalabilityArray.some(el => el === true)) {
|
|
219
|
+
return true;
|
|
220
|
+
}
|
|
221
|
+
player.tmpPositions = null;
|
|
106
222
|
const mapInstance = yield this.loadMap(mapId);
|
|
223
|
+
if (!mapInstance)
|
|
224
|
+
return null;
|
|
107
225
|
if (!player.height)
|
|
108
226
|
player.height = mapInstance.tileHeight;
|
|
109
227
|
if (!player.width)
|
|
@@ -120,11 +238,10 @@ class SceneMap {
|
|
|
120
238
|
delete layer.map;
|
|
121
239
|
}
|
|
122
240
|
player.loadScene('map', Object.assign({ id: mapId, sounds: mapInstance.sounds }, serializeMap));
|
|
241
|
+
player.teleport(positions || 'start');
|
|
123
242
|
sync_server_1.World.joinRoom(mapId, player.id);
|
|
124
243
|
player = sync_server_1.World.getUser(player.id);
|
|
125
244
|
if (player) {
|
|
126
|
-
player.teleport(positions || 'start');
|
|
127
|
-
player.events = {};
|
|
128
245
|
player.createDynamicEvent(mapInstance._events, false);
|
|
129
246
|
player.execMethod('onJoinMap', [mapInstance]);
|
|
130
247
|
}
|
package/lib/Scenes/Map.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/Scenes/Map.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,
|
|
1
|
+
{"version":3,"file":"Map.js","sourceRoot":"","sources":["../../src/Scenes/Map.ts"],"names":[],"mappings":"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"}
|
package/lib/decorators/event.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EventData = void 0;
|
|
4
|
-
const
|
|
4
|
+
const Player_1 = require("../Player/Player");
|
|
5
5
|
function EventData(options) {
|
|
6
6
|
return (target) => {
|
|
7
|
-
target.mode = options.mode ||
|
|
7
|
+
target.mode = options.mode || Player_1.EventMode.Shared;
|
|
8
8
|
target.width = options.width;
|
|
9
9
|
target.height = options.height;
|
|
10
10
|
target.hitbox = options.hitbox;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/decorators/event.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/decorators/event.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AA+C5C,SAAgB,SAAS,CAAC,OAAqB;IAC3C,OAAO,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,kBAAS,CAAC,MAAM,CAAA;QAC9C,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAA;QAC5B,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC9B,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAC9B,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC,IAAI,CAAA;IACzC,CAAC,CAAA;AACL,CAAC;AARD,8BAQC"}
|
package/lib/decorators/map.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TiledMap } from '@rpgjs/tiled';
|
|
1
2
|
export interface MapOptions {
|
|
2
3
|
/**
|
|
3
4
|
* Map identifier. Allows to go to the map (for example with player.changeMap())
|
|
@@ -23,7 +24,7 @@ export interface MapOptions {
|
|
|
23
24
|
* @prop {string} file
|
|
24
25
|
* @memberof MapData
|
|
25
26
|
* */
|
|
26
|
-
file: string;
|
|
27
|
+
file: string | TiledMap;
|
|
27
28
|
/**
|
|
28
29
|
* The name of the map.
|
|
29
30
|
* @prop {string} [name]
|
|
@@ -131,8 +132,10 @@ export interface MapOptions {
|
|
|
131
132
|
* import { MapData, RpgMap, RpgPlayer } from '@rpgjs/server'
|
|
132
133
|
*
|
|
133
134
|
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
135
|
+
* declare module '@rpgjs/server' {
|
|
136
|
+
* export interface RpgPlayer {
|
|
137
|
+
* customProp: string
|
|
138
|
+
* }
|
|
136
139
|
* }
|
|
137
140
|
*
|
|
138
141
|
* @MapData({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/decorators/map.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/decorators/map.ts"],"names":[],"mappings":";;;AACA,6CAA4C;AAqK5C,SAAgB,OAAO,CAAC,OAAmB;IACvC,OAAO,CAAC,MAAM,EAAE,EAAE;QACd,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QAC1B,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAA;QACtB,MAAM,CAAC,IAAI,GAAG,KAAK,CAAA;QACnB,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACpC,MAAM,CAAC,SAAS,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACpC,MAAM,CAAC,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAA;QAChC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;QAExC,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,EAAE,CAAA;QAE7B,IAAI,OAAO,CAAC,UAAU,EAAE;YACpB,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,UAAU,CAAA;SAChD;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;YAClC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG;gBAC9B;oBACI,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM;oBACZ,MAAM,EAAE;wBACJ,GAAG,EAAE;4BACD,CAAC,EAAE,MAAM;4BACT,CAAC,EAAE,MAAM;yBACZ;wBACD,CAAC,EAAE,MAAM;wBACT,CAAC,EAAE,MAAM;qBACZ;oBACD,UAAU,EAAE;wBACR,SAAS,EAAE,OAAO;wBAClB,KAAK,EAAE,MAAM;qBAChB;iBACJ;aACJ,CAAA;SACJ;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE;YACjC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,kBAAS,CAAC,OAAO,CAAC,CAAA;SACvD;QACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE;YAClC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,kBAAS,CAAC,OAAO,CAAC,CAAA;SACxD;QAED,MAAM,CAAC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAA;IAC7C,CAAC,CAAA;AACL,CAAC;AA5CD,0BA4CC"}
|
package/lib/entry-point.d.ts
CHANGED
|
@@ -29,5 +29,5 @@ interface RpgServerEntryPointOptions {
|
|
|
29
29
|
globalConfig?: any;
|
|
30
30
|
workers?: any;
|
|
31
31
|
}
|
|
32
|
-
export default function (modules: ModuleType[], options: RpgServerEntryPointOptions): RpgServerEngine
|
|
32
|
+
export default function (modules: ModuleType[], options: RpgServerEntryPointOptions): Promise<RpgServerEngine>;
|
|
33
33
|
export {};
|
package/lib/entry-point.js
CHANGED
|
@@ -1,36 +1,70 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
const common_1 = require("@rpgjs/common");
|
|
4
13
|
const server_1 = require("./server");
|
|
14
|
+
const MatchMaker_1 = require("./MatchMaker");
|
|
5
15
|
function default_1(modules, options) {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
options.globalConfig
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
16
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
const gameEngine = new common_1.RpgCommonGame(common_1.GameSide.Server);
|
|
18
|
+
if (!options.globalConfig)
|
|
19
|
+
options.globalConfig = {};
|
|
20
|
+
const relations = {
|
|
21
|
+
onConnected: common_1.HookServer.PlayerConnected,
|
|
22
|
+
onInput: common_1.HookServer.PlayerInput,
|
|
23
|
+
onJoinMap: common_1.HookServer.PlayerJoinMap,
|
|
24
|
+
onLeaveMap: common_1.HookServer.PlayerLeaveMap,
|
|
25
|
+
onLevelUp: common_1.HookServer.PlayerLevelUp,
|
|
26
|
+
onDead: common_1.HookServer.PlayerDead,
|
|
27
|
+
onDisconnected: common_1.HookServer.PlayerDisconnected,
|
|
28
|
+
onInShape: common_1.HookServer.PlayerInShape,
|
|
29
|
+
onOutShape: common_1.HookServer.PlayerOutShape,
|
|
30
|
+
onMove: common_1.HookServer.PlayerMove,
|
|
31
|
+
canChangeMap: common_1.HookServer.PlayerCanChangeMap
|
|
32
|
+
};
|
|
33
|
+
const relationsEngine = {
|
|
34
|
+
onStart: common_1.HookServer.Start,
|
|
35
|
+
onStep: common_1.HookServer.Step
|
|
36
|
+
};
|
|
37
|
+
const { playerProps } = yield common_1.loadModules(modules, {
|
|
38
|
+
side: 'server',
|
|
39
|
+
relations: {
|
|
40
|
+
player: relations,
|
|
41
|
+
engine: relationsEngine,
|
|
42
|
+
scalability: {
|
|
43
|
+
onConnected: common_1.HookServer.ScalabilityPlayerConnected,
|
|
44
|
+
doChangeServer: common_1.HookServer.ScalabilityChangeServer
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}, (mod) => {
|
|
48
|
+
const { scalability } = mod;
|
|
49
|
+
if (scalability) {
|
|
50
|
+
const { hooks, stateStore, matchMaker } = scalability;
|
|
51
|
+
const matchMakerInstance = new MatchMaker_1.RpgMatchMaker(matchMaker);
|
|
52
|
+
common_1.RpgPlugin.on(common_1.HookServer.Start, () => {
|
|
53
|
+
return stateStore.connect();
|
|
54
|
+
});
|
|
55
|
+
mod.scalability._hooks = {};
|
|
56
|
+
for (let hookName in hooks) {
|
|
57
|
+
let originalHook = mod.scalability.hooks[hookName];
|
|
58
|
+
mod.scalability._hooks[hookName] = function (player) {
|
|
59
|
+
return originalHook(stateStore, matchMakerInstance, player);
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return mod;
|
|
64
|
+
});
|
|
65
|
+
const serverEngine = new server_1.RpgServerEngine(options.io, gameEngine, Object.assign({ debug: {}, updateRate: 10, stepRate: 60, timeoutInterval: 0, countConnections: false, playerProps }, options));
|
|
66
|
+
return serverEngine;
|
|
31
67
|
});
|
|
32
|
-
const serverEngine = new server_1.RpgServerEngine(options.io, gameEngine, Object.assign({ debug: {}, updateRate: 10, stepRate: 60, timeoutInterval: 0, countConnections: false }, options));
|
|
33
|
-
return serverEngine;
|
|
34
68
|
}
|
|
35
69
|
exports.default = default_1;
|
|
36
70
|
//# sourceMappingURL=entry-point.js.map
|
package/lib/entry-point.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../src/entry-point.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entry-point.js","sourceRoot":"","sources":["../src/entry-point.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,0CAAuG;AACvG,qCAA0C;AAE1C,6CAA4C;AAmC5C,mBAA8B,OAAqB,EAAE,OAAmC;;QACpF,MAAM,UAAU,GAAG,IAAI,sBAAa,CAAC,iBAAQ,CAAC,MAAM,CAAC,CAAA;QAErD,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,OAAO,CAAC,YAAY,GAAG,EAAE,CAAA;QAEpD,MAAM,SAAS,GAAG;YACd,WAAW,EAAE,mBAAU,CAAC,eAAe;YACvC,OAAO,EAAE,mBAAU,CAAC,WAAW;YAC/B,SAAS,EAAE,mBAAU,CAAC,aAAa;YACnC,UAAU,EAAE,mBAAU,CAAC,cAAc;YACrC,SAAS,EAAE,mBAAU,CAAC,aAAa;YACnC,MAAM,EAAE,mBAAU,CAAC,UAAU;YAC7B,cAAc,EAAE,mBAAU,CAAC,kBAAkB;YAC7C,SAAS,EAAE,mBAAU,CAAC,aAAa;YACnC,UAAU,EAAE,mBAAU,CAAC,cAAc;YACrC,MAAM,EAAE,mBAAU,CAAC,UAAU;YAC7B,YAAY,EAAE,mBAAU,CAAC,kBAAkB;SAC9C,CAAA;QAED,MAAM,eAAe,GAAG;YACpB,OAAO,EAAE,mBAAU,CAAC,KAAK;YACzB,MAAM,EAAE,mBAAU,CAAC,IAAI;SAC1B,CAAA;QAED,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,oBAAW,CAAC,OAAO,EAAE;YAC/C,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE;gBACP,MAAM,EAAE,SAAS;gBACjB,MAAM,EAAE,eAAe;gBACvB,WAAW,EAAE;oBACT,WAAW,EAAE,mBAAU,CAAC,0BAA0B;oBAClD,cAAc,EAAE,mBAAU,CAAC,uBAAuB;iBACrD;aACJ;SACJ,EAAE,CAAC,GAAG,EAAE,EAAE;YACP,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,CAAA;YAC3B,IAAI,WAAW,EAAE;gBACb,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,WAAW,CAAA;gBACrD,MAAM,kBAAkB,GAAG,IAAI,0BAAa,CAAC,UAAU,CAAC,CAAA;gBACxD,kBAAS,CAAC,EAAE,CAAC,mBAAU,CAAC,KAAK,EAAE,GAAG,EAAE;oBAChC,OAAO,UAAU,CAAC,OAAO,EAAE,CAAA;gBAC/B,CAAC,CAAC,CAAA;gBACF,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE,CAAA;gBAC3B,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE;oBACxB,IAAI,YAAY,GAAG,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;oBAClD,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,UAAS,MAAiB;wBACzD,OAAO,YAAY,CAAC,UAAU,EAAE,kBAAkB,EAAE,MAAM,CAAC,CAAA;oBAC/D,CAAC,CAAA;iBACJ;aACJ;YACD,OAAO,GAAG,CAAA;QACd,CAAC,CAAC,CAAA;QAEF,MAAM,YAAY,GAAG,IAAI,wBAAe,CAAC,OAAO,CAAC,EAAE,EAAE,UAAU,kBAC3D,KAAK,EAAE,EAAE,EACT,UAAU,EAAE,EAAE,EACd,QAAQ,EAAE,EAAE,EACZ,eAAe,EAAE,CAAC,EAClB,gBAAgB,EAAE,KAAK,EACvB,WAAW,IACR,OAAO,EACZ,CAAA;QACF,OAAO,YAAY,CAAA;IACvB,CAAC;CAAA;AA/DD,4BA+DC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -3,13 +3,15 @@ import { Direction, Input, Control, RpgPlugin, HookServer, HookClient, RpgModule
|
|
|
3
3
|
import { RpgServer, RpgPlayerHooks, RpgServerEngineHooks } from './RpgServer';
|
|
4
4
|
import { EventData } from './decorators/event';
|
|
5
5
|
import { MapData } from './decorators/map';
|
|
6
|
+
import { RpgPlayer, RpgEvent, EventMode } from './Player/Player';
|
|
6
7
|
import { RpgMap } from './Game/Map';
|
|
7
|
-
import {
|
|
8
|
-
import { RpgPlayer } from './Player/Player';
|
|
9
|
-
import RpgEnemy from './Enemy';
|
|
8
|
+
import { RpgWorldMaps } from './Game/WorldMaps';
|
|
10
9
|
import { Query } from './Query';
|
|
11
10
|
import Monitor from './Monitor';
|
|
12
11
|
import * as Presets from './presets';
|
|
13
|
-
import { Move } from './Player/MoveManager';
|
|
12
|
+
import { Move, Frequency, Speed } from './Player/MoveManager';
|
|
14
13
|
import { RpgServerEngine } from './server';
|
|
15
|
-
|
|
14
|
+
import { SceneMap as RpgSceneMap, RpgClassMap } from './Scenes/Map';
|
|
15
|
+
import { RpgMatchMaker } from './MatchMaker';
|
|
16
|
+
import { IStoreState } from './Interfaces/StateStore';
|
|
17
|
+
export { RpgServer, RpgEvent, RpgPlayer, RpgPlugin, RpgMap, RpgSceneMap, MapData, EventData, Query as RpgWorld, Query, entryPoint, Presets, Monitor, Move, EventMode, Direction, Input, Control, HookServer, HookClient, RpgModule, RpgPlayerHooks, RpgServerEngineHooks, RpgServerEngine, RpgShape, ShapePositioning, Frequency, Speed, RpgWorldMaps, RpgClassMap, IStoreState, RpgMatchMaker };
|
package/lib/index.js
CHANGED
|
@@ -22,7 +22,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
22
22
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
23
23
|
};
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.ShapePositioning = exports.RpgShape = exports.RpgServerEngine = exports.RpgModule = exports.HookClient = exports.HookServer = exports.Control = exports.Input = exports.Direction = exports.EventMode = exports.Move = exports.Monitor = exports.Presets = exports.entryPoint = exports.Query = exports.RpgWorld = exports.EventData = exports.MapData = exports.
|
|
25
|
+
exports.RpgMatchMaker = exports.RpgWorldMaps = exports.Speed = exports.Frequency = exports.ShapePositioning = exports.RpgShape = exports.RpgServerEngine = exports.RpgModule = exports.HookClient = exports.HookServer = exports.Control = exports.Input = exports.Direction = exports.EventMode = exports.Move = exports.Monitor = exports.Presets = exports.entryPoint = exports.Query = exports.RpgWorld = exports.EventData = exports.MapData = exports.RpgSceneMap = exports.RpgMap = exports.RpgPlugin = exports.RpgPlayer = exports.RpgEvent = void 0;
|
|
26
26
|
const entry_point_1 = __importDefault(require("./entry-point"));
|
|
27
27
|
exports.entryPoint = entry_point_1.default;
|
|
28
28
|
const common_1 = require("@rpgjs/common");
|
|
@@ -39,15 +39,14 @@ const event_1 = require("./decorators/event");
|
|
|
39
39
|
Object.defineProperty(exports, "EventData", { enumerable: true, get: function () { return event_1.EventData; } });
|
|
40
40
|
const map_1 = require("./decorators/map");
|
|
41
41
|
Object.defineProperty(exports, "MapData", { enumerable: true, get: function () { return map_1.MapData; } });
|
|
42
|
-
const Map_1 = require("./Game/Map");
|
|
43
|
-
Object.defineProperty(exports, "RpgMap", { enumerable: true, get: function () { return Map_1.RpgMap; } });
|
|
44
|
-
const Event_1 = require("./Event");
|
|
45
|
-
Object.defineProperty(exports, "RpgEvent", { enumerable: true, get: function () { return Event_1.RpgEvent; } });
|
|
46
|
-
Object.defineProperty(exports, "EventMode", { enumerable: true, get: function () { return Event_1.EventMode; } });
|
|
47
42
|
const Player_1 = require("./Player/Player");
|
|
48
43
|
Object.defineProperty(exports, "RpgPlayer", { enumerable: true, get: function () { return Player_1.RpgPlayer; } });
|
|
49
|
-
|
|
50
|
-
exports
|
|
44
|
+
Object.defineProperty(exports, "RpgEvent", { enumerable: true, get: function () { return Player_1.RpgEvent; } });
|
|
45
|
+
Object.defineProperty(exports, "EventMode", { enumerable: true, get: function () { return Player_1.EventMode; } });
|
|
46
|
+
const Map_1 = require("./Game/Map");
|
|
47
|
+
Object.defineProperty(exports, "RpgMap", { enumerable: true, get: function () { return Map_1.RpgMap; } });
|
|
48
|
+
const WorldMaps_1 = require("./Game/WorldMaps");
|
|
49
|
+
Object.defineProperty(exports, "RpgWorldMaps", { enumerable: true, get: function () { return WorldMaps_1.RpgWorldMaps; } });
|
|
51
50
|
const Query_1 = require("./Query");
|
|
52
51
|
Object.defineProperty(exports, "RpgWorld", { enumerable: true, get: function () { return Query_1.Query; } });
|
|
53
52
|
Object.defineProperty(exports, "Query", { enumerable: true, get: function () { return Query_1.Query; } });
|
|
@@ -57,6 +56,12 @@ const Presets = __importStar(require("./presets"));
|
|
|
57
56
|
exports.Presets = Presets;
|
|
58
57
|
const MoveManager_1 = require("./Player/MoveManager");
|
|
59
58
|
Object.defineProperty(exports, "Move", { enumerable: true, get: function () { return MoveManager_1.Move; } });
|
|
59
|
+
Object.defineProperty(exports, "Frequency", { enumerable: true, get: function () { return MoveManager_1.Frequency; } });
|
|
60
|
+
Object.defineProperty(exports, "Speed", { enumerable: true, get: function () { return MoveManager_1.Speed; } });
|
|
60
61
|
const server_1 = require("./server");
|
|
61
62
|
Object.defineProperty(exports, "RpgServerEngine", { enumerable: true, get: function () { return server_1.RpgServerEngine; } });
|
|
63
|
+
const Map_2 = require("./Scenes/Map");
|
|
64
|
+
Object.defineProperty(exports, "RpgSceneMap", { enumerable: true, get: function () { return Map_2.SceneMap; } });
|
|
65
|
+
const MatchMaker_1 = require("./MatchMaker");
|
|
66
|
+
Object.defineProperty(exports, "RpgMatchMaker", { enumerable: true, get: function () { return MatchMaker_1.RpgMatchMaker; } });
|
|
62
67
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAsC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAAsC;AAsClC,qBAtCG,qBAAU,CAsCH;AArCd,0CAUsB;AAgClB,0FAzCA,kBAAS,OAyCA;AACT,sFAzCA,cAAK,OAyCA;AACL,wFAzCA,gBAAO,OAyCA;AAdP,0FA1BA,kBAAS,OA0BA;AAeT,2FAxCA,mBAAU,OAwCA;AACV,2FAxCA,mBAAU,OAwCA;AACV,0FAxCA,kBAAS,OAwCA;AAIT,yFA3CA,iBAAQ,OA2CA;AACR,iGA3CA,yBAAgB,OA2CA;AAxCpB,8CAA8C;AAsB1C,0FAtBK,iBAAS,OAsBL;AArBb,0CAA0C;AAoBtC,wFApBK,aAAO,OAoBL;AAnBX,4CAAgE;AAe5D,0FAfK,kBAAS,OAeL;AADT,yFAdgB,iBAAQ,OAchB;AAaR,0FA3B0B,kBAAS,OA2B1B;AA1Bb,oCAAmC;AAgB/B,uFAhBK,YAAM,OAgBL;AAfV,gDAA+C;AAuC3C,6FAvCK,wBAAY,OAuCL;AAtChB,mCAA+B;AAkBlB,yFAlBJ,aAAK,OAkBO;AACjB,sFAnBK,aAAK,OAmBL;AAlBT,wDAA+B;AAqB3B,kBArBG,iBAAO,CAqBH;AApBX,mDAAoC;AAmBhC,0BAAO;AAlBX,sDAA6D;AAoBzD,qFApBK,kBAAI,OAoBL;AAaJ,0FAjCW,uBAAS,OAiCX;AACT,sFAlCsB,mBAAK,OAkCtB;AAjCT,qCAA0C;AA6BtC,gGA7BK,wBAAe,OA6BL;AA5BnB,sCAAmE;AAU/D,4FAViB,cAAW,OAUjB;AATf,6CAA4C;AAmCxC,8FAnCK,0BAAa,OAmCL"}
|