Project1
标题:
问脚本几个常识问题
[打印本页]
作者:
kvkv97
时间:
2013-12-18 10:29
标题:
问脚本几个常识问题
1,实变量在类外能被用吗?常量呢?
2,
class Game_System
...
def initialize
@map_interpreter = Interpreter.new(0, true)
@battle_interpreter = Interpreter.new(0, false) ???0表示什么?
3,我看见如Interpreter,Audio , Graphics等类名都是直接被引用的,到底在哪里定义了这些类?我看不到。
4,
def bgm_play(bgm)
@playing_bgm = bgm
if bgm != nil and bgm.name != ""
Audio.bgm_play("Audio/BGM/" + bgm.name, bgm.volume, bgm.pitch)
else
Audio.bgm_stop ????未被定义的方法是不能被用的,下面的这个(def bgm_stop /Audio.bgm_stop / end)就是对它的定义吗?那不是循环吗?就是Audio.bgm_stop(Audio.bgm_stop)
Graphics.frame_reset
end
def bgm_stop
Audio.bgm_stop
end
作者:
国产吃货
时间:
2013-12-18 11:23
1.在类内写入(我估计楼主说的是
实例变量
)
attr_reader : 实例变量名 #该变量能被其他类或方法读取
attr_accessor: 实例变量名 #该变量能被其他类或方法读取和修改
2.Interpreter.new(0, false) 0代表了什么 false代表了什么 你可自行去看 Interpreter的参数表。
本吃货替你看了下,发现
# depth : 堆置深度
# main : 主标志
initialize(depth = 0, main = false)
复制代码
还有,只有VA的解释器只有一个参数(depth),而Vx的解释器名为 Game_Interpreter,只有Xp的解释器名为Interpreter且有两个参数。
说明楼主果断发错区。
Interpreter 是一个类,XP默认脚本分成了好几段,很好找的。在默认脚本编辑器里。
Audio/Graphics是RGSS的内建模块,所以你看不到的,在F1里有其说明。
4.貌似Audio模块的方法不存在于编辑器内吧。
打开F1帮助,找到内建模块,里面的Audio模块,右侧有其所有可调用方法,bgm_stop,bgm_play均在其列。
作者:
Sion
时间:
2013-12-18 18:35
可以在类内部定义方法读取里面的东西。
#读实例变量的方法:
def var1
@var1
end
#上面的方法跟下面这个是等价的
attr_reader :var1
复制代码
读常量还可以这样:
class A
Const1 = 0
end
p A::Const1 #=> 0
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1