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

Project1

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

[已经解决] 关于数组和哈希表的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
65 小时
注册时间
2012-10-18
帖子
22
跳转到指定楼层
1
发表于 2013-9-20 14:21:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 shiyatestzn 于 2013-9-20 15:00 编辑

RUBY 代码复制
  1. module XAS_CT_SYSTEM
  2.   # 初始设定的每个角色的CT。
  3.   # ACTOR_INITIAL_CT  = {A=>[B,C]}
  4.   # A = Actor ID
  5.   # B = CT Max
  6.   # C = CT speed  
  7.   ACTOR_INITIAL_CT = {
  8.   2=>[200,4]
  9.   }
  10. end
  11.  
  12. class Game_Actor < Game_Battler
  13.  
  14.   attr_accessor :ct
  15.   attr_accessor :ct_max
  16.   attr_accessor :ct_speed
  17.   #----------------------------------------------------
  18.   # ● Setup Initial CT
  19.   #----------------------------------------------------
  20.   def setup_initial_ct(actor_id)
  21.       ct_par = XAS_CT_SYSTEM::ACTOR_INITIAL_CT[actor_id]
  22.       if ct_par != nil
  23.          @ct_max = ct_par[0]
  24.          @ct_speed = ct_par[1]
  25.          @ct = @ct_max
  26.       end  
  27.   end



1.求问临时变量ct_par = XAS_CT_SYSTEM::ACTOR_INITIAL_CT[actor_id] 这句话。意思是不是将ACTOR_INITIAL_CT所指哈希表所有内容

都带入到ct_par里?    临时变量ct_par所指是数组还是哈希表?

2.求问  ct_par[0]     ct_par[1]   各代表什么?






Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21636
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

2
发表于 2013-9-20 14:29:39 | 只看该作者
本帖最后由 喵呜喵5 于 2013-9-20 14:37 编辑

ct_par = XAS_CT_SYSTEM::ACTOR_INITIAL_CT[actor_id]
这句的作用是将哈希表中索引为actor_id的数据代入ct_par这个变量中,你的代码中该索引对应的数据是数组所以ct_par也是数组
ct_par[0]、ct_par[1]分别用于读取ct_par这个数组中第1、2个元素

从你给的代码来看的话
当actor_id为2时
ct_par = XAS_CT_SYSTEM::ACTOR_INITIAL_CT[actor_id]执行以后的结果是:
  1. p ct_par  #[200,4]
  2. p ct_par[0]  #200
  3. p ct_par[1]  #4
复制代码

评分

参与人数 1梦石 +1 收起 理由
Sion + 1 认可答案

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
65 小时
注册时间
2012-10-18
帖子
22
3
 楼主| 发表于 2013-9-20 14:31:42 | 只看该作者
终于等来了喵呜喵 先激动个
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
65 小时
注册时间
2012-10-18
帖子
22
4
 楼主| 发表于 2013-9-20 14:41:11 | 只看该作者
本帖最后由 shiyatestzn 于 2013-9-20 14:44 编辑

喵呜大大厉害  窝懂了。版主快来给喵呜桑加分{:2_277:}
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
21636
在线时间
9415 小时
注册时间
2012-6-19
帖子
7118

开拓者短篇九导演组冠军

5
发表于 2013-9-20 14:46:05 | 只看该作者
shiyatestzn 发表于 2013-9-20 14:41
求问喵呜桑
ct_par = XAS_CT_SYSTEM::ACTOR_INITIAL_CT[actor_id]是将actor_id键对应的值(是个数组)

puts是一个输出语句,只是编辑脚本的时候方便测试的不用太在意

ct_par[n]的用途是读取ct_par这个数组中第n+1个元素,基本上所有的编程语言的数组都是这么读取的
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
65 小时
注册时间
2012-10-18
帖子
22
6
 楼主| 发表于 2013-9-20 14:55:35 | 只看该作者
喵呜喵5 发表于 2013-9-20 14:46
puts是一个输出语句,只是编辑脚本的时候方便测试的不用太在意

ct_par[n]的用途是读取ct_par这个数组中 ...



窝是自学ruby语言的。完全从网上和F1帮助文档学脚本。木有一点常识的  ,让喵呜大大费心咯

话说每次提问都有喵呜桑帮我解答 真是幸福死了{:2_280:}

(正色)喵呜桑以后也请多指教       #  =>    ←厚颜无耻的伸手党,正色你妹









点评

其实我也是自学的……  发表于 2013-9-20 15:10
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-17 16:43

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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