设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1746|回复: 6
打印 上一主题 下一主题

[已经过期] 二维数组@a[0,0]=AAA[1]都是整数为何错误?

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
386 小时
注册时间
2006-12-10
帖子
231
跳转到指定楼层
1
发表于 2011-9-7 07:24:03 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
  1. AAA=[8,16,32,64,128,256,512,1024,2048,4096,8192,16384]
  2. class Vk
  3.   def initialize
  4.     @a = Table.new(100, 20)
  5.   end
  6.   attr_accessor :a
  7.   def ddd
  8.      n=AAA.size     
  9.     @a=AAA[rand(n)]
  10.    end
  11. end

复制代码
不明白为何总是错,知道的请指出一下,谢谢.

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
42869
在线时间
7625 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

7
发表于 2011-9-8 11:55:19 | 只看该作者
分清楚table和数组吧
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
543 小时
注册时间
2009-7-13
帖子
63
6
发表于 2011-9-8 02:38:41 | 只看该作者
本帖最后由 nanaka 于 2011-9-8 02:43 编辑

如果你把变量名和常量名改成英文,就不会出这么多问题了……
任务难度 → Difficulty 就不会报错了
退屈すぎ…
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
386 小时
注册时间
2006-12-10
帖子
231
5
 楼主| 发表于 2011-9-8 01:14:41 | 只看该作者
我用常量数组的值赋给一个二维数组,当然只能@a[1,1]=AAA[1]这样,难道常量数组AAA可以用AAA[1,1]表示??????????????
回复

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1357
在线时间
677 小时
注册时间
2009-11-11
帖子
2790
4
发表于 2011-9-7 23:21:24 | 只看该作者
既然叫2唯,那编号也是2唯的拉  ,你 aa[0] 电脑怎么知道是哪一个呢,aa[0,0]这样吧

嘿。嘿。嘿
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
386 小时
注册时间
2006-12-10
帖子
231
3
 楼主| 发表于 2011-9-7 22:53:13 | 只看该作者
AAA=[8,16,32,64,128,256,512,1024,2048,4096,8192,16384]
AAA是常数,便于修改数值然后代入到二维数组@a里面.
刚开始时,我用的时rand(n)来随机,但随机太过自由,就想用一个常数组来控制.
如@a=AAA[1],而AAA里可以用随机数来取常数里面已经设定好的各个值.
但这个做不代入游戏没有错,用p来显示也正常.但一到了游戏里,就发生错误了.



derdfyga于2011-9-7 22:56补充以下内容:
我把我的原数据贴出来吧.
代码复制
  1. class Vk
  2. 任务难度=[8,16,32,64,128,256,512,1024,2048,4096,8192,16384]
  3.   def 新任务
  4.   #0任务难度,1坐标X,2坐标Y,3获得声望,4获得经验,5获得金钱,6获得物品,
  5.   #7获得装备 8获得武器,9指定怪物  10任务查询费,11稀有度,12指定怪物HP,
  6.   #13指定怪物MP,14指定怪物攻击力,15指定怪物防御,16怪物精神,17怪物敏捷.
  7.     #任务坐标
  8.     @任务数据[0,1]=rand(60)+1
  9.     @任务数据[0,2]=rand(60)+1
  10.     $game_variables[6]=@任务数据[0,1]
  11.     $game_variables[7]=@任务数据[0,2]
  12.     #奖励声望
  13.     @任务数据[0,3]=rand(3)+1
  14.     $game_variables[8]=@任务数据[0,3]
  15.     #奖励经验
  16.     @任务数据[0,4]=rand(80)+20
  17.     $game_variables[9]=@任务数据[0,4]
  18.     #奖励金钱
  19.     @任务数据[0,5]=rand(80)+20
  20.     $game_variables[10]=@任务数据[0,5]
  21.     #奖励物品
  22.     @任务数据[0,6]=rand(10)+1
  23.     $game_variables[11]=@任务数据[0,6].round
  24.     #奖励装备
  25.     @任务数据[0,7]=rand(10)+1
  26.     $game_variables[4]=@任务数据[0,7].round
  27.     #奖励武器
  28.     @任务数据[0,8]=rand(10)+1
  29.     $game_variables[4]=@任务数据[0,8].round
  30.     #指定怪物
  31.     @任务数据[0,9]=rand(10)+1
  32.     $game_variables[4]=@任务数据[0,9].round
  33.     #任务费用
  34.     @任务数据[0,10]=rand(90)+10
  35.     $game_variables[5]=@任务数据[0,10]
  36.     #指定怪物HP
  37.     @任务数据[0,12]=rand(任务难度[n].integer)+1
  38.     $game_variables[17]=@任务数据[0,12].round
  39.     #指定怪物MP
  40.     @任务数据[0,13]=rand(任务难度[n])+1
  41.     $game_variables[18]=@任务数据[0,13].round
  42.     #指定怪物攻击力
  43.     @任务数据[0,14]=rand(任务难度[n])+1
  44.     $game_variables[19]=@任务数据[0,14].round
  45.     #指定怪物防御力
  46.     @任务数据[0,15]=rand(任务难度[n])+1
  47.     $game_variables[20]=@任务数据[0,15].round
  48.     #指定怪物精神
  49.     @任务数据[0,16]=rand(任务难度[n])+1
  50.     $game_variables[21]=@任务数据[0,16].round
  51.     #指定怪物敏捷
  52.     @任务数据[0,17]=rand(任务难度[n])+1
  53.     $game_variables[22]=@任务数据[0,17].round
  54.     #稀有度影响额外奖励 算法声望/1000+经验/1000+金钱/1000+物品金钱/1000+
  55.     #装备金钱/1000+武器金钱/1000+指定怪物HP/1000+指定怪物MP/1000+
  56.     #指定怪物攻击/100+指定怪物防御/100+指定怪物精神/100+指定怪物敏捷/100
  57.     @任务数据[0,11]=@任务数据[0,3]/1000+@任务数据[0,4]/1000+@任务数据[0,5]/1000+
  58.         @任务数据[0,6]/1000+@任务数据[0,7]/1000+@任务数据[0,8]/1000+
  59.         @任务数据[0,10]/100+@任务数据[0,11]/1000+@任务数据[0,12]/1000+
  60.         @任务数据[0,13]/1000+@任务数据[0,14]/100+@任务数据[0,15]/100+
  61.         @任务数据[0,16]/100+@任务数据[0,17]/100
  62.  
  63.  
  64.   end



derdfyga于2011-9-7 22:58补充以下内容:
每次都到这里"@任务数据[0,12]=rand(任务难度[n].integer)+1"就发生错误,加上integer也没有用.很是无奈.
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
280
在线时间
1374 小时
注册时间
2005-10-16
帖子
5113

贵宾

2
发表于 2011-9-7 09:06:27 | 只看该作者
@a既然是一个Table,那么后来的@a=AAA[rand(n)]又是怎么个情况?
Table的结构
t = Table.new(100, 20)  # 100*20=2000个元素的二维数组
t[0, 1] = 5
t[0, 2] = 6
t[99, 19] = 66
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-1-10 03:26

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表