2014-11-21 74 views
1

所以我創造了一個守衛蠕變;爲什麼我的守衛不會攻擊敵人?

Game.spawns.Spawn1.createCreep([Game.ATTACK, Game.ATTACK, Game.TOUGH, Game.TOUGH, Game.MOVE], "guard1", {role:"guard"}); 

,然後我有這個作爲我的主要:

var harvester = require('harvester'); 
var guard = require('guard'); 

for(var nam in Game.creeps) { 
    var creep = Game.creeps[nam]; 

    if(creep.memory.role == 'guard') { 
     guard(creep); 
    } 

    if(creep.memory.role == 'harvester') { 
     harvester(creep); 
    } 

    if(creep.memory.role == 'builder') { 

     if(creep.energy === 0) { 
      creep.moveTo(Game.spawns.Spawn1); 
      Game.spawns.Spawn1.transferEnergy(creep); 
     } 
     else { 
      var targets = creep.room.find(Game.CONSTRUCTION_SITES); 
      if(targets.length) { 
       creep.moveTo(targets[0]); 
       creep.build(targets[0]); 
      } 
     } 
    } 
} 

然後保護腳本

module.exports = function (creep) { 

    var targets = creep.room.find(Game.HOSTILE_CREEPS); 
     if(targets.length) { 
      creep.moveTo(targets[0]); 
      creep.attack(targets[0]); 
     }else{ 
      creep.moveTo(Game.spawns.Spawn1); 
     } 
} 

它在本教程中工作得很好,但現在實際模擬,它不起作用。

回答

2

我測試了你的腳本,他們在生存模式下工作得很好。具體問題是什麼?您是否檢查過CPU時間是否耗盡?

+0

我認爲實際的問題是我有3個窗口打開運行screeps,它只是放慢了一切。 – will 2014-11-21 14:55:06