123456789101112131415161718192021222324252627282930313233 |
- var roleBuilder = {
- /** @param {Creep} creep **/
- run: function(creep) {
- if(creep.memory.building && creep.carry.energy == 0) {
- creep.memory.building = false;
- creep.say('harvesting');
- }
- if(!creep.memory.building && creep.carry.energy == creep.carryCapacity) {
- creep.memory.building = true;
- creep.say('building');
- }
- 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 {
- var sources = creep.room.find(FIND_SOURCES);
- if(creep.harvest(sources[0]) == ERR_NOT_IN_RANGE) {
- creep.moveTo(sources[0]);
- }
- }
- }
- };
- module.exports = roleBuilder;
|