举报
以下是引用苍月邪神在2004-8-28 16:49:58的发言: 我要爆炸了`竟然发了3次帖子都没发出来.................. 在发一次~在发不出去偶真素要放弃了` OKOK,继续`书接上文。 不知道有没有人把自己做的东西测试过了`是不是会觉得屋外那个主人粉郁闷呢?不管你拿没拿宝箱他都就那一句话,总叫你去拿宝箱。拿拉箱子都空了他还素要叫你去拿。今天我们就拿这个做文章,让他在宝箱被我们拿走之后显示不一样的对话。 偶然遇见:“昏掉,拜托,不要再来了`在做一个开关的FLASH我抓图都抓昏了” 错,虽然开关也确实可以达到这个效果(至于怎么做相信看过前面的教程的人都应该会了,就留给大家自己去实验了),但是,并不素只有开关可以达到这个效果哦。我们要用另一个方法来达到这个目的。这次我们使用的新的东西素:“条件分歧” 首先打开“事件指令”窗口,在第3页就可以找到“条件分歧”按钮了。(Cock_gugU:“哎哎,事件指令窗口在哪?似乎有点印象,想不起来了。”作者:“我敲。。。。”Cock_gugU捂着头上的筋包:“啊,打我干什么嘛,人家是想不起来拉啊。”作者:“我再敲。。。。。”Cock_gugU:“55555555。。。。。”作者:“真想还敲你2下,这都能忘,你找‘文章的显示’和‘开关的操作’的哪个指令列表窗口就素了撒”) 找到了点击就进入“条件分歧”编辑窗口了。 这里先岔开一下,做点进阶讲座。我大致介绍一下条件分歧的作用。(不要忽视条件分歧,这个指令加上变数指令可以说是整个RM的灵魂,任何进阶系统都不会缺少这2个指令的。变数指令我们以后会接触到,大家先了解下就好) 条件分歧:看字面都应该可以理解大半。我说的简单点~就素偶们用的“如果。。。那么。。。”句型。自己设定一个条件,如果满足了这个条件,那么就执行一个自己设定好的指令;如果没满足这个条件,那么执行另一个/套自己设定好的指令。 条件分歧编辑窗口一共有2页(战斗事件中的这个指令只有一页): 总的:下面哪个“选项”---“也要设定为达成条件时的处理内容”大家都看到了吧~这个是控制双如果句型是否出现的。上面我说了`如果句型有1正1反2个句子组成,但是要2个都出现的条件是把这个“选项”打上勾。不打这个勾就会只出现正如果句型~反句型不会出现。一些情况不需要反如果句型的可以把这个勾去掉~已简化程序结构。(玄天:“我就不去掉,简化程序结构干什么。别人看不懂最好了,保护我的知识产权。”作者:“。。。。。。。好,你强的。我不管了。”N个小时过去了,只听某人一声惨叫:“啊!!!!我看不懂我自己编的程序了,我该在哪插入啊?。。。。。。。。。。”) 第一页: 开关:可以设定某一指定开关是开还是关。换成句子就素:如果开关X为ON/OFF的状态,做某事。 变数:可以设定某一变数的符合条件(这个是条件分歧的最重点,我在上面也说了)。可以设定的可以分成很多。总的来说是比一个变数和一个确定数字或者另一个变数的大小。换成句子就素:如果变数X和数字Y(变数Z)相比,结果为相等/较大/较小/不等,做某事。(我的图中哪个“等值”的位置就素需求结果选择,从上往下依次表示:等于,大于或等于,小于或等于,大于,小于,不等于) 计时器1/2:这个是你在游戏中设定了计时器才有用的东西`他和计时器是密切相连的,很多高手们做的时间作息系统就素靠这个(本论坛的justice就素一个哦)。可以设定成在一定时间的前后。换成句子就素:如果计时器的时间在X分Y秒之前/之后,做某事。 拥有金钱:这个是对你在游戏中身上所获得金钱数进行设定的。换成句子是:如果角色身上持有的金钱数在X数量以上/以下,做某事。 接下篇
以下是引用苍月邪神在2004-8-28 17:28:12的发言: 接上篇 第二页: 物品:可以设定物品是否获得作为条件。换成句子素:如果某道具X已经获得/未获得,则做某事。 主角:可以设定以主角的各种情况为基准,点后面哪个3个点的按钮可以设定基准条件。 为队伍成员:以角色是否参加战斗为基准(就素说以其他方法,比如我的开关换队员,携带在队伍中的角色一律不算是队伍成员)。换成句子就是如果某角色X在战斗队伍中,则做某事。 的名字是:这个是以角色原名字(在资料库里的名字)对应现在的名字(你可以用“输入名称的处理”来在游戏中让玩家改动主角的名字。换成句子就是:如果主角X名字被改动为Y,则做某事。 的等级为:以某一角色的等级做为基准。换成句子素:如果角色X的等级高于Y级,则做某事。 的HP为:以某一角色的HP做为基准。换成句子:如果某角色X的HP在数值Y以上,则做某事。 特殊技能:以是否学会某一特殊技能做为基准。换成句子:如果角色X已经学会特殊技能Y,则做某事。 物品:以某物品是否装备为基准。换成句子:如果角色X正装备着物品Y,则做某事。 状态:以状态效果是否受到为基准。换成句子:如果角色X正在状态Y的影响之下,则做某事。 角色:以某一事物的面对方向为基准。换成句子:如果主角X或者事件Y的面对方向为上/下/左/右,则做某事。 交通工具:以是否搭乘某交通工具为基准。换成句子:如果正在单程某交通工具X,则做某事。 剩下2个看字面应该都能理解吧~我就偷下懒不写了哈`嘎嘎~ 最后说下,条件分歧是可以叠加的。你完全可以在一个条件分歧下在套用一个条件分歧,以达到只有2个条件都满足才执行某指令的效果。当然,你愿意的换套上他10几个也没人会说你。
以下是引用苍月邪神在2004-8-28 21:36:02的发言: OKOK~条件分歧介绍完了~回主题~ 我们说要做的是主人不同情况说不同的话吧~ 我们来编辑主人吧~呵呵~ 首先,双击主人以打开“事件编辑器”。(裸奔的蜗牛:“我偏不双击,气死你。。。”作者:“切。。。我看你怎么编辑。。”裸奔的蜗牛:“我反键点‘事件的编辑’,气死你。”作者:“。。。。。。。。。。。”) 进入“事件编辑器”窗口首先不管3721(两者皆可:“停,==,这个3721素什么?”作者:“三七二十一撒,笨,这都不知道。”两者皆可:“!·#!…………—¥—……·#¥%”)把“事件执行内容”里面的开关和文章显示都删除掉(反键点指令后选删除就OK了)。 这样我们就得到一个主人图片的空事件。OK~开始正式编辑。 首先调出“事件指令”窗口,选择“条件分歧”。来到条件分歧窗口。把条件选择定为“开关”,开关内容就设定为“0001:屋内宝箱”,开关效果定为ON。由于我们要设定的素2个情况------宝箱被拿之前和宝箱被拿之后-----所以要把下面选项的“也要设定为未达条件时的处理内容”这个钩钩上。 到这里就可以按OK了~ 这样我们就得到一个这样的“事件执行指令”项目窗。 这里有4个指令添加行(就素哪个菱形的黑标志)。 第2个是指肯定如果句,就素说当开关为ON时的设定指令格。第3个则相反,素开关不为ON的设定指令格。 偶们先来设定肯定句的指令吧~双击第2个菱形标志(就素我切图反白的那块)调出指令菜单。这里既然是肯定句,我们设定的条件又是宝箱开关为ON~就素说这个是当宝箱被拿走后的主人设定内容。知道了这个,我们就可以确定该做什么了~选择“文章的显示”在这里面输入:“怎么样?我那箱子里面的东西还有用吧~呵呵” 接着在第3个标志处(显示的“之外的情况”下面)加入指令一样的“文章的显示”(这里自己也要明白,这个地方你要加入的素宝箱还没拿走前的设定),输入“我的房间里面有个宝箱,里面的东西也许会对你有帮助,去看看吧。”OK,注意了`到这里估计还没什么人错~不过,在开始就会有一些人粗心了。(作者:”不信我们看看,下面谁知道接着要干什么啊?(施魔法的猫:“这还用说,编完了点确定不就OK了`还能赶什么。。。”)错掉,大家请忽略魔猫的言论`那素错误示范。 做游戏要保持清晰的头脑,不要忘了任何可能关联的东西`还记得哪个门吗?那里可是有不和主人接触打开开关就打不开门的事件指令哦~所以,这里就不要忘了加上开关。接着上面的第2个“文章的显示”之后,加入指令“开关的控制”设定为第2个开关“房间的主人”并把选项设为“ON”。 确定后“事件编辑器”窗口就变成了这样。 至此这个事件才是真正的算编辑完成。点确定完成操作吧` 事件原理:条件分歧为判断句型,它会已某个条件做判断选择事件的行进方向。本例中这个判断条件就是哪个宝箱开关。遇到这个事件,计算机先行对事件进行判断,一开始判断得到宝箱开关不是“ON”的状态`所以会执行第2套指令,即打开开关门,和显示对话叫主角去拿箱子。而当拿到宝箱后,这个开关被打开。再去和主人说话~计算机判断就会得到宝箱开关为“ON”状态了`所以就会执行第一套指令`即问候你拿到宝箱。 引申课题:这个条件我们设的分歧条件是“宝箱为ON”状态。其实设计成“宝箱为OFF”状态也可以达到同样效果`至于做法请大家自行思考`我就不多做说明了~
以下是引用苍月邪神在2004-8-29 5:38:47的发言: 继续引申了` 今天我们来在哪个宝箱上面下文章........屋外那主人说的神秘西西的好象那宝箱里面有什么很好的东西一样,结果我们去一拿就一破药草,肯定很不爽吧,呵呵。那么我们来增加一点神秘感好了---------做一个获得不确定物品的宝箱! 这里我们就要用到RM另一主要灵魂了:“变数”。 变数的位置就在“事件指令”窗口第一页,找到他`点击进入变数窗口。 还是一样。岔开一下,我来说名变数的基本知识。(这个东西是复杂了点~漫漫消化吧,能理解就理解,实在理解不了就先放下,以后接触的面广一点了也自然会理解的) 首先,这素变数的基本编辑窗口。 很多人都不看不懂变数是什么意思,其实这个是很好理解的。大家应该都学过方程吧?你就把变数想象成你方程里面的X/Y/Z就OK了~。变数说白了就素一个未知数,这个未知数的内容是由你指定或者代入的。 学过程序的人会很容易理解,变数换成程序语言就是:X=X(?)Y (?)代表各种运算符号。 下面来具体说明下,变数的基本编辑窗口被分成了3个区域: 操作的变数:这个是你的目标变数,被改动的就是他们。 单独:指定单个特定变数作为被改动对象。 范围:指定一定范围内的所有变数作为被改动对象。 变数X的变数:指定一个变数内所带有的值所对应的变数作为被改动对象。 操作内容:这个指你以什么方法改动上面的被改动变数,相当与数学里面的算术符号。 运算元:这个是指定你改变上面的被改动变数的依据的。 定数:由自己指定一个固定的确定数值。 变数:另一个变数内的值。 变数X的变数:另一个变数内的值所对应的变数的值。 乱数:在你设定的2个数值之前随即抽取一个数值。 物品:可以设定某一指定物品的已装备数量或者物品携带数量做为运算值。 主角:可以设定某一指定主角的能力值或者所装备的某一装备所对应的数值为运算值。 角色:可以设定地图上的指定角色(包括各种事件)的地图ID/XY坐标/面向等所对应的数值为运算值。 其他:以金钱等等一些内容所对应的数值做为运算值。 注:这里的变数项后面都有个3个点的按扭,点了以后会出现以下对话框 由于此窗口和开关那个窗口基本相同,只有性质不一样(哪个素开关,这个素变数),所以我就不多做介绍了,很简单的东西。 最后我对几个比较比较麻烦的东西举例做下解释。(其他比较好理解的大家就自己动动脑子吧~嘿嘿) 首先说下整个事件的效果` 比如:我选择“操作的变数”选“单独”对应变数“变数0001”,“操作内容”选“代入”,“运算元”选“定数”指定数值为“22”。则当事件发生后计算机会把“22”这个数值赋予“变数0001”,于是这个变数的内定值就为“22”了。 再如:我已经把2个变数“0001”和“0002”按以上或者其他方法依次代入了数值“22”和“16”。这时我选择“操作的变数”选“单独”对应变数“变数0001”,“操作内容”选“加”,“运算元”选“变数”对应变数“0002”。则当事件发生后计算机会把“变数0001”和“变数0002”内的数值提取出来进行“加”运算,然后把得到的结果再次赋予“变数0001”。于是“变数0001”的内定数值就由一开始的“22”变成了“38”;而“变数0002”不变,其内定数值依然是“16”。 接着说下理解的难点: 1,变数X的变数:已知“变数0002”的值为23;“变数0023”的值为12。当你在“操作的变数”中用“变数X的变数”对应“变数0002”的话,实际被操作的将是“变数0002”的内定数值“23”所对应的变数的数值,即“变数0023”的内定数值“12”。 总的:已知“变数0001”“变数0002”“变数0023”“变数0024”依次已经被赋予数值“23”“24”“14”“16”。当你在“操作的变数”中用“变数X的变数”对应“变数0002”;“操作内容”设定为“减”;在“运算元”中用“变数X的变数”对应“变数0001”。则当事件发生后计算机会提取“变数0002”的内定数值“24”所对应的“变数0024”所对应的数值“16”和“变数0001”的内定数值“23”所对应的“变数0023”所对应的数值“14”,做减法运算,并把运算得到的结果赋予“变数00024”。最后得到“变数0001”“变数0002”“变数0023”“变数0024”依次的值为“23”“24”“14”“2”。(只有“变数0024”被改动了哦) 2,主角这里后面下拉选单的“某某NO.”:这个是说装备在某个部位的装备所对应在物品资料库的ID序号。如:你指定的“萨克”的“武器NO.”,而执行这个事件时“萨克”拿着的武器素“长剑”,而“长剑”资料库里的物品栏中排在第18个(就素前面显示的哪个编号了,正规应该是和开关及变数一样的写法“0018”)。这样运算元就被指定成“18”了。
以下是引用苍月邪神在2004-8-29 6:03:20的发言: OKOK~回到正题,继续来做我们的随即箱子。 来到屋内地图,双击哪个箱子的事件以打开“事件编辑器”。 什么都别管直接把第一页的“事件执行指令”的内容全删了。(别把第2页也干掉了哦) 然后来配置我们的箱子吧。 首先调出“变数的操作”编辑窗口。“操作的变数”选“单独”对应“变数0001”,名字为了好记设定成“屋内宝箱获得”好了;“操作内容”用“代入”;“运算元”选“乱数”,指定前一个数为“1”,后一个数为“8”。点确定。 然后在下面继续加上“物品的增减”指令。“操作内容”用“增加物品”;“增减的物品”用“变数”对应“变数0001”;“运算”用“定数”指定为“1”。确定。 别忘了`这个宝箱还没有任何提示,一会又做成什么都没的箱子了就不好玩了` 这里由于我们的物品是随机的`所以不好说清楚。就先随便打2句话应付下了`呵呵~ 这里我用的“文章的显示”,内容为“获得神秘物品*1”。 到这里宝箱获得随机物品的编辑已经完成
以下是引用苍月邪神在2004-8-29 6:18:34的发言: 但是,不要急着确定。 不要忘了“要时刻记得和你所做的事件有关联的任何东西”,一点小小的漏洞都可能造成游戏整个无法进行。(当然这里的漏了还没那么严重) 要记得,这个宝箱可是开关控制分页的。所以不要忘了把宝箱开关加上。 这个开关加上以后点确定整个宝箱事件就变成了这样。 最后点确定这个随即物品宝箱就完成了。 事件原理:当你来打开宝箱时,计算机会随即从1~8这几个数字中收取一个数字赋予给“变数0001”。而“物品的增减”是以“变数0001”为基准的,于是“变数0001”的内定数值对应在物品资料库的物品就成了主角在这里获得的物品。而由于“变数0001”的内定数值是随机的,所以主角在这里获得的物品也就是随机的了。 值得注意的是,我们在这里设定的数值只是1~8,所以主角也只可能获得物品资料库里第一到第8位物品的其中一个。如果大家想让主角获得更好的东西,大可以把这个数值扩大。 引申课题:获得物品的数量也一样可以做成随机的。至于方法请大家自己思考吧,我就不多说了。
以下是引用苍月邪神在2004-8-30 20:35:40的发言: 继续,这次个人感觉不算是引申了~当是补完吧...... 还记得上次那宝箱随机后哪个无法显示获得了什么物品的缺憾嘛?今天来把他补完. 首先还是打开宝箱的“事件编辑器”,如果以前大家都照做了的话,那么现在宝箱的事件效果应该素这样的。 双击已编辑好的开关事件(作用是这个事件之前插入另一个事件。当然你反键点后选“插入”也可以达到相同效果。) 调出“事件指令”窗口,选“条件分歧”。“变数”里面指定变数为“0001:屋内宝箱获得”并“定数”数值为“1”,下面的对比为“等值”,下面的选项就不用打勾了。 [upload=jpg]UploadFile/2004-8/2004830203227331.jpg[/upload] 点确定完成这个“条件分歧”指令的编辑。 [upload=jpg]UploadFile/2004-8/2004830204322528.jpg[/upload] 再来是编辑这个分歧的事件。双击“条件分歧”指令的哪个事件编辑项(就素偶图中的反白那一行)调出“事件指令”窗口。选择“文章的显示”,输入显示内容为“获得物品 药水 *1”。确定后就是这样。 这个素条件分歧“1”的部分`后面请大家同理做出2~8的部分。 简便方法:把“条件分歧”这一段命令整个复制了顺着粘贴7次。在顺次把“条件分歧”指令编辑下~依次把数字改成1~8。同时对应数字把文章的显示依次改为“获得物品 药水 *1”;“获得物品 高级药水 *1”;“获得物品 魔法药水 *1”;“获得物品 奇迹药水 *1”;“获得物品 回魂剂 *1”;“获得物品 解毒剂 *1”;“获得物品 清新药草 *1”;“获得物品 行动救援 *1”。 结果就成了这样。点确定就OK了~ 整个宝箱这样就可以说素基本OK了~ 这里需要注意的就素由于我这个的资料库没改动,所以物品1~8对应的正好是这几个物品,所以“文章的显示”才能这样输入。这个素我的资料库~可以看到1~8正好对应我获得物品的1~8。 大家要是和我版本不同,或者资料库物品栏被改动,就要根据实际情况输入了。还有,我这里是拿1~8变数值做的例子,所以我也只做了这么几个分歧。如果大家给的变数范围比较大或者和我范围不在一个位置的话,也要变换获得物品的“文章的显示”的。 事件原理:这次的补完说白了就素一个变数+分歧的最基本应用的例子了。事件发生时首先随机赋值给一个变数,然后以这个变数获得一个指定的物品。同时以变数条件判断获得的物品是什么再给出相应的文章提示。 OK~至此,这篇教程就告一个段落了。。。。。。以后有东西估计也大部分会以做好的实例方式发放了`就不这样一个字一个字的敲了`嘎嘎~(偶也粉累的)。希望大家能学会分析别人的游戏程序,收为己用。不要总想着什么东西都有完全教导手册,毕竟那么多东西全部写成教程是不现实的。 写在最后:偶写的这个东西始终只是在一个地图上对一件事不断引申,不要以为是我懒,我只是想以此说明一个问题:不要死钻牛角,多想想办法,哪怕一个很简单的事也能“活”起来。多想想指令与指令的搭配,什么都可能成为现实的。RM的世界就是这样,敢于发挥想象力的人才素最强的。
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|Archiver|幻想森林
GMT+8, 2026-10-27 02:06 , Processed in 0.013325 second(s), 13 queries .
Powered by Discuz! X3.5
© 2001-2026 Discuz! Team.