我正在使用Flash来创建一个平台游戏,我只是尝试使用hitTestObject添加一个if语句来跟踪一些单词,但是当我点击平台但我不断收到错误时#34;参数hitTestObject必须为非null"。
这是我的代码:
//variables
public var jon: Player;
public var platforms:Platform;
public function gameloop(Event)
{
//applying gravity
jon.y += gravity;
//adding movement
if (moveLeft == true)
{
jon.x -= xspeed;
jon.scaleX = -1;
}
if (moveUp == true && isJumping == false)
{
isJumping = true;
jon.y -= yspeed;
}
if (moveRight == true)
{
jon.x += xspeed;
jon.scaleX = +1;
}
//adding collisions for platforms **NOT WORKING**
if(jon.hitTestObject(platforms))
{
trace("hello i am working");
}
}
答案 0 :(得分:1)
错误表明platforms
为空。
您发布的代码中未创建jon
或platforms
,我猜这些是时间轴符号吗?确保您在时间轴中为名称platforms
指定了一个符号,并确保它已添加到gameloop
的框架中。