0

О проекте: https://github.com/kawai-developers/faster (филиал Димитрис) на файл www/js/services.js вокруг линии 254 У меня есть код folloging:Debugger дез не шаг в функцию, даже если условия будут выполнены

game.remove_deleted_items=function() 
{ 
    var deleted=move_items_on_the_top(); 

    game.grid.loopItems(function(item,i,j,values,game) 
    { 
    console.log(item.status); 
    if(item.status==='destroyed') 
    { 
     console.log("Δαμέ"); 
     values[i][j]= game.randomItem(values[i][j]);//Replace the item with the new one 
     game.addScore(1); 
    } 
    }); 
}; 

Но по какой-то причине, даже несмотря на то, следующая строка выполняется:

values[i][j]= game.randomItem(values[i][j]); 

строка ниже не является:

game.addScore(1); 

Оба они находятся в одном и том же состоянии, и игровой элемент доступен. Кроме того, метод существует и имеет следующую реализацию:

game.addScore=function(points) 
{ 
    console.log(points); 
    game.points.value+=points; 
    console.log("Helllo adding points"); 
} 

Но на мой отладчик (FireFox один) отладить его по какой-то причине, когда я нажимаю на шаг в функции gamme.addScore она не делает.

У вас есть идея, почему это происходит?

+1

Так что ни запуска кода обычно, ни с помощью отладчика ударит 'console.log (точки);'? Он просто никогда не попадает? Что, если вы поместите журнал под 'game.addScore (1);', это попадет? – dlsso

+0

Ну, ни то, как вы предложили, я просто положил game.addScore (1); в другое место и выглядело как шарм. –

+0

Я не делал никаких предложений о том, как заставить его работать, я просто пытался выяснить, что именно происходит. Рад, что вы все-таки работали. – dlsso

ответ

0

Я переместил игру. AddScore (1); вне обратного вызова, так что game.remove_deleted_items является:

game.remove_deleted_items=function() 
     { 
      var deleted=move_items_on_the_top(); 
      if(deleted) 
      { 
      deleted.forEach(function() 
      { 
       game.addScore(1); 
      }); 
      } 

      // I Loop through the grid because I want the i,j position for each item too. 
      game.grid.loopItems(function(item,i,j,values,game) 
      { 
      console.log(item.status); 
      if(item.status==='destroyed') 
      { 
       values[i][j]= game.randomItem(values[i][j]);//Replace the item with the new one 
      } 
      }); 
     }; 

(с щепоткой документации)

 Смежные вопросы

  • Нет связанных вопросов^_^