36 lines
934 B
JavaScript
36 lines
934 B
JavaScript
const harvester = require('harvester');
|
|
const transfer = require('transfer');
|
|
const builder = require('builder');
|
|
module.exports = {
|
|
mount() {
|
|
Creep.prototype.action = action;
|
|
if (!(Creep.prototype.hasOwnProperty('working_target_id'))) {
|
|
Object.defineProperty(Creep.prototype, 'working_target_id', {
|
|
get: function () {
|
|
return this.memory.working_target_id
|
|
},
|
|
set: function (id) {
|
|
this.memory.working_target_id = id
|
|
}
|
|
}
|
|
)
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
function action() {
|
|
let role = this.memory.role;
|
|
// this.say(`${role}`);
|
|
switch (role) {
|
|
case "harvester":
|
|
harvester.run(this)
|
|
break;
|
|
case "transfer":
|
|
transfer.run(this)
|
|
break;
|
|
case "builder":
|
|
builder.run(this)
|
|
break;
|
|
}
|
|
} |