screep/mount.js

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;
}
}