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

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: kvkv97
打印 上一主题 下一主题

[推荐问答] 请问一个RGSS的问题

[复制链接]

Lv3.寻梦者

梦石
0
星屑
3920
在线时间
254 小时
注册时间
2013-10-13
帖子
790
11
 楼主| 发表于 2014-11-11 09:25:31 | 只看该作者
本帖最后由 kvkv97 于 2014-11-11 09:27 编辑

  1. Game_Party 的 actors 是包含游戏队伍所有角色的数组,里面的每个单元都是一个 Game_Actor 。
  2. 而 [ ] 是调用与索引相对应的 actors 里的某个角色:Game_Actor
复制代码
我的意思是:我无法理解actor=$game_party.actors[ i ]的actors[ i ]是怎么和@actors=[ ]联系起来解释的?
actors和@actors=[]是一样的吗?

点评

围观中............  发表于 2014-11-11 12:35
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2207
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

12
发表于 2014-11-11 12:38:25 | 只看该作者
kvkv97 发表于 2014-11-11 09:25
我的意思是:我无法理解actor=$game_party.actors[ i ]的actors[ i ]是怎么和@actors=[ ]联系起来解释的?
...

根据优先级,
  1. $game_party.actors[i]
复制代码
等价于
  1. ($game_party.actors)[i]
复制代码
也就相当于

  1. actors = $game_party.actors
  2. actors[i]
复制代码

点评

谢谢了,我终于弄明白了,原来变量真的是变量啊,姚秦三藏法师翻译佛经的智慧报果然 有用!  发表于 2014-11-12 12:47
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

无限の剣制

梦石
0
星屑
9941
在线时间
5019 小时
注册时间
2013-2-28
帖子
5030

开拓者贵宾

13
发表于 2014-11-11 12:40:14 | 只看该作者
这里的方括号[]是数组类的一个方法,
self[nth] 表示获取数组的第nth个元素,索引由0开始,若为负数则倒数。超过范围则返回nil
上面就说过了,一开始的@actors=[ ] 这个只是一个初始化,把@actors赋值为一个空数组。
actors只是Game_Party类的一个方法。

点评

就是游戏里的变量$game_variables和开关$game_switches才有 [](i)这种方法  发表于 2014-11-12 13:43
变量开关是什么呀?我晕了,计算机的术语要用好啊,要不很麻烦的。  发表于 2014-11-12 13:35
啊,不对,这个是变量开关里面重定义了[]方法后才有的。233  发表于 2014-11-12 13:09
a[1]等价于a[](1)  发表于 2014-11-12 13:04
谢谢了,我终于弄明白了,是数组A=[],那么A[ ](I)就是调用数组的附加玛  发表于 2014-11-12 12:53
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
31887
在线时间
5080 小时
注册时间
2012-11-19
帖子
4877

开拓者

14
发表于 2014-11-11 14:02:17 | 只看该作者
本帖最后由 芯☆淡茹水 于 2014-11-11 14:08 编辑

补充LS:
LZ 应该先理解 Game_Party 里的这句:attr_reader   :actors
定义实例变量的读取方法,等同于下面这个效果:
  1. def actors
  2.   return @actors
  3. end
复制代码
在 Game_Party  内部使用时,直接调用 @actors
而在外部调用时,就需要 Game_Party  生成的实例 $game_party ,再加上方法 actors
所以就  $game_party.actors
利用其定义的 actors 方法,调用 Game_Party  内部的实例变量 @actors  。

$game_party.actors  的 actors  是方法。
而在 Game_Party  内部的 @actors  是实例变量。
在外部 --> 使用方法 actors  --> 调用其内部的实变量 @actors  
xp vx va mv  va mz 各类型脚本/插件定制
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-20 19:37

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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