diff options
author | Tom Harley | 2018-06-26 03:13:58 +0100 |
---|---|---|
committer | Tom Harley | 2018-06-26 03:13:58 +0100 |
commit | e08f49adfc17de12aca1490fe71c01beb49050cf (patch) | |
tree | eb17aaa3b2f4e13ad95fdc8c220e6ca77da8f60f | |
download | screeps-ai-e08f49adfc17de12aca1490fe71c01beb49050cf.tar.gz screeps-ai-e08f49adfc17de12aca1490fe71c01beb49050cf.zip |
Initial commit
-rw-r--r-- | src/main.js | 7 | ||||
-rw-r--r-- | src/role.harvester.js | 16 |
2 files changed, 23 insertions, 0 deletions
diff --git a/src/main.js b/src/main.js new file mode 100644 index 0000000..e466974 --- /dev/null +++ b/src/main.js @@ -0,0 +1,7 @@ +const harvester = require('role.harvester'); + +module.exports.loop = () => { + for (const name in Game.creeps) { + harvester.run(Game.creeps[name]); + } +} diff --git a/src/role.harvester.js b/src/role.harvester.js new file mode 100644 index 0000000..aae5a2c --- /dev/null +++ b/src/role.harvester.js @@ -0,0 +1,16 @@ +module.exports = { + run: (creep) => { + if (creep.carry.energy < creep.carryCapacity) { + // just use the first sourrce for now + const source = creep.room.find(FIND_SOURCES)[0]; + if (creep.harvest(source) == ERR_NOT_IN_RANGE) { + creep.moveTo(source); + } + } else { + const spawn = Game.spawns['Initial']; + if (creep.transfer(spawn), RESOURCE_ENERGY) == ERR_NOT_IN_RANGE) { + creep.moveTo(spawn); + } + } + } +}; |