Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.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
Actionscript 3 AS3错误-尝试命中测试对象时_Actionscript 3_Flash_Hittest - Fatal编程技术网

Actionscript 3 AS3错误-尝试命中测试对象时

Actionscript 3 AS3错误-尝试命中测试对象时,actionscript-3,flash,hittest,Actionscript 3,Flash,Hittest,我想测试两个物体的碰撞。两者都在显示列表中。它们是电影剪辑,每一个都包含一个热门节目。一个叫做hitboxx,另一个叫做hits。但是,当我测试以下代码时: if (character2.hitboxx.hitTestObject(Spike1.hits)||character2.hitboxx.hitTestObject(Spike2.hits)||character2.hitboxx.hitTestObject(Spike3.hits)) { currLives--; } 我得到这

我想测试两个物体的碰撞。两者都在显示列表中。它们是电影剪辑,每一个都包含一个热门节目。一个叫做hitboxx,另一个叫做hits。但是,当我测试以下代码时:

if (character2.hitboxx.hitTestObject(Spike1.hits)||character2.hitboxx.hitTestObject(Spike2.hits)||character2.hitboxx.hitTestObject(Spike3.hits))
{
    currLives--;
}
我得到这个错误:

TypeError:错误#1009:无法访问空对象引用的属性或方法。
在佛罗里达州SpikeJungle::MainTimeline/frame1()[SpikeJungle\u佛罗里达州MainTimeline::frame1:126]

很难对代码说什么。代码似乎是正确的。可能是您忘记添加变量名或其他内容。或者尝试一次检查一个电影剪辑。意味着尝试删除中的其他条件,并检查其中一个条件,看看它是否工作。此外,在发布设置>>高级>>允许调试中,选中此选项并再次编译,您将获得有关错误的更多信息。

对象不是两个而是四个。hitboxx,Spike1,Spike2,Spike3。在调试器中,您可以找到哪个变量为null。我现在有以下信息
TypeError:Error#2007:参数hitTestObject必须为非null。flash.display::display object/\u hitTest()在flash.display::display object/hitTestObject()在fla::main timeline/frame1()[SpikeJungle\u fla.main timeline::frame1:159]
我不知道如何修复在hitTestObject中指定的对象为空。他说,这就是错误所在。你试过一次一个物体吗?if(character2.hitboxx.hitTestObject(Spike1.hits))如下所示。然后把结果贴在这里。