赞 | 7 |
VIP | 866 |
好人卡 | 185 |
积分 | 32 |
经验 | 130059 |
最后登录 | 2024-10-29 |
在线时间 | 3618 小时 |
Lv3.寻梦者 双子人
- 梦石
- 0
- 星屑
- 3185
- 在线时间
- 3618 小时
- 注册时间
- 2009-4-4
- 帖子
- 4154
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 Sion 于 2013-12-16 23:14 编辑
范例下载地址:
多独立开关.rar
(189.58 KB, 下载次数: 111)
我不想下载很高级的RM编辑器,所以,我想办法通过脚本修改内存来实现不可能实现的功能。
也就是说,我将实现多独立开关的这种功能。
于是就这样,用RMXP1.03实现了。
下面是预览图。
制作过程:
先在地图上创建26个事件,然后插入代码
map = load_data("Data/Map001.rxdata")
letter = []
letter = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]
for id in 1..26
map.events[id].pages[0].list[1].parameters[0] = letter[id-1]
map.events[id].pages[1].condition.self_switch_valid = false
map.events[id].pages[1].condition.self_switch_ch = "A"
zhushi = RPG::EventCommand.new(108,0,["出现条件:独立开关操作#{letter[id-1]}=ON"])
map.events[id].pages[1].list[0] = zhushi
end
save_data(map,"Data/Map001.rxdata")
exit
map = load_data("Data/Map001.rxdata")
letter = []
letter = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]
for id in 1..26
map.events[id].pages[0].list[1].parameters[0] = letter[id-1]
map.events[id].pages[1].condition.self_switch_valid = false
map.events[id].pages[1].condition.self_switch_ch = "A"
zhushi = RPG::EventCommand.new(108,0,["出现条件:独立开关操作#{letter[id-1]}=ON"])
map.events[id].pages[1].list[0] = zhushi
end
save_data(map,"Data/Map001.rxdata")
exit
如果没有任何出错提示然后退出,那就成功了。
成功之后,删掉脚本然后退出工程。
打开工程之后,发现事件里面的“独立开关操作E=ON”,终于实现了。
本来我还想改事件的出现条件的,但是修改之后,发现只能显示ABCD,超过E的部分全部显示A,
虽然显示A,实际上是E,但是一旦修改并保存事件,那个E就失效了(变回A了)
于是来了一个补救方法。(代码在Main前面直接插入)
搞一个注释:出现条件:独立开关操作E
在事件页的最前面即可。
下面的代码是用于判断事件页的第一个是不是执行注释,然后判断满足哪个条件。就这样,多独立开关操作就做成了。
哪些人需要的就拿去好了。
如果使用后,发现有问题或BUG,请及时报告本人,方便第一时间及时解决。
常见问题和解决方法
问题:加了代码之后,原先RMXP自带的出现条件(独立开关部分)还有效吗?
回答:有效。但是脚本会优先判断注释的内容。
问题:为什么加了代码,加了注释,还不见效果?
回答:必须要放在事件页的第一行。
问题:为什么事件页没有出现?
回答:检查事件页第一行是不是不符合要求的注释。 |
评分
-
查看全部评分
|