【求助】一个简单的双击冲刺脚本
gamemaker吧
全部回复
仅看楼主
level 1
moe2333 楼主
写在step events里的,为什么会不起作用呢?
//Double Tap Dash (Not Functioning)
if(keyboard_check_pressed(vk_up)){
dash_timer = 30;
while(dash_timer > 0){
if(keyboard_check_released(vk_up)){
dash_ready = true;
break;
}
dash_timer -= 1;
}
}
if(dash_ready){
dash_timer = 30;
while(dash_timer > 0){
if(keyboard_check_pressed(vk_up)){
y -= 20;
dash_ready = false;
dash_timer = 0;
break;
}
dash_timer -= 1;
}
}
else{
dash_ready = false;
dash_timer = 0;
}
2015年02月08日 06点02分 1
level 1
moe2333 楼主
好吧,用alarm解决了[挠墙]
2015年02月08日 07点02分 2
level 6
恭喜解决。
考虑到这是一个逻辑错误,楼主可能没有意识到,姑且说一下之前的代码。
你的“放开按键”条件下的代码写到了“按下按键”条件下,用语言表达出来就是:
“在按键被按下时,判断按键是否被放开,若放开,则进行一段处理代码”。
这仅仅是一帧中发生的处理,而非一个持续过程,所以这段代码的运行周期中,按键只可能有“按下”和“放开”中的一个状态。
但是你“放开按键”下的代码要求按键同时处于“按下”和“放开”状态才会运行,而这是不可能发生的。
所以你“按键放开”的代码必然不会运行,也就无法进入“dash_ready”的状态了。
但愿解释清楚了,嗯。
2015年02月13日 05点02分 3
1