查看: 2160|回复: 1

[已经解决] 为什么我在类里面不能调用模块里面的方法?

[复制链接]
梦石
2
星屑
6767
在线时间
501 小时
注册时间
2018-3-23
回帖
487

R考场第七期银奖

发表于 2018-6-15 19:50:05 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 MCCF 于 2018-6-15 19:58 编辑

为什么我在类里面不能调用模块里面的方法,而可以在类里面调用变量?模块内的两个方法:

  1. module MCCF
  2.   module CoverSave
  3.     # 判断令牌是否匹配的文件读取
  4.     def key_if
  5.       File.open(MCCF::CoverSave::DIRECTORY + make_filename(0), "rb") do |file|
  6.         Marshal.load(file)
  7.         return if_save_contents(Marshal.load(file))
  8.       end
  9.     end
  10.     # 在文件读取时,判断令牌是否匹配并返回一个值
  11.       def if_save_contents(contents)
  12.       return (contents[:variables][MCCF::CoverSave::KEY_ID] == $game_variables[MCCF::CoverSave::KEY_ID]) ? true : false
  13.     end
  14.   end
  15. end
复制代码
在Window_TitleCommand类当中调用:
  1. class Window_TitleCommand < Window_Comman
  2.   def continue_enabled
  3.     return DataManager.save_file_exists? && MCCF::CoverSave::key_if
  4.   end
  5.   end
  6. end
复制代码

发生错误:
发生 NoMethodError 。
undefined method ‘key_if’ for MCCF::Coversave:Module

如图

如图








祝好。
梦石
2
星屑
6767
在线时间
501 小时
注册时间
2018-3-23
回帖
487

R考场第七期银奖

 楼主| 发表于 2018-6-15 20:06:07 | 显示全部楼层
使用self.之后成功了,不用回答了
祝好。
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部