我正在制作一个有趣的平台游戏,并有一些简单的跳转代码,我想看看我是否可以让我的char双跳但是当我尝试按下按钮跳起来时它会很快触发两次意思是它看起来只是一次跳跃而不是2次跳跃,这是我当前的代码
onClipEvent (load) {
var ground:MovieClip = _root.ground;
var grav:Number = 0;
var gravity:Number = 2;
var speed:Number = 10;
var maxJump:Number = -14;
var jumps:Number = 0;
}
onClipEvent (enterFrame) {
_y += grav;
grav += gravity;
while (ground.hitTest(_x, _y, true))
{
_y -= gravity;
grav = 0;
}
if (ground.hitTest(_x, _y + 5, true))
{
jumps = 2;
}
else
{
touchingGround = false;
}
if (Key.isDown(Key.RIGHT))
{
_x += speed;
}
if (Key.isDown(Key.LEFT))
{
_x -= speed;
}
if (Key.isDown(Key.UP) && jumps>0)
{
grav = maxJump;
jumps -= 1
trace(jumps)
}
if (ground.hitTest(_x + (_width / 2), _y - (_height / 2), true))
{
_x -= speed;
}
if (ground.hitTest(_x - (_width / 2), _y - (_height / 2), true))
{
_x += speed;
}
if (ground.hitTest(_x, _y - (height), true))
{
grav = 3;
if (Key.isDown(Key.RIGHT))
{
gotoAndPlay(1);
if (Key.isDown(Key.LEFT))
{
gotoAndPlay(2);
}
}
}
}
抱歉,如果一切都没有完成,首先要问堆栈溢出,感谢您的帮助:)
答案 0 :(得分:0)
好吧,如果跳转变量(2)赋值给次,有些函数会调用,你应该做函数
跳
就像将当前_y连接到一些跳跃高度值(这样,只有双跳才可能)。
将所有代码放在那里..查看它会很有趣。