Navigation

    forum

    • Login
    • Search
    • Categories
    • Recent
    • Popular
    • Users
    • Groups
    1. Home
    2. Kronic
    3. Posts
    • Flag Profile
    • block_user
    • Profile
    • Following
    • Followers
    • Topics
    • Posts
    • Groups
    • Blog

    Posts made by Kronic

    • Can't make harvesters put into containers or storage by type or ID

      Sorry for  the messy code, i keep adding to it to try to make it work but can't get any of my creeps to consistantly interact with storage or containers... have max energy in all locations... creeps say "bye" but never move towards or put energy in storage.

       

      thanks

       

      var roleHarvester = {

      /** @param {Creep} creep **/
      run: function(creep) {
      if(creep.carry.energy < creep.carryCapacity) {
      var sources = creep.room.find(FIND_SOURCES);
      if(creep.harvest(sources[0]) == ERR_NOT_IN_RANGE) {

      if(creep.carry.energy>0){
      var targets = creep.room.find(FIND_STRUCTURES, {
      filter: (structure) => {
      return (structure.structureType == STRUCTURE_EXTENSION || structure.structureType == STRUCTURE_SPAWN || structure.structureType == STRUCTURE_CONTAINER || structure.structureType == STRUCTURE_TOWER||structure.structureType ==STRUCTURE_STORAGE ) &&
      structure.energy < structure.energyCapacity;
      }
      });
      if(targets.length > 0) {
      if(creep.transfer(targets[0], RESOURCE_ENERGY) == ERR_NOT_IN_RANGE) {
      creep.moveTo(targets[0]);
      }
      }
      }
      else
      {
      creep.moveTo(sources[0]);
      }
      }
      }
      else {
      //creep.say('hi')
      var targets = creep.room.find(FIND_STRUCTURES, {
      filter: (structure) => {
      return (structure.structureType == STRUCTURE_EXTENSION || structure.structureType == STRUCTURE_SPAWN || structure.structureType == STRUCTURE_CONTAINER || structure.structureType == STRUCTURE_TOWER || structure.structureType==STRUCTURE_STORAGE) &&
      structure.energy < structure.energyCapacity;
      }
      });
      if(targets.length > 0) {
      if(creep.transfer(targets[0], RESOURCE_ENERGY) == ERR_NOT_IN_RANGE) {
      creep.moveTo(targets[0]);
      }
      }else
      {
      creep.say('bye');
      var targets = Game.getObjectById('583cfbe2a4a358bb5cadb920');
      creep.moveTo(targets);
      if(targets.energy<targets.energyCapacity) {
      if(creep.transfer(targets, RESOURCE_ENERGY) == ERR_NOT_IN_RANGE)
      {
      creep.moveTo(targets);
      }else{
      targets = Game.getObjectById('584062d3de55a3805b70708d');
      if(targets.energy<targets.energyCapacity) {
      if(creep.transfer(targets[0], RESOURCE_ENERGY) == ERR_NOT_IN_RANGE)
      {
      creep.moveTo(targets[0]);
      }
      }
      }
      }
      }
      }
      }
      };

      module.exports = roleHarvester;

      posted in Help
      Kronic