关于项目:https://github.com/kawai-developers/faster(分支dimitris)在第254行附近的文件www/js/services.js
上我有以下代码:
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 one)上,当我点击进入函数gamme.addScore
时,我调试它是出于某种原因。
你知道为什么会这样吗?
答案 0 :(得分: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
}
});
};
(有一小撮文件)