Project1

标题: 数组哪里出错了? [打印本页]

作者: hys111111    时间: 2012-6-1 21:27
标题: 数组哪里出错了?
  1.     line = []
  2.     for deep in 0...100
  3.       a = (rand(4)+1)*2
  4.       if $game_map.passable?(@x,@y,a)
  5.         line[deep]= a
  6.       end
  7.     end
  8.     for i in 0...line.size
  9.       if line[i]+line[i+1] == 10 #就这一行出错
复制代码
我写这个脚本,为了制做某一功能。
结果,判断数组的时候,发生错误了。能帮忙查明一下吗?dsu_plus_rewardpost_czw
作者: 明特·布兰马修    时间: 2012-6-1 21:31
本帖最后由 明特·布兰马修 于 2012-6-1 21:32 编辑

i的值没有定义的原因吗?
因为看着脚本都没有看见i的值被定义过。
我随便说说而已。
作者: Wind2010    时间: 2012-6-1 22:10
目测是line[i]或者line[i+1]的至少一个因为没有定义所以值为nil发生的错误
作者: end55rpg    时间: 2012-6-1 22:27
if line[i]+line[i+1] == 10必须写成:
if line[i]+line[i+1].to_i == 10
应为算到最后也就是i == size-1时候
line[i+1] == nil
作者: f26401004    时间: 2012-6-1 22:55
用 if line[i]+line[i-1] == 10 試試




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1