kg-card-begin: markdown今天UP主的这节课没什么内容,主要时优化了跳跃和移动,本来像提前看UP主的下一个视频:在场景中增加移动的砖块,但是因为一些事情耽搁,这篇文章写完的时候已经快11点钟了,自己也有点累了,今天就学到这里把。优化移动和跳跃目前角色的移动方式是按下就走,放开按键就立马停止,像个机器人。我们可以利用move_toward()函数实现一个加速效果,这样角色在移动和停止的时候会有一个加速和减速效果。# 如果在地上则给与地面加速度,如果在空中则给与空中加速度,这是要给GDScript中的三元表达式,if后面的表达式如果为真则将前面的额值给acc,否则给后面的值
var acc = acceleration if is_on_floor() else air_acceleration
# move_toward 利用delta值从a值到b值进行增量增长,到达max_speed
velocity.x = move_toward(velocity.x, direction * max_speed, acc * delta)跳跃的更改了大部分以前的跳跃逻辑,之前的角色在平台上跳跃出去后在空中还可以进行一次二段跳,这有点不符合逻辑,所以这里更改了跳跃逻辑。首先解决从平台上跳跃出去后还可以在空中跳跃一次的问题。增了一个主要状态变量can_jump,因为代码很琐碎,
...
继续阅读
(60)