最近在写一些复古游戏的项目,所以研究了2D游戏的一个上梯子效果,(upLadder),设想,(本文为原创文章未经允许禁止转载)

制作

先添加碰撞体,collider碰撞体,把他的trigger给打开我们不需要碰撞,只需要他的触发器即可!,同来判断角色是不是碰到了梯子!
QQ截图20220119154919.png

这里上面用了个碰撞器是为了防止玩家出去,然后造成bug,我们可以用碰撞检测来控制上方碰撞器的打开和关闭,可以直接取消不用
爬梯子首先我们不能受到unity自带的物理系统影响,我们暂时关闭rigidbody的物理系统!,这里我没直接启用Kinematic(运动学),这样他就不再受到物理系统的影响,也不收到重力影响,防止碰到梯子以后还保持所有方向上有velocity,我们在他接触梯子时候,把rigidbody.velocity = Vector2.zero;所以力归零!防止玩家卡飞

QQ截图20220122124000.png
QQ截图20220122124705.png
禁止跳跃
QQ截图20220122124743.png
激活上下爬梯子输入!
离开梯子同样打开物理关闭运动学Kinematic
QQ截图20220122124000.png
collapse status="true" title="项目下载地址"6

Last modification:January 22nd, 2022 at 04:12 pm
如果觉得我的文章对你有用,请随意赞赏