-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathautospawner.js
26 lines (22 loc) · 1.18 KB
/
autospawner.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
var roleHarvester = require('role.harvester');
var roleUpgrader = require('role.upgrader');
var roleBuilder = require('role.builder');
var autospawner = {
run: function(spawner){
var total_harvesters = Game.spawns[spawner].memory.num_harvesters;
var total_upgraders = Game.spawns[spawner].memory.num_upgraders;
var total_builders = Game.spawns[spawner].memory.num_builders;
var current_harvesters = _.sum(Game.creeps, (c) => c.memory.role == 'harvester' && c.memory.room == Game.spawns[spawner].room.name);
var current_upgraders = _.sum(Game.creeps, (c) => c.memory.role == 'upgrader' && c.memory.room == Game.spawns[spawner].room.name);
var current_builders = _.sum(Game.creeps, (c) => c.memory.role == 'builder' && c.memory.room == Game.spawns[spawner].room.name);
if(total_harvesters > current_harvesters){
console.log(current_harvesters);
roleHarvester.spawn(spawner);
} else if(total_upgraders > current_upgraders){
roleUpgrader.spawn(spawner);
} else if(total_builders > current_builders){
roleBuilder.spawn(spawner);
}
}
}
module.exports = autospawner;