const roleHarvester = require('./role.harvester') const roleRemoteHarvester = require('./role.remoteHarvester') const roleTransporter = require('./role.transporter') const roleBuilder = require('./role.builder') const roleUpgrader = require('./role.upgrader') const roleScout = require('./role.scout') const roleAttacker = require('./role.attacker') const roleRangedAttacker = require('./role.rangedAttacker') const roleHauler = require('./role.hauler') const roleHealer = require('./role.healer') const roleFiller = require('./role.filler') const roleReserver = require('./role.reserver') global.roleModules = [ roleHarvester, roleRemoteHarvester, roleBuilder, roleTransporter, roleUpgrader, roleScout, roleRangedAttacker, roleHauler, roleAttacker, roleHealer, roleFiller, roleReserver, ] global.ROLES = {} for (let mod of roleModules) { ROLES[mod.name] = mod } global.creepIsAttacker = creep => creep.getActiveBodyparts(ATTACK) + creep.getActiveBodyparts(RANGED_ATTACK) > 0 global.activeRemotes = ['E8S4', 'E8S5', 'E9S5', 'E8S3'] global.ALREADY_IN_ROOM = 'alreadyInRoom' global.MOVING = 'moving' global.moveToRoom = function (creep, targetRoom) { if (creep.pos.roomName === targetRoom) { return ALREADY_IN_ROOM } const exitDir = Game.map.findExit(creep.room, targetRoom); const exit = creep.pos.findClosestByRange(exitDir); creep.moveTo(exit); creep.say(targetRoom) return MOVING }