文档章节

【RPG Maker教程】事件基础篇:什么是开关

AmateurX
 AmateurX
发布于 2015/08/30 01:40
字数 1849
阅读 1426
收藏 2

梦想世界,在你手中


 

今天给大家讲解一下开关的使用。

开关,这个词在生活中并不陌生。

如电源开关,门窗开关,瓶盖开关...等数不尽数。

其实,“开关”只是一个事物的一种相对状态。


我来举个例子:

相对于【好天气来说

天气晴朗,代表开关的状态是【开】

乌云密布,代表开关的状态是【关】


相对于【考试及格来说,

成绩>60分,代表的开关状态是【开】

成绩<60分,代表的开关状态是【关】


相对于【吃饱了吗】来说,

吃饱了,代表开关的状态是【开】

没吃饱。代表的开关状态是【关】


那么,开关在游戏中到底该怎么用呢?

我们先来定义一个规则:

当我打开房间的灯,头顶的灯泡会发亮。

大家想想一个这个场景。

如果我打开了房间的灯,那么我头顶的灯泡会发亮。

房间灯是否被打开,就是一个开关。

如果这个开关被打开了,就会触发动作,“灯泡发亮”。


在游戏中常见的例子就是“任务系统”

如果我去跟村长对话,村长会给我安排一个任务,去村口杀死十头野猪。

玩过RPG的都知道,如果你不接任务,而直接去杀猪的话,是没有其他奖励的。

可是,当你领取了任务再去杀野猪,你杀多少都会有统计,当你杀够十头猪,还会提示你回村庄交付任务。


实质上,这里就用到了2个开关:【任务领取了吗】和【任务完成了吗】。

当你从村长的对话中选中了"嗯嗯,交给我吧!"的Flag时,任务领取了吗】的开关状态就变成了【开】,这时候你的任务日志就开始了,系统就会开始统计你杀了多少猪(用变量)。

而当你杀够十头野猪的时候,任务完成了吗】的开关状态也变成了【开】。此时你的任务就完成了,一般情况下,系统也不会再继续给你统计杀了多少头野猪了。


这时候你回到村长家找村长要任务奖励,

村长就会问系统:"系统系统,那孩子有没有杀够十头野猪啊?"

系统告诉村长:“有啊有啊,你看他的任务完成了吗】开关已经被打开了,任务完成了哟,你可以给他奖励了~

系统提示:恭喜玩家艾里克完成了村长的任务,奖励节操一打。


  • 你要牢牢记得:在游戏中,所有的开关,默认的状态都是OFF【关闭】


这里引用@隱眼不能_啦啦(巴哈姆特)的一段介绍:

【开关】就是一个按钮,切换事件模式的意思

看得懂中文的人都知道,就是开和关的意思,在RPG裡面要开跟关什麽东西呢?

就是当一个事件进行到一个地方,打开开关,就像按了按钮一样,按下去之后

就会切换模式,到另一个模式或事件去了。

如果设定关闭开关,也就是把按钮关掉,事件就会回到最初的样子,

这就是开关。

而开关可以影响整个游戏的进行,只要开关没有关闭,故事就不会回头。


再来说说【开关】和【独立开关】的区别:

把【事件比作一个一个的房间,

那么【开关】可以控制任何房间的灯,它是全局的。

如果你现在在自己的房间,你可以用【开关控制其他的房间的灯。

而【独立开关】只能控制自己房间的灯,操控不到其他房间的灯。


再换个例子。电闸

每个家里都有一个电闸吧,这个电闸就相当于【独立开关】

大楼底下还有一个总电闸,他可以控制到整栋楼的电闸,这就是【开关】


独立开关有什么用?


也许你在做游戏的时候会发现个问题:

    我要怎么让NPC对话完消失啊?

    我的宝箱为什么可以无限拿钱啊?


看完这一篇教程,你就知道,可以用独立开关来让他切换到另一种状态。


它相比开关来说,更快捷,更省空间。

因为每个事件都有很多个独立开关。

一般单个事件的状态转换就靠【独立开关来操作

比如:

让事件只执行一次,用独立开关。

宝箱(有东西的)转换到宝箱(没东西的),就用独立开关。


而开关一般用于比较重要的事件。

需要在多个地方使用到的。


嗯,说了这么多,不如一起动手做一下吧!

实例:

魔王入侵了银月城,他来到国王面前,逼国王交出城池。

然而,魔王并不知道这里早已布下了天罗地网,魔王即将落入的是一个局。

那么问题来了,我们该如何帮助国王,让他的援兵能及时出现呢?

下面,跟着我一起做吧!

首先,在事件中打开开关。

然后把国王请来的救兵们安顿好,放在一个谁都看不见的地方。

比如,我把他们放在了画面外面,这样他们在这个场景中就看不见了。

最上面4个事件都是国王请来的救兵。

有人问,最下面那个国王(ID:007)是干嘛的。

其实就是刚刚做的自动剧情,我给自动剧情加上脸图是为了更好的区分,反正也看不见。

因为我们后面还要添加其他的自动剧情。

让我们把话题回到救兵上面,

打开了开关之后,我要怎么让救兵们出现呢?

这是我给艾里克小朋友的一个出场特效

当国王需要帮助,打开了开关【埋伏】

艾里克小朋友就会从小黑屋突然蹦的一下

出现在左上方的柱子

然后从柱子走出来,面向魔王。


如果还想再完善一些,还能给这些动作加点特技,显示动画/闪烁/振动/移动路线等。

举个例子,我来脑补魔王逃跑的片段。

晕了吗?

其实逻辑很清晰的

你把它分解一下

当【埋伏】被打开,此时救兵们应该是陆续出现的,所以要【等待】一会,魔王还没看到救兵们。

好了,等待完过后,魔王下意识地退后了一步,看来给吓得不轻啊。

然后看看四周,数一数有多少救兵。(估计在想,如果救兵少,我就一锅端了你丫的。)

惨了,发现不对劲,转身就跑!三十六计,走为上计。

跑到门口,然后慢慢的消失(透明度)

跑的时候还不忘记说几句话。

装完逼就跑,真是刺激!


本次教程的工程范例:

        百度云


 新课预告:

      什么是变量



本次范例中使用的脚本:

    跳过标题 By光的圆周率


© 著作权归作者所有

共有 人打赏支持
AmateurX
粉丝 1
博文 3
码字总数 3247
作品 0
深圳
私信 提问
从0开始:开发自己的游戏[0]

我是Lem0,自学倡导者,执迷于“不务正业”,被批评“旁门左道”。我注册并使用简书,希望能够记录一些我记不住的事情,或者与大家一起共享知识,共同学习。 在「从0开始:开发自己的游戏」中...

Lem0
2017/03/08
0
0
HTML5游戏引擎Phaser初体验

首发:个人博客,更新&纠错&回复 一个小小的游戏在这里,试试看能不能过关?提示一下,方向键走路,空格键发炮,每发炮弹消耗12个积分,变大情况下可以发炮。 每秒60次的循环重绘,在其中判断...

祁达方
2015/11/26
261
0
手机RPG游戏引擎--Zero Mobile RPG

一个手机游戏RPG引擎 总体开发花费了6个月的时间!对应RPG感兴趣的朋友可以借鉴一下,少走一点弯路,同时也希望发现BUG是能发邮件或者留言通知我 引擎的 Interpretor 引用了RPG maker VX的Int...

匿名
2010/07/15
4K
0
NGUI全面实践教程(大学霸内部资料)

NGUI全面实践教程(大学霸内部资料) 试读文档下载地址:链接:http://pan.baidu.com/s/1jGosC9g 密码:8jq5 介绍:NGUI全面实践教程(大学霸内部资料)本书是国内NGUI最新教程,以全新的3.8...

大学霸
2015/03/31
0
0
回合制RPG游戏--JavaXYQ

JavaXYQ是使用纯java实现的一个2D回合制RPG游戏,大部分资源来自《梦幻西游》,类似梦幻西游玩法、风格。 项目目 标: 打造成一款强大方便的RPG游戏引擎,提供场景编辑器、任务编辑器、扩展脚...

匿名
2010/03/02
13.8K
2

没有更多内容

加载失败,请刷新页面

加载更多

如何有效的背单词

转眼间到了大三快要结束了。英语四级考了三次了,每次都220多分。成绩很稳定,但离四级线还有200多分。学校规定如果过不了四级线,就拿不到学士学位证。没有学位证就找不到好工作,找不到好工...

我是菜鸟我骄傲
40分钟前
1
0
导出表格

https://blog.csdn.net/hhzzcc_/article/details/80419396

Js_Mei
今天
0
0
Ubuntu中安装Elasticsearch

1.安装jre elasticsearch是使用java开发的搜索引擎,因此其运行依赖于java runtime environment,我们在这里不使用Oracel的官方jre,改为使用open-jre。 运行环境: ubuntu:18.04 jre:openj...

cloes
今天
0
0
nginx rails 详细站点配置入门教程

Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,R...

xiangyunyan
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部