var BreakException= {}; var roleBuilder = { run: function(creep){ console.log(creep, "running Builder"); 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){ console.log("\t","isBuilding"); var targets = creep.room.find(FIND_CONSTRUCTION_SITES, { filter: (target) => { return target.energy < target.energyCapacity; } }); console.log("") if(creep.transfer(targets[0], RESOURCE_ENERGY) == ERR_NOT_IN_RANGE) { creep.moveTo(targets[0]); } } else { console.log("\t","isFindingSources"); var sources = creep.room.find(FIND_SOURCES); if (creep.harvest(sources[0]) == ERR_NOT_IN_RANGE){ creep.moveTo(sources[0]); } } } } module.exports = roleBuilder;