查看: 2786|回复: 1

[已经解决] 批量变量赋值脚本

[复制链接]
梦石
0
星屑
1297
在线时间
995 小时
注册时间
2014-12-14
回帖
2939

开拓者

发表于 2016-2-16 21:28:47 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 Vortur 于 2016-2-16 21:46 编辑

嗯,根据2#的说法,$game_variables[6..14]这样是不对的。在下准备用循环来搞。
[fold=另外,因为非常纠结的原因,这个话题竟然同时在两个帖子里讨论了...也搬一下吧!]来自kklt:https://rpg.blue/forum.php?mod=v ... p;page=1#pid2664858
具体思路是用穷举法,将每个变量列一遍;但嘻哈表的使用能将变量与文本更好的结合。[/fold]






最初猜测
$game_variables[1...3]=$game_variables[4]
这样可以将4号变量分别赋值给1~3号变量。
但其实这样有很奇怪的bug:
1.情况1:
$game_variables[15] = 15
$game_variables[16] = 16
$game_variables[0006..0014] =$game_variables[0015]
这样的话,6~14的数值为0
2.情况2:
$game_variables[15] = 15
$game_variables[16] = 16
$game_variables[6..14] =$game_variables[15]
这样的话,6~7的数值为15,8为16,9之后就为0了,并且,15号与16号的数值变成了0
【RMVA教程】
---------------------
欲买桂花同载酒,终不似,少年游.

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2016-2-16 21:30:34 | 显示全部楼层
本帖最后由 taroxd 于 2016-2-16 21:37 编辑

你的猜测一开始就是错误的。不修改默认代码的话,建议老老实实使用一个循环(这也是事件指令中批量操作的做法)。

  1. 1.upto 3 do |i|
  2.   $game_variables[i] = $game_variables[4]
  3. end
复制代码
另外,脚本里不要在数字前面添0。如:8不要写成0008


如果要修改 Game_Variables 的源代码,你可以使用 Array#fill 方法。注意 $game_variables 不是一个数组。

点评

晕...@VIPArcher  发表于 2016-2-21 04:19
@管理员 快快给分,就这个答案在下最满意了~~  发表于 2016-2-21 04:19
谢谢!  发表于 2016-2-16 21:38
是。具体的代码可以看 Game_Variables  发表于 2016-2-16 21:37
谢谢! 如此说来,事件里的变量批量赋值功能并不是一句代码就能完成的,对吗?  发表于 2016-2-16 21:35

评分

参与人数 1星屑 +30 收起 理由
Vortur + 30 塞糖

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部