小编yan*_*234的帖子

Java更加资源化的碰撞检测

我在java中制作游戏,其中涉及角色在地图上移动并且通过从文本文件中读取某些数据而在地图周围放置一些固体碰撞对象(即建筑物).将有多个地图,这些对象的位置将发生变化.我的问题是会绘制一个特定颜色的矩形,指示这些结构背后的碰撞,或者读取鼠标坐标并搜索这些结构的数组以查看该点是否位于建筑物上,从而拒绝移动或改变,更加足智多谋, /或更快.如果绘制矩形是最好的,将其留在结构后面或在检测到碰撞后删除它会更好.谢谢你的时间!

java resources paint collision-detection

3
推荐指数
1
解决办法
227
查看次数

多个查询的节点MySql回调

在尝试创建将行添加到在MySql数据库上创建的新表的逻辑时,我遇到了一个问题。添加行时,我需要查询数据库4次以检查其他行,然后将正确的值添加到新行。我正在使用node.js和mysql模块来完成此任务。当我遇到麻烦时,代码不会在插入新行之前等待4个查询完成,因此每次将被发现的值设置为0。经过一些研究,我意识到回调函数应该是正确的,看起来像这样:

var n = 0;
connection.query("select...", function(err, rows){
    if(err) throw err;
    else{
        if(rows.length === 1) ++n;
    }
    callback();
});

function callback(){
    connection.query("insert...", function(err){
         if(err) throw err;
    });
}
Run Code Online (Sandbox Code Playgroud)

注意:select查询只能返回一项,因此if条件不应影响此问题。

我只想知道只有一个查询要等待的回调函数,但是对于多个查询要等待我有点迷茫。我唯一的想法是创建另一个变量,该变量在调用回调之前递增,然后在回调函数的参数中传递。然后在回调内部,查询可以用if语句封装,条件是该变量等于需要调用的查询数量,此处我将其设为4。我可以看到它正在工作,但是不确定这种情况是否已经内置了解决方案,或者是否已经开发了其他更好的解决方案。

javascript mysql callback node.js

2
推荐指数
1
解决办法
3185
查看次数