2015-05-12 4 views
0

Я командовал кучей крипов на определенные позиции, но когда я приказываю именно этому, он просто продолжает разглагольствовать. Я не делал ничего отличного от того, как я контролировал другие крипы, но он не работает. Остальные остаются.Почему моя крипа не остановится?

if(creep == Game.creeps["Transport1"]) 
{ 
    creep.moveTo(harvesterLoc.x, harvesterLoc.y - 2); 
    creep.transferEnergy(Game.creeps["Transport2"]); 
} 
if(creep == Game.creeps["Transport2"]) 
{ 
    creep.moveTo(harvesterLoc.x, harvesterLoc.y - 3); 
    creep.transferEnergy(Game.spawns.spawn1); 
} 

Первый работает, а второй нет? Место для второго находится внутри крепостных валов, это вызывает проблему?

ответ

3

У вас есть опечатка в этой строке:

if(creep = Game.creeps["Transport1"]) 

Заменить = с ==, как это:

if(creep == Game.creeps["Transport1"]) 

= является оператор присваивания, == оператор равенства. Подробнее об операторах в JS в MDN reference.

+0

Теперь я чувствую себя таким глупым, но то же самое происходит и после перехода к сравнительному ==. тот, который на валах продолжает идти по диагонали вниз, затем обратно – Aequitas

+0

Также проверьте имя спауна в 'Game.spawns.spawn1' - вероятно, это' Spawn1' с прописным буквенным 'S'. В противном случае могут возникнуть некоторые проблемы в вашей логике, которые невозможно отслеживать, используя только этот фрагмент кода. – artch

+0

Это тоже не проблема. Если я заменил move на 'creep.moveTo (23,27);' он отлично работает, но если я делаю 'creep.moveTo (23,27);' он не работает. Любое место будет работать, кажется, пока это не вал. Если местоположение, в котором я им скажу, чтобы перейти, это вал, который они сдвинут с него, а затем быстро вернется к нему. Там нет, где еще движется этот ползунок – Aequitas