赞 | 153 |
VIP | 10 |
好人卡 | 39 |
积分 | 93 |
经验 | 146191 |
最后登录 | 2024-5-6 |
在线时间 | 2504 小时 |
Lv4.逐梦者
- 梦石
- 0
- 星屑
- 9280
- 在线时间
- 2504 小时
- 注册时间
- 2011-5-20
- 帖子
- 15389
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
有时候我们的游戏里面需要给NPC增加好感度这个属性,然后根据好感度,NPC会给角色派发任务什么的···但是用变量什么又觉得复杂麻烦,在EVENT里面加一个新定义是个不错的选择,但不排除和其他脚本抽风冲突什么的乱七八糟的情况,而该教程可以有效解决你的问题···
首先我们按下F11打开脚本编辑器(图片以RMVX为参考)
找到Game_SelfSwitches
然后找到图片中圈出来的语句- return @data[key] == true ? true : false
复制代码 (如图,RMVA里面你需要找到的那一句是)
接下来使用- return @data[key] == nil ? false : @data[key]
复制代码 将这一句换掉
确定保存F12测试,事件指令里面的开关可以自由调用,很好···可以开始调教了
让我们来一段脚本测试,用脚本指令调用地图上的事件的开关,在这里我调用的是打开1号地图上的2号事件的独立开关A(想要用脚本调用的前提是那个地图和那个地图上的事件存在)的脚本指令- $game_self_switches[[1, 2, "A"]]=true
复制代码 如果你的1号地图上的2号事件有独立开关A打开时显示的事件页或者执行的指令,就能看到明显的效果,但是还没有结束,我们继续调教!
顺带一提,如果把- $game_self_switches[[1, 2, "A"]]=true
复制代码 改成- $game_self_switches[[1, 2, "A"]]=false
复制代码 就是关闭了(true是开false是关)
那么,脚本调用没问题,再来试试下面一段脚本,依然是处理我们的1号地图的2号事件的独立开关A- $game_self_switches[[1, 2, "A"]]=1
- p $game_self_switches[[1, 2, "A"]]
复制代码 你会得到p的结果1(RMVA需要打开控制台再测试才能看到p的结果)
我们还可以干得更加丧心病狂
漂亮- $game_self_switches[[1, 2, "A"]]+=1
- $game_self_switches[[1, 2, "A"]]*=2
- $game_self_switches[[1, 2, "A"]]+=2
- $game_self_switches[[1, 2, "A"]]/=3
- p $game_self_switches[[1, 2, "A"]]
复制代码 这个时候的独立开关可以当成一个变量来用了!
不过你需要注意,如果没有给独立开关先下一个定义(或者说是赋值),那就会出错(RMVA不会,但是也没任何效果)
也可以说是想要把- $game_self_switches[[1, 2, "A"]]
复制代码 当成变量运算的前提是- $game_self_switches[[1, 2, "A"]]
复制代码 已经是一个可以用来进行运算的东西···
当然你还可以写成数组- $game_self_switches[[1, 2, "A"]]=[]
- $game_self_switches[[1, 2, "A"]][0]=1
- p $game_self_switches[[1, 2, "A"]]
复制代码 如此一来,我们就可以利用独立开关来做爱做的事情
了! |
|