Advertisement
Guest User

Untitled

a guest
Jul 3rd, 2015
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var _ = require('lodash');
  2. var courierAI = require('Courier');
  3. var diggerAI = require('Digger');
  4. var peonAI = require('Peon');
  5. var workerAI = require('Worker');
  6. var assailantAI = require('Assailant');
  7.  
  8. var avatarAI = require('Avatar');
  9. var wardogAI = require('WarDog');
  10.  
  11. for(var i in Memory.creeps) {
  12.     if(!Game.creeps[i]) {delete Memory.creeps[i];}
  13. }
  14.  
  15. var pop = [0,0,0,0,0];
  16. for(var cid in Game.creeps) {
  17.     var creep = Game.creeps[cid];
  18.     creep.suicide()
  19.     if(!creep.spawning) {
  20.         switch(creep.memory.role) {
  21.         case 'Courier':
  22.             courierAI(creep);
  23.             pop[0]++;
  24.             break;
  25.         case 'Digger':
  26.             diggerAI(creep);
  27.             pop[1]++;
  28.             break;
  29.         case 'Peon':
  30.             while(peonAI(creep)) {}
  31.             pop[2]++;
  32.             break;
  33.         case 'Worker':
  34.             workerAI(creep);
  35.             pop[3]++;
  36.             break;
  37.         case 'Assailant':
  38.             assailantAI(creep);
  39.             pop[6]++;
  40.             break;
  41.         case 'Avatar':
  42.             avatarAI(creep);
  43.             break;
  44.         case 'WarDog':
  45.             wardogAI(creep);
  46.             break;
  47.         default:
  48.             creep.say('NO AI!');
  49.             creep.memory.role = 'WarDog';
  50.             break;
  51.         }
  52.     }
  53. }
  54.  
  55. if(!Game.spawns.Spawn1.spawning) {
  56.     var sites = Game.spawns.Spawn1.room.find(FIND_CONSTRUCTION_SITES);
  57.          if(pop[2] < 0) {Game.spawns.Spawn1.createPeon();}
  58.     else if(pop[0] < 0) {Game.spawns.Spawn1.createCourier();}
  59.     else if(pop[1] < 0) {Game.spawns.Spawn1.createDigger();}
  60.     else if(pop[3] < 0) {Game.spawns.Spawn1.createWorker();}
  61.     else if(pop[2] < Math.min(0, 2 + (sites.length / 3))) {Game.spawns.Spawn1.createPeon();}
  62.     else if(pop[4] < 0) {Game.spawns.Spawn1.createAssailant();}
  63.     else if(Game.spawns.Spawn1.memory.pendAvatar) {
  64.         Game.spawns.Spawn1.memory.pendAvatar = !_.isString(Game.spawns.Spawn1.createAvatar());
  65.     }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement