RPGmakerMV (2)切换变量和事件
RM中开关的作用主要是关闭和打开一个事件,这是某些事件的触发条件之一。例如,事件只有在开关打开时才会执行,否则不会执行。
变量和开关其实可以理解为一个东西。开关只有1和0状态对应通断,而变量是无限的,可以设置更多的条件。例如,当变量在2和5之间时,事件被触发。
事件可以说是RM设计的核心,是一系列预设的操作。人物的移动可以是一个事件,一串字幕的显示也是一个事件,一场战斗的触发,装备的掉落,一扇门的打开,人物的返回和离开等等都是事件。无数的事件+游戏世界观+游戏画面构成了一款游戏。
首先说一个我为了熟悉切换事件变量而设计的游戏场景。游戏开始,玩家出现在一家酒店,接到找笔的任务。如果你找到这支笔并把它交给NPC,你就可以进入下一个场景。
我设计这个任务的主要思路是不让玩家偶然直接拿到笔。条件不满足的情况下去存笔点是拿不到笔的。必须调查足够多的地方,拿到道具棍,才能拿到笔。
如上图,我在场景的20个位置设置了1个变量,7个开关和几个事件。
我以拿笔这个事件为例,来描述一下每个设置的作用。下图显示了钢笔事件的逻辑。
先从玩家的角度说说这个事件是什么:玩家会发现在床脚,系统会提示“床下好像有东西,我要拿出来”,然后玩家会继续探索,找到一根木棍。最后在这个位置,系统会直接提示“用木棍”。玩家点击使用后,木棒为-1,笔为+65440。
接下来是事件逻辑。首先设置一个变量M记录玩家的探索进度,设置一个开关A判断玩家是否拥有一根木棍。每当玩家探索一个地方,变量M增加1,当M足够大(≥4)时,就可以拿到木棍,A打开,否则木棍会提示这里什么都没有。
钢笔事件:?如果?M≥4且A=1?{文本提示。木棍-1,钢笔+1}
?不然呢?{文字提示:床下好像有东西,我得拿点东西出来。}
木棍事件:如果?m≥4 {文字提示:获取木棒x1,A=1}
?不然呢?{文本提示:这里什么也没有}
下图显示了运行结果: