Project1

标题: 新人求问如何开启二周目和偷窃的脚本 [打印本页]

作者: liujinjie9999    时间: 2017-1-19 22:58
标题: 新人求问如何开启二周目和偷窃的脚本
拜托各位大神帮帮忙吧
作者: guoxiaomi    时间: 2017-1-20 02:42
二周目脚本很多啦,最近看柳柳很早的视频自己写了一个:

  1. #==============================================================================
  2. # ■ 二周目类 v2
  3. #------------------------------------------------------------------------------
  4. #  简单的保存与读取二周目数据的类,其中仅包含了key-value对
  5. #
  6. #   使用方法:
  7. #   0. 在根目录下创建 Global 文件夹,将脚本插到 main 前
  8. #   1. 创建实例 $game_global = Game_Global.new(filename,init_hash)
  9. #   注:filename 参数是存档文件名,init_hash 参数是初始的hash值
  10. #   2. 实例调用 $game_global.set(key, value) 设置key-value对
  11. #   3. 实例调用 $game_global.key 即可获取对应的value值
  12. #
  13. #   对key的值要求是字符串,不是Symbol对象
  14. #   对value的值没有任何限制,任意对象都可以
  15. #
  16. #   特点:
  17. #   创造不同的Global文件分别保存数据,避免对所有的Global内容进行频繁读写
  18. #==============================================================================
  19. class Game_Global
  20.   def initialize(name,init_hash={})
  21.     @filename = 'Global/' + name + '.rxdata'
  22.     # 初始化 Hash 的各默认值
  23.     @global_hash = init_hash
  24.     # 存档文件存在时则读取
  25.     if exist?
  26.       read
  27.     end
  28.   end
  29.   
  30.   def write
  31.     file = File.open(@filename, "wb")   
  32.     Marshal.dump(@global_hash, file)
  33.     file.close
  34.   end
  35.   
  36.   def read
  37.     file = File.open(@filename, "rb")
  38.     @global_hash = Marshal.load(file)
  39.     file.close
  40.   end
  41.   
  42.   def exist?
  43.     return FileTest.exist?(@filename)
  44.   end
  45.   
  46.   def set(key,value)
  47.     @global_hash[key] = value
  48.     write
  49.   end

  50.   def method_missing(name)
  51.     return @global_hash[name.to_s]
  52.   end
  53. end

  54. # 创建实例
  55. $game_global = Game_Global.new('key')
复制代码

作者: liujinjie9999    时间: 2017-1-20 15:18
guoxiaomi 发表于 2017-1-20 02:42
二周目脚本很多啦,最近看柳柳很早的视频自己写了一个:

感激不尽  帮大忙了




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1