你好!我在工作一个横屏2维平台游戏,并想要使用全局乘数来使所有图片速度和游戏中的运动加速或减慢,但是当我尝试实现这个功能时,我发现跳跃高度增加了几像素,当我进入“慢动作”的时候,跳跃高度变成了从正常值(96像素)升高到98.50个像素(使用 “for”语句进行测量)。
代码片段:
如果键盘(vk_space)按下
并且(x,y+1)处于 obj_ground 整个
vspd>=0
vspd=-10
if vspd< terminal_velocity
vspd+= grav* global.timescale
y+=vspd*global.timescale
这个情况下发生的原因是?
(Note:为了增加可读性,我将代码进行了格式化)
// 检测空格键按下
if keyboard_check_pressed (vk_space) {
// 检测是否触地
if place_meeting(x,y+1,obj_ground) {
// 检测是向下运动(vspd>0)
if vspd>=0 {
// 初始化 vertical speed 为 -10
vspd = -10;
}
}
// 计算垂直速度(vspd < 终止速度)
if (vspd < terminal_velocity) {
vspd += grav *global.timescale;
}
// 让物体位置向下移动
y += vspd * global.timescale;
}
评论 (0)