2016-06-28 23:38:52 +00:00
|
|
|
var BreakException= {};
|
|
|
|
|
2016-06-28 20:31:39 +00:00
|
|
|
var roleBuilder = {
|
|
|
|
run: function(creep){
|
2016-06-28 23:38:52 +00:00
|
|
|
console.log(creep, "running Builder");
|
2016-06-28 20:31:39 +00:00
|
|
|
if(creep.memory.building && creep.carry.energy == 0){
|
|
|
|
creep.memory.building = false;
|
|
|
|
}
|
|
|
|
if (!creep.memory.building && creep.carry.energy == creep.carryCapacity){
|
|
|
|
creep.memory.building = true;
|
|
|
|
}
|
|
|
|
if (creep.memory.building){
|
2016-06-29 01:52:40 +00:00
|
|
|
console.log("\t is building");
|
2016-06-29 01:28:33 +00:00
|
|
|
var targets = creep.room.find(FIND_CONSTRUCTION_SITES);
|
|
|
|
|
2016-06-29 01:52:40 +00:00
|
|
|
var transferErrorCode = creep.build(targets[0]);
|
|
|
|
if(transferErrorCode == ERR_NOT_IN_RANGE) {
|
|
|
|
console.log("\t moving to", targets[0]);
|
2016-06-28 20:31:39 +00:00
|
|
|
creep.moveTo(targets[0]);
|
2016-06-28 23:38:52 +00:00
|
|
|
}
|
2016-06-28 20:31:39 +00:00
|
|
|
} else {
|
2016-06-28 23:38:52 +00:00
|
|
|
console.log("\t","isFindingSources");
|
2016-06-28 20:31:39 +00:00
|
|
|
var sources = creep.room.find(FIND_SOURCES);
|
|
|
|
if (creep.harvest(sources[0]) == ERR_NOT_IN_RANGE){
|
|
|
|
creep.moveTo(sources[0]);
|
|
|
|
}
|
|
|
|
}
|
2016-06-29 01:52:40 +00:00
|
|
|
|
|
|
|
|
2016-06-28 20:31:39 +00:00
|
|
|
}
|
2016-06-29 01:52:40 +00:00
|
|
|
};
|
2016-06-28 20:31:39 +00:00
|
|
|
module.exports = roleBuilder;
|