Processing.JS中的命中检测实现

Processing.JS中的命中检测实现,processing.js,Processing.js,我在Processing.JS中编程命中检测时遇到了一些问题。我试着做一个函数,检查是否有东西接触到一个对象,然后返回true,否则返回false。这就是这里 Snake.prototype.checkTouching=函数(v){ 如果(v.position.x>this.position.x-this.width/2和&v.positionthis.position.y-this.height/2和&v.position.y

我在Processing.JS中编程命中检测时遇到了一些问题。我试着做一个函数,检查是否有东西接触到一个对象,然后返回true,否则返回false。这就是这里

Snake.prototype.checkTouching=函数(v){
如果(v.position.x>this.position.x-this.width/2和&v.positionthis.position.y-this.height/2和&v.position.y
我通过在draw函数中创建一个新变量“b”来实现它,该变量保存函数返回的值,然后使用if语句检查值“b”是否为true。像这样

  var b = snakey.checkTouching(mos);
var restarts = 0;
if(b === true){
    restarts += 1;
    Program.restart();
}   

不幸的是,即使运行函数的对象接触到运行函数的对象,也不会发生任何事情。我已经检查了逻辑是否有效,因此我知道它必须是我的实现。我似乎无法找出我的实现有什么问题。谁知道我做错了什么?这里是完整的程序。

您能调试一下您的程序,看看它与您期望的完全不同吗?首先,实际返回的
checkTouching()
函数是什么?如果你还没弄明白,请直接在帖子里贴一个。请注意,这不应该是您的整个项目,而应该是足够的代码,让我们自己运行以查看问题。Kevin Workman我以我所知道的方式进行了调试,出于某种原因,checkTouching()函数从未返回true,但是我知道没有理由不这样做,因为除了程序的其余部分之外,我已经测试了这个非常相同的逻辑,它可以工作。你确定调用了
checkTouching()
函数吗?
v
参数的值是多少?你需要一步一步地完成你的程序,直到你完全理解代码在做什么。凯文·沃克曼:是的,它肯定会被调用,因为我从中得到一个返回,只是它总是返回错误。是的,我知道它在用什么,是的,我知道v参数的值是什么。我知道如何在程序中寻找问题,我知道所有的事情都在做什么。我已经把所有的代码检查了好几次,所以我一定是遗漏了什么。这就是我把问题带到这里的原因。问题是,我们无法真正帮助您,因为我们无法运行此代码。我们无法知道
v
的值是多少。这就是为什么我要求一个,这样我们可以帮助你调试你的程序。没有它,我能做的最好的事情就是试着问你一些问题来帮助你自己调试它-如果你知道
v
的值,那么你应该能够准确地知道
if
语句在做什么。它的哪一部分是错误的?