本帖最后由 酋长的图腾 于 2017-6-27 07:14 编辑
如你上面所说的,在数据库-动画-帧-单元的不透明度,是保存在Animations.rxdata文件里的。
现在假设读取Animations.rxdata中的内容,存入变量a
a = load_data("Data/Animations.rxdata")
a = load_data("Data/Animations.rxdata")
那么如下就是你要找的不透明度:
a[动画编号].frames[帧数].cell_data[单元编号,6]
a[动画编号].frames[帧数].cell_data[单元编号,6]
其中动画编号与数据库中相同,是从1开始;而单元标号和帧数是从0开始的。
如果想在游戏进程中,统一调整1号动画全部单元的不透明度增大55,如此这般即可:
a = load_data("Data/Animations.rxdata") for i in 0...a[1].frames.size for j in 0...a[1].frames[i].cell_max a[1].frames[i].cell_data[j,6] += 55 end end $data_animations = a
a = load_data("Data/Animations.rxdata")
for i in 0...a[1].frames.size
for j in 0...a[1].frames[i].cell_max
a[1].frames[i].cell_data[j,6] += 55
end
end
$data_animations = a
需要注意,这个变化是不会随存档而保存的。
2017/6/26 - 23:11
根据建议,直接修改$data_animations即可。
for i in 0...$data_animations[1].frames.size for j in 0...$data_animations[1].frames[i].cell_max $data_animations[1].frames[i].cell_data[j,6] += 55 end end
for i in 0...$data_animations[1].frames.size
for j in 0...$data_animations[1].frames[i].cell_max
$data_animations[1].frames[i].cell_data[j,6] += 55
end
end
2017/6/27 - 7:13
第二种改法之所以会发生SyntaxError,是因为RMXP事件里的脚本输入框的大小有局限,所以一句话过长的时候,换行后就会发生语法错误。此时用\就可连接两行,就不会出现错误了。
|