-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.js
More file actions
34 lines (31 loc) · 1.2 KB
/
Copy pathmain.js
File metadata and controls
34 lines (31 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
global.util = require('util');
const tasks = [require('task.creeps'), require('task.towers'), require('task.manage'), require('task.market'), require('task.power'), require('task.visuals')];
const garbage = require('task.garbage');
const visuals = tasks[5];
global.util.setupRoomData();
const profiler = require('screeps-profiler');
// profiler.enable();
let main = module.exports;
main.loop = function() {
profiler.wrap(function() {
let myRooms = _.values(Game.rooms);
global.displays = [];
myRooms.forEach(function(r) {
let spawns = r.find(FIND_MY_SPAWNS)
if(!r.controller || !r.controller.my || spawns.length == 0) return;
global.util.initializeRoomData(spawns,r);
tasks.forEach(function(task) {
try {
task.run(spawns);
} catch(e) {
let msg = "ERROR in TASK " + task.name + " for ROOM " + r.name + ": " + e;
console.log(msg); Game.notify(msg);
console.log(e.stack); Game.notify(e.stack);
}
});
});
global.util.processTickData();
visuals.global();
garbage.run();
});
};