【发布时间】:2013-08-02 18:18:59
【问题描述】:
所以我的马里奥项目必须包括马里奥运动的主要内容,当然是选择短高度或相当大的高度。众所周知,按住跳跃键让他跳得更高,这就是我的目标。在我的例子中,那个按钮是 X,我不确定该怎么做。
这是我目前的尝试失败,我的变量中默认设置重力为 0.87。
这是在我的 keyDownHandler 中(按下键时)
if (event.keyCode == Keyboard.X && onGround == true)
{
vy += jumpForce;
holdJump = true;
onGround = false;
if(holdJump == true && onGround == false)
{
_mario.y += 1;
}
else
{
vy = vy + (grav * 0.20);
holdJump = false;
}
这是在我的 keyUpHandler 中(当没有按下/放开键时)
if (event.keyCode == Keyboard.X)
{
if (holdJump == false)
{
accy = 0;
gravity = 0.80;
incSpeedY = 0;
}
}
【问题讨论】:
-
你可以使用标准的
vy=vyLast-g*(t-tLast),只要松开跳跃键时将vyLast设置为min(0,vyLast),设置为在地面按下跳跃键时的跳跃起始速度。跨度> -
抱歉,我才研究AS3大概一个月,不太清楚你的意思,或许你可以在代码中使用它作为例子?
标签: actionscript-3 actionscript