本帖最后由 RyanBern 于 2020-5-6 09:51 编辑
你需要在一个在任何情况下都在刷新的模块上插入你的判断。这样的模块至少有两个:Graphics 和 Input。
module Input # 打开单例类(singleton class) class << self # 使用 alias 重命名模块方法(实际上是重命名了 Input.update) alias rb_update_20200506 update # 插入新定义 def update rb_update_20200506 # 比对:Input.trigger(Input::A),由于是在 Input 模块里面,可以简化 if self.trigger?(A) # 执行你需要的操作 p "A" end end end end
module Input
# 打开单例类(singleton class)
class << self
# 使用 alias 重命名模块方法(实际上是重命名了 Input.update)
alias rb_update_20200506 update
# 插入新定义
def update
rb_update_20200506
# 比对:Input.trigger(Input::A),由于是在 Input 模块里面,可以简化
if self.trigger?(A)
# 执行你需要的操作
p "A"
end
end
end
end
上面代码我已经添加了注释,思路就是将读档的代码注入到 Input.update 方法里。在这个框架下你自己完成读档的命令吧。 |