-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.js
28 lines (23 loc) · 798 Bytes
/
main.js
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
require("prototype.spawn")();
module.exports.loop = function () {
for (let name in Memory.creeps) {
if (!Game.creeps[name]) delete Memory.creeps[name];
}
let numberOfRolesWanted = {
"harvester": 2,
"builder": 10,
"upgrader": 6,
"repairer": 2,
};
for (let role in numberOfRolesWanted) {
let number = _.sum(Game.creeps, (creep) => creep.memory.role === role);
if (number < numberOfRolesWanted[role]) {
let result = Game.spawns["origin"].spawnCustomCreep(Game.spawns["origin"].room.energyCapacityAvailable, role);
if (!(result < 0)) break;
}
}
for (let name in Game.creeps) {
let creep = Game.creeps[name];
require("role." + creep.memory.role).run(creep);
}
};