|
本帖最后由 啤酒布丁 于 2019-12-28 20:07 编辑
反墙跳可以说是很多游戏中都存在的一个机制,同类型的还有比如扒墙角上墙,我第一次见到扒墙角上墙印象里是波斯王子~
那么我们在IFAction中如何做出同样的机制呢?
本人作为脚本小白,就给大家从触发器的方面简单讲述下我本人是如何实现的。
第一步:
首先,思考如何制作出反墙跳的效果。我们不难想到这应该是一个“碰触就执行”的触发器。在此基础上,可能要略微判定一下玩家是否本身想要进行反墙跳。我这里思考的比较简单,也略微参考了一下消毒别动队的反墙判定(正好手机里有,我就感受学习了一下。)
得出的结论是:一般来说,角色在空中,接触墙壁,同时按着与墙壁相同方向的方向键时,则判定为玩家想要触发攀附墙壁状态,即如图所示:于是可以初步判定,我们的触发器条件应该为方向键被按住时(即按着与墙壁相同方向的方向键),触发器放在悬空位置(角色在空中),触发器的判定区域尽可能接近墙壁表面(接触墙壁)当然也要是可以反复触发。如图:
至于为什么会有一个状态判定,我稍后再提。
第二步:
接下来要思考的是,在触发了触发器之后,触发器所应该执行的内容。
攀附状态最明显的特点就是:贴墙缓缓下滑或者不下落。
缓缓下落的效果很容易想到利用调整重力来实现。为了让此时玩家不轻易移动,脱离贴墙状态,所以要让限制玩家移动,跳跃,攻击等。这里可以用状态中的禁止战斗禁止技能禁止跳跃等实现。
同时由于攀附在左边墙壁,按跳跃应该往右侧跳跃。攀附右边墙壁应该往左侧跳跃。为了让触发器能够分辨出这两种不同,所以左右墙壁的触发器应该有所不同,这里我们就让左右墙壁触发不同的开关来实现吧。
而具体的改变重力的操作,我选择在通用触发器中制作,如果你不嫌麻烦也可以直接写在这个触发器里=-=
第三步:
角色跳跃,脱离攀爬攀爬状态。
第四步:
如果玩家一直没按跳跃,不断滑落到地面,也要解除攀附状态。
最终效果图
PS:想要永远存在的状态,现阶段可以选择状态损失生命9999%后解除来达到=-=
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
评分
-
查看全部评分
|