啤酒布丁 发表于 2019-12-28 20:07:02

【小技巧】用触发器做出反墙跳机制

本帖最后由 啤酒布丁 于 2019-12-28 20:07 编辑

反墙跳可以说是很多游戏中都存在的一个机制,同类型的还有比如扒墙角上墙,我第一次见到扒墙角上墙印象里是波斯王子~
那么我们在IFAction中如何做出同样的机制呢?
本人作为脚本小白,就给大家从触发器的方面简单讲述下我本人是如何实现的。
第一步:
首先,思考如何制作出反墙跳的效果。我们不难想到这应该是一个“碰触就执行”的触发器。在此基础上,可能要略微判定一下玩家是否本身想要进行反墙跳。我这里思考的比较简单,也略微参考了一下消毒别动队的反墙判定(正好手机里有,我就感受学习了一下。)
得出的结论是:一般来说,角色在空中,接触墙壁,同时按着与墙壁相同方向的方向键时,则判定为玩家想要触发攀附墙壁状态,即如图所示:于是可以初步判定,我们的触发器条件应该为方向键被按住时(即按着与墙壁相同方向的方向键),触发器放在悬空位置(角色在空中),触发器的判定区域尽可能接近墙壁表面(接触墙壁)当然也要是可以反复触发。如图:
至于为什么会有一个状态判定,我稍后再提。
第二步:
接下来要思考的是,在触发了触发器之后,触发器所应该执行的内容。
攀附状态最明显的特点就是:贴墙缓缓下滑或者不下落。
缓缓下落的效果很容易想到利用调整重力来实现。为了让此时玩家不轻易移动,脱离贴墙状态,所以要让限制玩家移动,跳跃,攻击等。这里可以用状态中的禁止战斗禁止技能禁止跳跃等实现。
同时由于攀附在左边墙壁,按跳跃应该往右侧跳跃。攀附右边墙壁应该往左侧跳跃。为了让触发器能够分辨出这两种不同,所以左右墙壁的触发器应该有所不同,这里我们就让左右墙壁触发不同的开关来实现吧。

而具体的改变重力的操作,我选择在通用触发器中制作,如果你不嫌麻烦也可以直接写在这个触发器里=-=

第三步:
角色跳跃,脱离攀爬攀爬状态。
第四步:
如果玩家一直没按跳跃,不断滑落到地面,也要解除攀附状态。


最终效果图



PS:想要永远存在的状态,现阶段可以选择状态损失生命9999%后解除来达到=-=

啤酒布丁 发表于 2019-12-28 20:12:43

有我讲述不清或者依旧不能理解的地方请随意回复提问。
也欢迎有优化意见的提出!!!

1515631104 发表于 2019-12-28 21:12:18

原罪组织疯魔参见
{:4_88:}

youlong 发表于 2019-12-28 21:22:55

哇,好棒的教程,叩拜,感谢楼主的心得分享{:3_62:}

小八馍馍 发表于 2019-12-29 13:29:17

哇,这个真滴秀~

q2571855 发表于 2020-1-2 19:44:16

果然大佬的教程来了

泽渔 发表于 2020-1-4 18:39:39

章鱼nb!!!!!!

次元文明 发表于 2020-1-4 19:25:29

章鱼牛逼!

啤酒布丁 发表于 2020-1-4 21:09:15

次元文明 发表于 2020-1-4 19:25
章鱼牛逼!

星皇牛批{:4_94:}商业互吹hhhhh

泡热水的鱼 发表于 2020-4-29 09:34:36

请问状态攀附的解除条件选什么?
页: [1] 2
查看完整版本: 【小技巧】用触发器做出反墙跳机制