TsarBot/role/harvester.js

26 lines
682 B
JavaScript

var energyUtils = require('../utils/energy');
var roleBase = require('base');
class roleHarvester extends roleBase{
/** @param {Creep} creep **/
constructor(){
super();
this.name = 'Peasant'
}
run(creep) {
if(creep.store.getFreeCapacity() > 0) {
var sources = creep.room.find(FIND_SOURCES);
if(creep.harvest(sources[0]) == ERR_NOT_IN_RANGE) {
creep.moveTo(sources[0], {visualizePathStyle: {stroke: '#ffaa00'}});
}
}
else {
if(!energyUtils.depositEnergy(creep)){
creep.moveTo(Game.flags.IdleArea);
}
}
}
};
module.exports = roleHarvester;