UNPKG

1.73 kBJavaScriptView Raw
1const util = require('util');
2const common = require('@screeps/common');
3const config = common.configManager.config;
4const C = config.common.constants;
5const db = common.storage.db;
6const env = common.storage.env;
7const pubsub = common.storage.pubsub;
8const q = require('q');
9const fs = require('fs');
10const _ = require('lodash');
11const zlib = require('zlib');
12const utils = require('../utils');
13const path = require('path');
14
15exports.resetAllData = utils.withHelp([
16 "resetAllData() - Wipe all world data and reset the database to the default state.",
17 function resetAllData() {
18 return common.storage.resetAllData();
19 }
20]);
21
22exports.sendServerMessage = utils.withHelp([
23 'sendServerMessage(message) - Send a text server message to all currently connected players.',
24 function sendServerMessage(message) {
25 return pubsub.publish('serverMessage', message);
26 }
27]);
28
29exports.pauseSimulation = utils.withHelp([
30 'pauseSimulation() - Stop main simulation loop execution.',
31 function pauseSimulation() {
32 return env.set(env.keys.MAIN_LOOP_PAUSED, '1').then(() => 'OK');
33 }
34]);
35
36exports.resumeSimulation = utils.withHelp([
37 'resumeSimulation() - Resume main simulation loop execution.',
38 function resumeSimulation() {
39 return env.set(env.keys.MAIN_LOOP_PAUSED, '0').then(() => 'OK');
40 }
41]);
42
43exports.runCronjob = utils.withHelp([
44 'runCronjob(jobName) - Run a cron job immediately.',
45 function runCronjob(jobName) {
46 if(!config.cronjobs[jobName]) {
47 return q.reject(`Cronjob "${jobName}" not found`);
48 }
49
50 return q.when(config.cronjobs[jobName][1]()).then(() => 'OK');
51 }
52]);
53
54exports._help = utils.generateCliHelp('system.', exports);
\No newline at end of file