文档介绍:钓鱼系统(上)
嗨,大家好,我是浩然正气。经过半年的学习,相信淀粉们对于RMVA有了比较全面的了解。接下来,浩然给大家讲一讲事件实现的复杂效果,让大家能够更深一步地了解RMVA的强大功能。
另外,最近有的淀粉找我的时候把我当成小编了,还有问我要小编们QQ号的。这里我声明一下,我只是一名初中生,是一个淀粉,我的名字是孙浩然,所以就叫浩然正气了,就是这样。
说完了废话,我们就开始本期的内容吧。今天给大家带来的是模仿《零之轨迹》的钓鱼系统哦~
从今天起,我们要用事件做一些比较复杂的东西,为了避免后期效果不好,需要对要做的东西进行一下大体规划。
我们要做的是仿零轨的钓鱼系统,可以将整个过程分成如下的部分:
、鱼饵
我们只要将这4个部分分别实现并连在一起,整个钓鱼系统就完成了。另外,为了让这个系统可以重复使用,我们需要将其放到公共事件。
首先,我们需要设置好需要的物品,包括各种不同的鱼竿、鱼饵以及鱼。
鱼竿我只做了3个,大家可以自己随便添加,设置成“菜单中使用”,物品类型改成“贵重物品”,然后设置好价钱就可以了。各种鱼饵与鱼的添加和鱼竿类似(请不要吐槽那个叉子鱼竿)(图1)。
顺便说一下,钓鱼钓上来的不一定非得是鱼,也可以是武器装备之类的^_^。
、鱼饵
接下来是整个系统的第一部分也是最简单的一部分。打开数据库,新建一个叫做“”的公共事件,触发条件为“正常执行”(图2)。
然后,我们在这个事件中完成选择鱼竿的功能:添加[事件指令]→[信息]→[物品选择处理],选择“变量”,增加一个鱼竿变量与鱼饵变量(图3)。
分别添加好选择鱼竿变量与选择鱼饵变量,这里你还可以添加文字信息(图4)。
似乎这样就完成第一阶段了,但是实际上还有一个问题:测试时会发现,所有类型为贵重物品的都可以选择(图5),所以我们需要一个是不是要选择东西的判定。
空出其他四个阶段的公共事件,新建两个公共事件:判定鱼竿、判定鱼饵。
由于这两个功能接近,这里只写出判定鱼竿的事件。这个事件由于要判定是不是鱼竿,所以它需要一个“输入”和一个“输出”。RM的公共事件不能直接接受输入,所以我们还得用变量(图6)。(看,变量功能强大吧,实际上它是高阶事件的灵魂。)
这个事件很简单,只是一大堆判断而已,如果不是鱼竿则输出-1(图7)。
其中,“输入”就是玩家选择的物品编号,20、21、22是三个鱼竿的物品编号,为了方便,把“输出”变成了1、2、3。
按照同样的方法设置好判定鱼饵。然后,到[],添加一个[循环],将选择鱼竿/鱼饵的指令挪进去,加上判断鱼竿/鱼饵的指令,在输出不等于-1(即是鱼竿/鱼饵)的情况下跳出循环,并把输出赋值给相应的变量(图8)。
这样,如果玩家选择的不是鱼竿/鱼饵,就会一直重复,让玩家选择。
这段指令也许真的不是很好懂,但大家都是聪明的淀粉不是吗?仔细思考,你一定能看明白的!
解决了第一部分,我们进入“等待”环节。
仍然新建一个公共事件,取名“”。我们要做的就是在角色的头上生成一个省略号,等待,当鱼出现时变成叹号,然后结束等待。
整