Project1
标题:
求教初始化问题
[打印本页]
作者:
kvkv97
时间:
2013-12-21 15:43
标题:
求教初始化问题
class Interpreter
#--------------------------------------------------------------------------
# ● 初始化标志
# depth : 事件的深度
# main : 主标志
#--------------------------------------------------------------------------
def initialize(depth = 0, main = false)
????这depth , main 两个,还没定义还是定义好了?是什么意思的?
@depth = depth
@Main
= main
# 深度超过 100 级
if depth > 100
print("调用公用事件超过了限制。")
exit
end
# 清除注释器的内部状态
clear ????注释器为什么要clear?
end
作者:
fux2
时间:
2013-12-21 15:50
为避免和其他interpreter实例指向同一个@list(引用你懂的。)导致奇怪的事情发生。
作者:
恐惧剑刃
时间:
2013-12-21 17:48
depth , main是参数,传递过去的
clear是执行的方法
作者:
萧叶藏刀
时间:
2013-12-21 19:53
@a = Interpreter.new(1,true)
#这样子depth = 1, main = true
@b = Interpreter.new
#这样子depth = 0, main = false
复制代码
定义函数时就已指定且使用时可以省略的参数称为默认参数。默认参数是在临时参数后面加上符号 = 来指定的。事先设定好了默认参数,在使用函数时未指定括号 () 内实参数数值的情况下,临时参数就会自动代入默认参数数值。
def dice(n = 6)
return rand(n) + 1
end
p dice # 等同于 p dice(6)
上述示例中未指定参数,使用函数时会返回一个 1~6 的随机数字,然而指定参数的话,就能更改随机数字的最大值。比如,使用 dice(8) 就会返回一个 1~8 的随机数字。
多参数函数同样能够指定各个默认参数,这样使用时就可以省略。
至于clear,那是函数
在初始化下面有
#--------------------------------------------------------------------------
# ● 清除
#--------------------------------------------------------------------------
def clear
@map_id = 0 # 启动时的地图 ID
@event_id = 0 # 事件 ID
@message_waiting = false # 信息结束后待机中
@move_route_waiting = false # 移动结束后待机中
@button_input_variable_id = 0 # 输入按钮 变量 ID
@wait_count = 0 # 窗口计数
@child_interpreter = nil # 子实例
@branch = {} # 分支数据
end
复制代码
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1