27 lines
577 B
JavaScript
27 lines
577 B
JavaScript
var energyUtils = require('util_energy');
|
|
|
|
var name = 'builder';
|
|
|
|
function run(creep) {
|
|
if(creep.memory.building && creep.store[RESOURCE_ENERGY] == 0) {
|
|
creep.memory.building = false;
|
|
}
|
|
if(!creep.memory.building && creep.store.getFreeCapacity() == 0) {
|
|
creep.memory.building = true;
|
|
}
|
|
|
|
if(creep.memory.building) {
|
|
var targets = creep.room.find(FIND_CONSTRUCTION_SITES);
|
|
if(targets.length) {
|
|
if(creep.build(targets[0]) == ERR_NOT_IN_RANGE) {
|
|
creep.moveTo(targets[0]);
|
|
}
|
|
}
|
|
}
|
|
else {
|
|
energyUtils.gatherEnergy(creep);
|
|
}
|
|
}
|
|
|
|
module.exports = {name,run};
|