Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript冲突函数_Javascript_Html_Collision - Fatal编程技术网

JavaScript冲突函数

JavaScript冲突函数,javascript,html,collision,Javascript,Html,Collision,我正在通过一个教程制作我的第一个HTML5游戏。教程突然结束了,但我决定在游戏结束时使用一些东西,比如结束屏幕和被敌人杀死的方法。然而,问题是,无论我读什么,我似乎都无法找出这个碰撞函数来检查两个矩形是否发生碰撞。目前,使用当前的碰撞功能。您可以找到特定函数本身以及整个程序(以防万一,尽管我知道您可能不会看到)。在我发帖之前,我一直在四处阅读,但我似乎无法使碰撞正常工作。我是做错了什么,还是我的逻辑不正确。如果有人能帮忙,我将非常感激。谢谢 好的,对于这个错误,很抱歉,我把其他的函数逻辑放在下面

我正在通过一个教程制作我的第一个HTML5游戏。教程突然结束了,但我决定在游戏结束时使用一些东西,比如结束屏幕和被敌人杀死的方法。然而,问题是,无论我读什么,我似乎都无法找出这个碰撞函数来检查两个矩形是否发生碰撞。目前,使用当前的碰撞功能。您可以找到特定函数本身以及整个程序(以防万一,尽管我知道您可能不会看到)。在我发帖之前,我一直在四处阅读,但我似乎无法使碰撞正常工作。我是做错了什么,还是我的逻辑不正确。如果有人能帮忙,我将非常感激。谢谢

好的,对于这个错误,很抱歉,我把其他的函数逻辑放在下面,但我很确定它是一样的。我以前只是犯了个错误

(!(x1 + w1 < x2) &&
           !(x2 + w2 < x1) &&
           !(y1 + h1 < y2) &&
           !(y2 + h2 < y1))
(!(x1+w1
也许这有帮助:)

函数冲突(a、b)
{
如果(a.xb.x&&a.yb.y)
{
返回true;
}
其他的
{
返回false;
}
}

您的(新)碰撞功能看起来是正确的(请参阅)。定义“工作恰到好处”。这个说法不对。它有时会发生碰撞,而且不会停止。我会把它放到游戏的链接中,你可以看到我的意思。我假设你指的是我在这篇文章中发布的代码,而不是粘贴箱部分。是的,我指的是(原始)较短的函数-执行矩形相交测试只需四次比较。你的javascript代码不会运行,因为出现错误…好的,我敢肯定,如果你现在使用游戏,它将使用该功能。问题是它现在似乎不起作用。
function collision(a,b)
{
    if(a.x < b.x + b.sprite.width && a.x + a.sprite.width > b.x && a.y < b.y + b.sprite.height && a.y + a.sprite.height > b.y)
    {
        return true;
    }
    else
    {
        return false;
    }
}