gamelet-cli 0.7.10 → 0.7.13
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/assets/package.json.twig +3 -3
- package/assets/server/static/js/monitor.js +6 -0
- package/assets/server/views/monitor.twig +1 -0
- package/assets/tsconfig.json.twig +1 -1
- package/build/package.json +67 -67
- package/build/src/gamelet/download.js +773 -737
- package/build/src/gamelet/merges.js +181 -179
- package/build/src/gamelet/prepare.js +276 -277
- package/build/src/gamelet/upload.js +280 -279
- package/build/src/index.js +86 -86
- package/build/src/server/Constant.js +9 -9
- package/build/src/server/entities/Client.js +78 -78
- package/build/src/server/entities/ClientOwner.js +67 -67
- package/build/src/server/entities/ClientProject.js +84 -84
- package/build/src/server/entities/Gameroom.js +89 -89
- package/build/src/server/entities/GameroomBase.js +276 -276
- package/build/src/server/entities/Gamezone.js +73 -73
- package/build/src/server/entities/ListFilter.js +193 -193
- package/build/src/server/entities/Monitor.js +94 -81
- package/build/src/server/entities/Player.js +140 -140
- package/build/src/server/managers/ApiManager.js +75 -75
- package/build/src/server/managers/ClientManager.js +64 -64
- package/build/src/server/managers/Database.js +627 -627
- package/build/src/server/managers/GameroomManager.js +392 -392
- package/build/src/server/managers/ManagerBase.js +17 -17
- package/build/src/server/managers/MonitorManager.js +73 -73
- package/build/src/server/managers/PlayerManager.js +108 -108
- package/build/src/server/managers/SocketManager.js +60 -60
- package/build/src/server/managers/UserManager.js +58 -58
- package/build/src/server/messages/Message.js +143 -143
- package/build/src/server/server.js +112 -113
- package/build/src/server/services/ServiceBase.js +25 -25
- package/build/src/server/services/clientService.js +23 -23
- package/build/src/server/services/gameroomService.js +121 -121
- package/build/src/server/services/gltserver.service.js +23 -23
- package/build/src/server/services/playerService.js +32 -32
- package/build/src/server/startServer.js +32 -33
- package/build/src/server/types/BadgeStatus.js +25 -25
- package/build/src/server/types/OrderType.js +38 -38
- package/build/src/server/types/SubmitType.js +24 -24
- package/build/src/server/types/TimeRange.js +26 -26
- package/build/src/server/utils/ArrayUtil.js +126 -126
- package/build/src/server/utils/IntUtil.js +9 -9
- package/build/src/server/utils/ObjectUtil.js +191 -191
- package/build/src/server/utils/StringUtil.js +37 -37
- package/build/src/utils/cli.js +53 -53
- package/build/src/utils/file.js +350 -337
- package/build/src/utils/init.js +57 -42
- package/build/src/utils/log.js +18 -17
- package/build/src/utils/net.js +43 -39
- package/package.json +2 -2
|
@@ -1,113 +1,112 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.initServer =
|
|
7
|
-
const express_1 = __importDefault(require("express"));
|
|
8
|
-
const http_1 = __importDefault(require("http"));
|
|
9
|
-
const socket_io_1 = __importDefault(require("socket.io"));
|
|
10
|
-
const cors_1 = __importDefault(require("cors"));
|
|
11
|
-
const UserManager_1 = require("./managers/UserManager");
|
|
12
|
-
const Database_1 = require("./managers/Database");
|
|
13
|
-
const MonitorManager_1 = require("./managers/MonitorManager");
|
|
14
|
-
//
|
|
15
|
-
let app = express_1.default();
|
|
16
|
-
let packageRoot = __dirname + '/../../..';
|
|
17
|
-
let res = packageRoot + '/assets/server';
|
|
18
|
-
app.use(express_1.default.static(res + '/static'));
|
|
19
|
-
app.use(express_1.default.json());
|
|
20
|
-
app.use(express_1.default.urlencoded({ extended: true }));
|
|
21
|
-
app.set('views', res + '/views');
|
|
22
|
-
app.set('view engine', 'twig');
|
|
23
|
-
app.set('twig options', {
|
|
24
|
-
strict_variables: false
|
|
25
|
-
});
|
|
26
|
-
app.get('/', (_req, res) => {
|
|
27
|
-
res.render('index.twig');
|
|
28
|
-
});
|
|
29
|
-
app.get('/monitor', (_req, res) => {
|
|
30
|
-
res.render('monitor.twig');
|
|
31
|
-
});
|
|
32
|
-
function getServerTimeCode(add = 0) {
|
|
33
|
-
return Math.floor((Date.now() + add) / 1000).toString(36);
|
|
34
|
-
}
|
|
35
|
-
function createServer(clientCode, port) {
|
|
36
|
-
app.get('/client', cors_1.default(), (_req, res) => {
|
|
37
|
-
res.json({
|
|
38
|
-
client: {
|
|
39
|
-
code: clientCode,
|
|
40
|
-
},
|
|
41
|
-
time: Math.floor(Date.now() / 1000),
|
|
42
|
-
});
|
|
43
|
-
});
|
|
44
|
-
app.get('/login', cors_1.default(), (_req, res) => {
|
|
45
|
-
let user = UserManager_1.userManager.login(clientCode, false);
|
|
46
|
-
res.json({
|
|
47
|
-
user: user,
|
|
48
|
-
});
|
|
49
|
-
});
|
|
50
|
-
app.get('/timecode', cors_1.default(), (_req, res) => {
|
|
51
|
-
res.send(Math.floor(Date.now() / 1000).toString(36));
|
|
52
|
-
});
|
|
53
|
-
app.get('/requestGuestToken', cors_1.default(), (_req, res) => {
|
|
54
|
-
let user = UserManager_1.userManager.login(clientCode, true);
|
|
55
|
-
res.json({
|
|
56
|
-
user: user,
|
|
57
|
-
ip: user.ip,
|
|
58
|
-
token: user.token,
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
app.post('/jsonrpc/cmd', cors_1.default(), (_req, res) => {
|
|
62
|
-
let command = _req.body.command;
|
|
63
|
-
let user = UserManager_1.userManager.getByToken(_req.body.token);
|
|
64
|
-
Database_1.database.executeCommand(user, command)
|
|
65
|
-
.then(result => {
|
|
66
|
-
res.json({
|
|
67
|
-
result: result,
|
|
68
|
-
time: getServerTimeCode(),
|
|
69
|
-
});
|
|
70
|
-
})
|
|
71
|
-
.catch(err => {
|
|
72
|
-
res.status(400);
|
|
73
|
-
res.send(err);
|
|
74
|
-
MonitorManager_1.monitorManager.error(clientCode, '
|
|
75
|
-
});
|
|
76
|
-
});
|
|
77
|
-
app.post('/jsonrpc/cmds', cors_1.default(), (_req, res) => {
|
|
78
|
-
let commands = _req.body.commands;
|
|
79
|
-
let user = UserManager_1.userManager.getByToken(_req.body.token);
|
|
80
|
-
return Promise.all(commands.map(command => Database_1.database.executeCommand(user, command)))
|
|
81
|
-
.then(results => {
|
|
82
|
-
res.json({
|
|
83
|
-
results: results,
|
|
84
|
-
time: getServerTimeCode(),
|
|
85
|
-
});
|
|
86
|
-
})
|
|
87
|
-
.catch(err => {
|
|
88
|
-
res.status(400);
|
|
89
|
-
res.send(err);
|
|
90
|
-
MonitorManager_1.monitorManager.error(clientCode, '
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
return new Promise(resolve => {
|
|
94
|
-
let server = http_1.default.createServer(app);
|
|
95
|
-
server.listen(port, () => resolve(server));
|
|
96
|
-
});
|
|
97
|
-
}
|
|
98
|
-
function initServer(clientCode, port) {
|
|
99
|
-
return createServer(clientCode, port)
|
|
100
|
-
.then(server => {
|
|
101
|
-
const io = socket_io_1.default(server);
|
|
102
|
-
const gameIO = io.of('/game');
|
|
103
|
-
return {
|
|
104
|
-
app: app,
|
|
105
|
-
server: server,
|
|
106
|
-
io: io,
|
|
107
|
-
gameIO: gameIO,
|
|
108
|
-
port: port,
|
|
109
|
-
};
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsc0RBQThCO0FBQzlCLGdEQUF3QjtBQUN4QiwwREFBaUM7QUFDakMsZ0RBQXdCO0FBQ3hCLHdEQUFxRDtBQUNyRCxrREFBK0M7QUFDL0MsOERBQTJEO0FBUzNELEVBQUU7QUFDRixJQUFJLEdBQUcsR0FBRyxpQkFBTyxFQUFFLENBQUM7QUFDcEIsSUFBSSxXQUFXLEdBQUcsU0FBUyxHQUFHLFdBQVcsQ0FBQztBQUMxQyxJQUFJLEdBQUcsR0FBRyxXQUFXLEdBQUcsZ0JBQWdCLENBQUM7QUFFekMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxpQkFBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQztBQUN6QyxHQUFHLENBQUMsR0FBRyxDQUFDLGlCQUFPLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUN4QixHQUFHLENBQUMsR0FBRyxDQUFDLGlCQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNoRCxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxHQUFHLEdBQUcsUUFBUSxDQUFDLENBQUM7QUFDakMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLENBQUM7QUFDL0IsR0FBRyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUU7SUFDcEIsZ0JBQWdCLEVBQUUsS0FBSztDQUMxQixDQUFDLENBQUM7QUFFSCxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtJQUN2QixHQUFHLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzdCLENBQUMsQ0FBQyxDQUFDO0FBQ0gsR0FBRyxDQUFDLEdBQUcsQ0FB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
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.initServer = initServer;
|
|
7
|
+
const express_1 = __importDefault(require("express"));
|
|
8
|
+
const http_1 = __importDefault(require("http"));
|
|
9
|
+
const socket_io_1 = __importDefault(require("socket.io"));
|
|
10
|
+
const cors_1 = __importDefault(require("cors"));
|
|
11
|
+
const UserManager_1 = require("./managers/UserManager");
|
|
12
|
+
const Database_1 = require("./managers/Database");
|
|
13
|
+
const MonitorManager_1 = require("./managers/MonitorManager");
|
|
14
|
+
//
|
|
15
|
+
let app = (0, express_1.default)();
|
|
16
|
+
let packageRoot = __dirname + '/../../..';
|
|
17
|
+
let res = packageRoot + '/assets/server';
|
|
18
|
+
app.use(express_1.default.static(res + '/static'));
|
|
19
|
+
app.use(express_1.default.json());
|
|
20
|
+
app.use(express_1.default.urlencoded({ extended: true }));
|
|
21
|
+
app.set('views', res + '/views');
|
|
22
|
+
app.set('view engine', 'twig');
|
|
23
|
+
app.set('twig options', {
|
|
24
|
+
strict_variables: false
|
|
25
|
+
});
|
|
26
|
+
app.get('/', (_req, res) => {
|
|
27
|
+
res.render('index.twig');
|
|
28
|
+
});
|
|
29
|
+
app.get('/monitor', (_req, res) => {
|
|
30
|
+
res.render('monitor.twig');
|
|
31
|
+
});
|
|
32
|
+
function getServerTimeCode(add = 0) {
|
|
33
|
+
return Math.floor((Date.now() + add) / 1000).toString(36);
|
|
34
|
+
}
|
|
35
|
+
function createServer(clientCode, port) {
|
|
36
|
+
app.get('/client', (0, cors_1.default)(), (_req, res) => {
|
|
37
|
+
res.json({
|
|
38
|
+
client: {
|
|
39
|
+
code: clientCode,
|
|
40
|
+
},
|
|
41
|
+
time: Math.floor(Date.now() / 1000),
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
app.get('/login', (0, cors_1.default)(), (_req, res) => {
|
|
45
|
+
let user = UserManager_1.userManager.login(clientCode, false);
|
|
46
|
+
res.json({
|
|
47
|
+
user: user,
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
app.get('/timecode', (0, cors_1.default)(), (_req, res) => {
|
|
51
|
+
res.send(Math.floor(Date.now() / 1000).toString(36));
|
|
52
|
+
});
|
|
53
|
+
app.get('/requestGuestToken', (0, cors_1.default)(), (_req, res) => {
|
|
54
|
+
let user = UserManager_1.userManager.login(clientCode, true);
|
|
55
|
+
res.json({
|
|
56
|
+
user: user,
|
|
57
|
+
ip: user.ip,
|
|
58
|
+
token: user.token,
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
app.post('/jsonrpc/cmd', (0, cors_1.default)(), (_req, res) => {
|
|
62
|
+
let command = _req.body.command;
|
|
63
|
+
let user = UserManager_1.userManager.getByToken(_req.body.token);
|
|
64
|
+
Database_1.database.executeCommand(user, command)
|
|
65
|
+
.then(result => {
|
|
66
|
+
res.json({
|
|
67
|
+
result: result,
|
|
68
|
+
time: getServerTimeCode(),
|
|
69
|
+
});
|
|
70
|
+
})
|
|
71
|
+
.catch(err => {
|
|
72
|
+
res.status(400);
|
|
73
|
+
res.send(err);
|
|
74
|
+
MonitorManager_1.monitorManager.error(clientCode, 'jsonrpc/cmd', err);
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
app.post('/jsonrpc/cmds', (0, cors_1.default)(), (_req, res) => {
|
|
78
|
+
let commands = _req.body.commands;
|
|
79
|
+
let user = UserManager_1.userManager.getByToken(_req.body.token);
|
|
80
|
+
return Promise.all(commands.map(command => Database_1.database.executeCommand(user, command)))
|
|
81
|
+
.then(results => {
|
|
82
|
+
res.json({
|
|
83
|
+
results: results,
|
|
84
|
+
time: getServerTimeCode(),
|
|
85
|
+
});
|
|
86
|
+
})
|
|
87
|
+
.catch(err => {
|
|
88
|
+
res.status(400);
|
|
89
|
+
res.send(err);
|
|
90
|
+
MonitorManager_1.monitorManager.error(clientCode, 'jsonrpc/cmd', err);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
return new Promise(resolve => {
|
|
94
|
+
let server = http_1.default.createServer(app);
|
|
95
|
+
server.listen(port, () => resolve(server));
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
function initServer(clientCode, port) {
|
|
99
|
+
return createServer(clientCode, port)
|
|
100
|
+
.then(server => {
|
|
101
|
+
const io = (0, socket_io_1.default)(server);
|
|
102
|
+
const gameIO = io.of('/game');
|
|
103
|
+
return {
|
|
104
|
+
app: app,
|
|
105
|
+
server: server,
|
|
106
|
+
io: io,
|
|
107
|
+
gameIO: gameIO,
|
|
108
|
+
port: port,
|
|
109
|
+
};
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NlcnZlci9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUEyR0EsZ0NBYUM7QUF4SEQsc0RBQThCO0FBQzlCLGdEQUF3QjtBQUN4QiwwREFBaUM7QUFDakMsZ0RBQXdCO0FBQ3hCLHdEQUFxRDtBQUNyRCxrREFBK0M7QUFDL0MsOERBQTJEO0FBUzNELEVBQUU7QUFDRixJQUFJLEdBQUcsR0FBRyxJQUFBLGlCQUFPLEdBQUUsQ0FBQztBQUNwQixJQUFJLFdBQVcsR0FBRyxTQUFTLEdBQUcsV0FBVyxDQUFDO0FBQzFDLElBQUksR0FBRyxHQUFHLFdBQVcsR0FBRyxnQkFBZ0IsQ0FBQztBQUV6QyxHQUFHLENBQUMsR0FBRyxDQUFDLGlCQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDO0FBQ3pDLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0FBQ3hCLEdBQUcsQ0FBQyxHQUFHLENBQUMsaUJBQU8sQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ2hELEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcsR0FBRyxRQUFRLENBQUMsQ0FBQztBQUNqQyxHQUFHLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsQ0FBQztBQUMvQixHQUFHLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRTtJQUNwQixnQkFBZ0IsRUFBRSxLQUFLO0NBQzFCLENBQUMsQ0FBQztBQUVILEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO0lBQ3ZCLEdBQUcsQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDN0IsQ0FBQyxDQUFDLENBQUM7QUFDSCxHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtJQUM5QixHQUFHLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQy9CLENBQUMsQ0FBQyxDQUFDO0FBRUgsU0FBUyxpQkFBaUIsQ0FBQyxNQUFjLENBQUM7SUFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBR0QsU0FBUyxZQUFZLENBQUMsVUFBa0IsRUFBRSxJQUFZO0lBQ2xELEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLElBQUEsY0FBSSxHQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDckMsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNMLE1BQU0sRUFBRTtnQkFDSixJQUFJLEVBQUUsVUFBVTthQUNuQjtZQUNELElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7U0FDdEMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQyxDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxJQUFBLGNBQUksR0FBRSxFQUFFLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ3BDLElBQUksSUFBSSxHQUFHLHlCQUFXLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNoRCxHQUFHLENBQUMsSUFBSSxDQUFDO1lBQ0wsSUFBSSxFQUFFLElBQUk7U0FDYixDQUFDLENBQUM7SUFDUCxDQUFDLENBQUMsQ0FBQztJQUNILEdBQUcsQ0FBQyxHQUFHLENBQUMsV0FBVyxFQUFFLElBQUEsY0FBSSxHQUFFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQUU7UUFDdkMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN6RCxDQUFDLENBQUMsQ0FBQztJQUNILEdBQUcsQ0FBQyxHQUFHLENBQUMsb0JBQW9CLEVBQUUsSUFBQSxjQUFJLEdBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUNoRCxJQUFJLElBQUksR0FBRyx5QkFBVyxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDL0MsR0FBRyxDQUFDLElBQUksQ0FBQztZQUNMLElBQUksRUFBRSxJQUFJO1lBQ1YsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ1gsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO1NBQ3BCLENBQUMsQ0FBQztJQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ0gsR0FBRyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBQSxjQUFJLEdBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUMzQyxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNoQyxJQUFJLElBQUksR0FBRyx5QkFBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELG1CQUFRLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7YUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ1gsR0FBRyxDQUFDLElBQUksQ0FBQztnQkFDTCxNQUFNLEVBQUUsTUFBTTtnQkFDZCxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7YUFDNUIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDO2FBQ0QsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ1QsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNoQixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2QsK0JBQWMsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUFFLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN6RCxDQUFDLENBQUMsQ0FBQTtJQUVWLENBQUMsQ0FBQyxDQUFDO0lBQ0gsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBQSxjQUFJLEdBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtRQUM1QyxJQUFJLFFBQVEsR0FBVSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN6QyxJQUFJLElBQUksR0FBRyx5QkFBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsbUJBQVEsQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7YUFDOUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1osR0FBRyxDQUFDLElBQUksQ0FBQztnQkFDTCxPQUFPLEVBQUUsT0FBTztnQkFDaEIsSUFBSSxFQUFFLGlCQUFpQixFQUFFO2FBQzVCLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQzthQUNELEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNULEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDaEIsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNkLCtCQUFjLENBQUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDekQsQ0FBQyxDQUFDLENBQUE7SUFDVixDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sSUFBSSxPQUFPLENBQWMsT0FBTyxDQUFDLEVBQUU7UUFDdEMsSUFBSSxNQUFNLEdBQUcsY0FBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUNwQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRCxTQUFnQixVQUFVLENBQUMsVUFBa0IsRUFBRSxJQUFZO0lBQ3ZELE9BQU8sWUFBWSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUM7U0FDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ1gsTUFBTSxFQUFFLEdBQUcsSUFBQSxtQkFBUSxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzVCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUIsT0FBTztZQUNILEdBQUcsRUFBRSxHQUFHO1lBQ1IsTUFBTSxFQUFFLE1BQU07WUFDZCxFQUFFLEVBQUUsRUFBRTtZQUNOLE1BQU0sRUFBRSxNQUFNO1lBQ2QsSUFBSSxFQUFFLElBQUk7U0FDYixDQUFDO0lBQ04sQ0FBQyxDQUFDLENBQUE7QUFDVixDQUFDIn0=
|
|
@@ -1,25 +1,25 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ServiceBase = void 0;
|
|
4
|
-
const MonitorManager_1 = require("../managers/MonitorManager");
|
|
5
|
-
class ServiceBase {
|
|
6
|
-
constructor(name) {
|
|
7
|
-
this.name = name;
|
|
8
|
-
}
|
|
9
|
-
_execute(player, method, params) {
|
|
10
|
-
try {
|
|
11
|
-
MonitorManager_1.monitorManager.logIncoming(player.client.project.code, 'player', this.name + 'Service.' + method, params, player);
|
|
12
|
-
if (method.startsWith('_')) {
|
|
13
|
-
throw new Error('method not supported: ' + method);
|
|
14
|
-
}
|
|
15
|
-
params.unshift(player);
|
|
16
|
-
let func = this[method];
|
|
17
|
-
return func.apply(this, params);
|
|
18
|
-
}
|
|
19
|
-
catch (err) {
|
|
20
|
-
return Promise.reject(err);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
exports.ServiceBase = ServiceBase;
|
|
25
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ServiceBase = void 0;
|
|
4
|
+
const MonitorManager_1 = require("../managers/MonitorManager");
|
|
5
|
+
class ServiceBase {
|
|
6
|
+
constructor(name) {
|
|
7
|
+
this.name = name;
|
|
8
|
+
}
|
|
9
|
+
_execute(player, method, params) {
|
|
10
|
+
try {
|
|
11
|
+
MonitorManager_1.monitorManager.logIncoming(player.client.project.code, 'player', this.name + 'Service.' + method, params, player);
|
|
12
|
+
if (method.startsWith('_')) {
|
|
13
|
+
throw new Error('method not supported: ' + method);
|
|
14
|
+
}
|
|
15
|
+
params.unshift(player);
|
|
16
|
+
let func = this[method];
|
|
17
|
+
return func.apply(this, params);
|
|
18
|
+
}
|
|
19
|
+
catch (err) {
|
|
20
|
+
return Promise.reject(err);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.ServiceBase = ServiceBase;
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VydmljZUJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc2VydmVyL3NlcnZpY2VzL1NlcnZpY2VCYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLCtEQUE0RDtBQUU1RCxNQUFhLFdBQVc7SUFFcEIsWUFBbUIsSUFBWTtRQUFaLFNBQUksR0FBSixJQUFJLENBQVE7SUFFL0IsQ0FBQztJQUVELFFBQVEsQ0FBQyxNQUFjLEVBQUUsTUFBYyxFQUFFLE1BQWE7UUFDbEQsSUFBSSxDQUFDO1lBQ0QsK0JBQWMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsR0FBRyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBRWxILElBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixHQUFHLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZELENBQUM7WUFDRCxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3ZCLElBQUksSUFBSSxHQUFhLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNsQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO1lBQ1gsT0FBTyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDTCxDQUFDO0NBQ0o7QUFwQkQsa0NBb0JDIn0=
|
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.clientService = void 0;
|
|
4
|
-
const ServiceBase_1 = require("./ServiceBase");
|
|
5
|
-
const ClientManager_1 = require("./../managers/ClientManager");
|
|
6
|
-
class ClientService extends ServiceBase_1.ServiceBase {
|
|
7
|
-
constructor() {
|
|
8
|
-
super('client');
|
|
9
|
-
}
|
|
10
|
-
_initialize() {
|
|
11
|
-
}
|
|
12
|
-
getPlayersCount(player, options) {
|
|
13
|
-
return Promise.resolve(player.client.getPlayersCount(options));
|
|
14
|
-
}
|
|
15
|
-
getPlayersCountByClients(_player, clientCodes) {
|
|
16
|
-
let counts = clientCodes.map((code) => {
|
|
17
|
-
let project = ClientManager_1.clientManager.getCachedClientProject(code);
|
|
18
|
-
return project ? project.playersCount : 0;
|
|
19
|
-
});
|
|
20
|
-
return Promise.resolve(counts);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.clientService = new ClientService();
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.clientService = void 0;
|
|
4
|
+
const ServiceBase_1 = require("./ServiceBase");
|
|
5
|
+
const ClientManager_1 = require("./../managers/ClientManager");
|
|
6
|
+
class ClientService extends ServiceBase_1.ServiceBase {
|
|
7
|
+
constructor() {
|
|
8
|
+
super('client');
|
|
9
|
+
}
|
|
10
|
+
_initialize() {
|
|
11
|
+
}
|
|
12
|
+
getPlayersCount(player, options) {
|
|
13
|
+
return Promise.resolve(player.client.getPlayersCount(options));
|
|
14
|
+
}
|
|
15
|
+
getPlayersCountByClients(_player, clientCodes) {
|
|
16
|
+
let counts = clientCodes.map((code) => {
|
|
17
|
+
let project = ClientManager_1.clientManager.getCachedClientProject(code);
|
|
18
|
+
return project ? project.playersCount : 0;
|
|
19
|
+
});
|
|
20
|
+
return Promise.resolve(counts);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.clientService = new ClientService();
|
|
24
24
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50U2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zZXJ2ZXIvc2VydmljZXMvY2xpZW50U2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSwrQ0FBNEM7QUFDNUMsK0RBQTREO0FBRzVELE1BQU0sYUFBYyxTQUFRLHlCQUFXO0lBR25DO1FBQ0ksS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxXQUFXO0lBRVgsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFjLEVBQUUsT0FBc0M7UUFDbEUsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQztJQUVELHdCQUF3QixDQUFDLE9BQWUsRUFBRSxXQUFxQjtRQUMzRCxJQUFJLE1BQU0sR0FBYSxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDNUMsSUFBSSxPQUFPLEdBQUcsNkJBQWEsQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6RCxPQUFPLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ25DLENBQUM7Q0FFSjtBQUVZLFFBQUEsYUFBYSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUMifQ==
|
|
@@ -1,122 +1,122 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.gameroomService = void 0;
|
|
4
|
-
const GameroomManager_1 = require("./../managers/GameroomManager");
|
|
5
|
-
const ServiceBase_1 = require("./ServiceBase");
|
|
6
|
-
class GameroomService extends ServiceBase_1.ServiceBase {
|
|
7
|
-
constructor() {
|
|
8
|
-
super('gameroom');
|
|
9
|
-
}
|
|
10
|
-
_initialize(server) {
|
|
11
|
-
this._manager = new GameroomManager_1.GameroomManager(server);
|
|
12
|
-
}
|
|
13
|
-
_getManager() {
|
|
14
|
-
return this._manager;
|
|
15
|
-
}
|
|
16
|
-
createRoom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest) {
|
|
17
|
-
return this._manager.createGameroom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest)
|
|
18
|
-
.then(gameroom => gameroom.toFullVo());
|
|
19
|
-
}
|
|
20
|
-
joinRoom(player, gameroomCode, password) {
|
|
21
|
-
return this._manager.joinGameroom(player, gameroomCode, password)
|
|
22
|
-
.then(gameroom => gameroom.toFullVo());
|
|
23
|
-
}
|
|
24
|
-
createOrJoinRoom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest) {
|
|
25
|
-
return this._manager.createOrJoinGameroom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest)
|
|
26
|
-
.then(gameroom => gameroom.toFullVo());
|
|
27
|
-
}
|
|
28
|
-
leaveRoom(player, gameroomCode) {
|
|
29
|
-
return this._manager.leaveGameroom(player, gameroomCode);
|
|
30
|
-
}
|
|
31
|
-
queryRoom(player, gameroomCode) {
|
|
32
|
-
return this._manager.queryGameroom(player, gameroomCode)
|
|
33
|
-
.then(gameroom => gameroom.toFullVo());
|
|
34
|
-
}
|
|
35
|
-
listRooms(player, gamezoneCode, length, filter) {
|
|
36
|
-
return this._manager.listGamerooms(player.client, gamezoneCode, length, filter)
|
|
37
|
-
.then(list => list.map(gameroom => gameroom.toFullVo()));
|
|
38
|
-
}
|
|
39
|
-
listPlayersInRoom(player) {
|
|
40
|
-
return this._manager.listPlayersInGameroom(player)
|
|
41
|
-
.then(list => list.map(player => player.toVo()));
|
|
42
|
-
}
|
|
43
|
-
listPlayersOfRoom(player, gameroomCode) {
|
|
44
|
-
return this._manager.listPlayersOfGameroom(player, gameroomCode)
|
|
45
|
-
.then(list => list.map(player => player.toVo()));
|
|
46
|
-
}
|
|
47
|
-
listenToZone(player, gamezoneCode) {
|
|
48
|
-
return this._manager.enterGamezone(player, gamezoneCode)
|
|
49
|
-
.then(zone => zone.toAndStatusVo());
|
|
50
|
-
}
|
|
51
|
-
stopListenToZone(player, gamezoneCode) {
|
|
52
|
-
return this._manager.leaveGamezone(player, gamezoneCode);
|
|
53
|
-
}
|
|
54
|
-
setRoomState(player, state, stateJson) {
|
|
55
|
-
return this._manager.setGameroomState(player, state, stateJson)
|
|
56
|
-
.then(gameroom => gameroom.toStatusVo());
|
|
57
|
-
}
|
|
58
|
-
setRoomStateJson(player, stateJson) {
|
|
59
|
-
return this._manager.setGameroomStateJson(player, stateJson)
|
|
60
|
-
.then(gameroom => gameroom.toStatusVo());
|
|
61
|
-
}
|
|
62
|
-
setRoomPlayerState(player, key, value) {
|
|
63
|
-
return this._manager.setRoomPlayerState(player, key, value);
|
|
64
|
-
}
|
|
65
|
-
setRoomPlayerStates(player, states) {
|
|
66
|
-
return this._manager.setRoomPlayerStates(player, states);
|
|
67
|
-
}
|
|
68
|
-
setRoomPlayerSynced(player, value, updateBrainer) {
|
|
69
|
-
return this._manager.setRoomPlayerSynced(player, value, updateBrainer);
|
|
70
|
-
}
|
|
71
|
-
updateRoomBrainer(player) {
|
|
72
|
-
return this._manager.updateRoomBrainer(player);
|
|
73
|
-
}
|
|
74
|
-
broadcastToRoom(player, gameroomCode, data) {
|
|
75
|
-
return this._manager.broadcastToRoom(player, gameroomCode, data);
|
|
76
|
-
}
|
|
77
|
-
broadcastToRoom2(player, gameroomCode, data) {
|
|
78
|
-
return this._manager.broadcastToRoom2(player, gameroomCode, data);
|
|
79
|
-
}
|
|
80
|
-
broadcastInRoom(player, data) {
|
|
81
|
-
return this._manager.broadcastInRoom(player, data);
|
|
82
|
-
}
|
|
83
|
-
broadcastInRoom2(player, data) {
|
|
84
|
-
return this._manager.broadcastInRoom2(player, data);
|
|
85
|
-
}
|
|
86
|
-
broadcastToZone(player, gamezoneCode, data) {
|
|
87
|
-
return this._manager.broadcastToZone(player, gamezoneCode, data);
|
|
88
|
-
}
|
|
89
|
-
broadcastToZone2(player, gamezoneCode, data) {
|
|
90
|
-
return this._manager.broadcastToZone2(player, gamezoneCode, data);
|
|
91
|
-
}
|
|
92
|
-
sendDataToRoommate(player, playerCode, data) {
|
|
93
|
-
return this._manager.sendDataToRoommate(player, playerCode, data);
|
|
94
|
-
}
|
|
95
|
-
sendDataToRoomDecisionmaker(player, gameroomCode, data) {
|
|
96
|
-
return this._manager.sendDataToRoomDecisionmaker(player, gameroomCode, data);
|
|
97
|
-
}
|
|
98
|
-
setZonePlayerState(player, zoneCode, key, value) {
|
|
99
|
-
return this._manager.setZonePlayerState(player, zoneCode, key, value);
|
|
100
|
-
}
|
|
101
|
-
setZonePlayerStates(player, zoneCode, states) {
|
|
102
|
-
return this._manager.setZonePlayerStates(player, zoneCode, states);
|
|
103
|
-
}
|
|
104
|
-
setZonePlayerSynced(player, zoneCode, value, updateBrainer) {
|
|
105
|
-
return this._manager.setZonePlayerSynced(player, zoneCode, value, updateBrainer);
|
|
106
|
-
}
|
|
107
|
-
getZonePlayerStates(player, zoneCode, playerCode) {
|
|
108
|
-
return this._manager.getZonePlayerStates(player, zoneCode, playerCode);
|
|
109
|
-
}
|
|
110
|
-
getZonePlayersStates(player, zoneCode) {
|
|
111
|
-
return this._manager.getZonePlayersStates(player, zoneCode);
|
|
112
|
-
}
|
|
113
|
-
setZoneStates(player, zoneCode, states) {
|
|
114
|
-
return this._manager.setZoneStates(player, zoneCode, states)
|
|
115
|
-
.then(zone => zone.toStatusVo());
|
|
116
|
-
}
|
|
117
|
-
getZoneStatistics(player, gamezoneCode) {
|
|
118
|
-
return this._manager.getZoneStatistics(player.client, gamezoneCode);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
exports.gameroomService = new GameroomService();
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.gameroomService = void 0;
|
|
4
|
+
const GameroomManager_1 = require("./../managers/GameroomManager");
|
|
5
|
+
const ServiceBase_1 = require("./ServiceBase");
|
|
6
|
+
class GameroomService extends ServiceBase_1.ServiceBase {
|
|
7
|
+
constructor() {
|
|
8
|
+
super('gameroom');
|
|
9
|
+
}
|
|
10
|
+
_initialize(server) {
|
|
11
|
+
this._manager = new GameroomManager_1.GameroomManager(server);
|
|
12
|
+
}
|
|
13
|
+
_getManager() {
|
|
14
|
+
return this._manager;
|
|
15
|
+
}
|
|
16
|
+
createRoom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest) {
|
|
17
|
+
return this._manager.createGameroom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest)
|
|
18
|
+
.then(gameroom => gameroom.toFullVo());
|
|
19
|
+
}
|
|
20
|
+
joinRoom(player, gameroomCode, password) {
|
|
21
|
+
return this._manager.joinGameroom(player, gameroomCode, password)
|
|
22
|
+
.then(gameroom => gameroom.toFullVo());
|
|
23
|
+
}
|
|
24
|
+
createOrJoinRoom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest) {
|
|
25
|
+
return this._manager.createOrJoinGameroom(player, gamezoneCode, gameroomName, password, maxPlayers, state, stateJson, allowGuest)
|
|
26
|
+
.then(gameroom => gameroom.toFullVo());
|
|
27
|
+
}
|
|
28
|
+
leaveRoom(player, gameroomCode) {
|
|
29
|
+
return this._manager.leaveGameroom(player, gameroomCode);
|
|
30
|
+
}
|
|
31
|
+
queryRoom(player, gameroomCode) {
|
|
32
|
+
return this._manager.queryGameroom(player, gameroomCode)
|
|
33
|
+
.then(gameroom => gameroom.toFullVo());
|
|
34
|
+
}
|
|
35
|
+
listRooms(player, gamezoneCode, length, filter) {
|
|
36
|
+
return this._manager.listGamerooms(player.client, gamezoneCode, length, filter)
|
|
37
|
+
.then(list => list.map(gameroom => gameroom.toFullVo()));
|
|
38
|
+
}
|
|
39
|
+
listPlayersInRoom(player) {
|
|
40
|
+
return this._manager.listPlayersInGameroom(player)
|
|
41
|
+
.then(list => list.map(player => player.toVo()));
|
|
42
|
+
}
|
|
43
|
+
listPlayersOfRoom(player, gameroomCode) {
|
|
44
|
+
return this._manager.listPlayersOfGameroom(player, gameroomCode)
|
|
45
|
+
.then(list => list.map(player => player.toVo()));
|
|
46
|
+
}
|
|
47
|
+
listenToZone(player, gamezoneCode) {
|
|
48
|
+
return this._manager.enterGamezone(player, gamezoneCode)
|
|
49
|
+
.then(zone => zone.toAndStatusVo());
|
|
50
|
+
}
|
|
51
|
+
stopListenToZone(player, gamezoneCode) {
|
|
52
|
+
return this._manager.leaveGamezone(player, gamezoneCode);
|
|
53
|
+
}
|
|
54
|
+
setRoomState(player, state, stateJson) {
|
|
55
|
+
return this._manager.setGameroomState(player, state, stateJson)
|
|
56
|
+
.then(gameroom => gameroom.toStatusVo());
|
|
57
|
+
}
|
|
58
|
+
setRoomStateJson(player, stateJson) {
|
|
59
|
+
return this._manager.setGameroomStateJson(player, stateJson)
|
|
60
|
+
.then(gameroom => gameroom.toStatusVo());
|
|
61
|
+
}
|
|
62
|
+
setRoomPlayerState(player, key, value) {
|
|
63
|
+
return this._manager.setRoomPlayerState(player, key, value);
|
|
64
|
+
}
|
|
65
|
+
setRoomPlayerStates(player, states) {
|
|
66
|
+
return this._manager.setRoomPlayerStates(player, states);
|
|
67
|
+
}
|
|
68
|
+
setRoomPlayerSynced(player, value, updateBrainer) {
|
|
69
|
+
return this._manager.setRoomPlayerSynced(player, value, updateBrainer);
|
|
70
|
+
}
|
|
71
|
+
updateRoomBrainer(player) {
|
|
72
|
+
return this._manager.updateRoomBrainer(player);
|
|
73
|
+
}
|
|
74
|
+
broadcastToRoom(player, gameroomCode, data) {
|
|
75
|
+
return this._manager.broadcastToRoom(player, gameroomCode, data);
|
|
76
|
+
}
|
|
77
|
+
broadcastToRoom2(player, gameroomCode, data) {
|
|
78
|
+
return this._manager.broadcastToRoom2(player, gameroomCode, data);
|
|
79
|
+
}
|
|
80
|
+
broadcastInRoom(player, data) {
|
|
81
|
+
return this._manager.broadcastInRoom(player, data);
|
|
82
|
+
}
|
|
83
|
+
broadcastInRoom2(player, data) {
|
|
84
|
+
return this._manager.broadcastInRoom2(player, data);
|
|
85
|
+
}
|
|
86
|
+
broadcastToZone(player, gamezoneCode, data) {
|
|
87
|
+
return this._manager.broadcastToZone(player, gamezoneCode, data);
|
|
88
|
+
}
|
|
89
|
+
broadcastToZone2(player, gamezoneCode, data) {
|
|
90
|
+
return this._manager.broadcastToZone2(player, gamezoneCode, data);
|
|
91
|
+
}
|
|
92
|
+
sendDataToRoommate(player, playerCode, data) {
|
|
93
|
+
return this._manager.sendDataToRoommate(player, playerCode, data);
|
|
94
|
+
}
|
|
95
|
+
sendDataToRoomDecisionmaker(player, gameroomCode, data) {
|
|
96
|
+
return this._manager.sendDataToRoomDecisionmaker(player, gameroomCode, data);
|
|
97
|
+
}
|
|
98
|
+
setZonePlayerState(player, zoneCode, key, value) {
|
|
99
|
+
return this._manager.setZonePlayerState(player, zoneCode, key, value);
|
|
100
|
+
}
|
|
101
|
+
setZonePlayerStates(player, zoneCode, states) {
|
|
102
|
+
return this._manager.setZonePlayerStates(player, zoneCode, states);
|
|
103
|
+
}
|
|
104
|
+
setZonePlayerSynced(player, zoneCode, value, updateBrainer) {
|
|
105
|
+
return this._manager.setZonePlayerSynced(player, zoneCode, value, updateBrainer);
|
|
106
|
+
}
|
|
107
|
+
getZonePlayerStates(player, zoneCode, playerCode) {
|
|
108
|
+
return this._manager.getZonePlayerStates(player, zoneCode, playerCode);
|
|
109
|
+
}
|
|
110
|
+
getZonePlayersStates(player, zoneCode) {
|
|
111
|
+
return this._manager.getZonePlayersStates(player, zoneCode);
|
|
112
|
+
}
|
|
113
|
+
setZoneStates(player, zoneCode, states) {
|
|
114
|
+
return this._manager.setZoneStates(player, zoneCode, states)
|
|
115
|
+
.then(zone => zone.toStatusVo());
|
|
116
|
+
}
|
|
117
|
+
getZoneStatistics(player, gamezoneCode) {
|
|
118
|
+
return this._manager.getZoneStatistics(player.client, gamezoneCode);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
exports.gameroomService = new GameroomService();
|
|
122
122
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2FtZXJvb21TZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NlcnZlci9zZXJ2aWNlcy9nYW1lcm9vbVNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQWdFO0FBQ2hFLCtDQUE0QztBQUk1QyxNQUFNLGVBQWdCLFNBQVEseUJBQVc7SUFJckM7UUFDSSxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxNQUEwQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksaUNBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBRUQsV0FBVztRQUNQLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN6QixDQUFDO0lBRUQsVUFBVSxDQUFDLE1BQWMsRUFBRSxZQUFvQixFQUFFLFlBQW9CLEVBQUUsUUFBZ0IsRUFBRSxVQUFrQixFQUFFLEtBQWEsRUFBRSxTQUFjLEVBQUUsVUFBbUI7UUFDM0osT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDO2FBQ3RILElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFBO0lBQzlDLENBQUM7SUFFRCxRQUFRLENBQUMsTUFBYyxFQUFFLFlBQW9CLEVBQUUsUUFBZ0I7UUFDM0QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLFFBQVEsQ0FBQzthQUM1RCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsTUFBYyxFQUFFLFlB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
|