赞 | 400 |
VIP | 0 |
好人卡 | 24 |
积分 | 250 |
经验 | 45372 |
最后登录 | 2024-7-2 |
在线时间 | 3339 小时 |
Lv5.捕梦者 (版主)
- 梦石
- 1
- 星屑
- 23994
- 在线时间
- 3339 小时
- 注册时间
- 2011-7-8
- 帖子
- 3926
|
本帖最后由 guoxiaomi 于 2017-12-26 23:08 编辑
- #=============================================================================
- # Global_Save
- #-----------------------------------------------------------------------------
- # 管理全局存档的模块
- #=============================================================================
- module Global_Save
- # 需要全局存档的变量 ID 和开关 ID
- Global_Save_Variables = [1,2,3]
- Global_Save_Switches = [1,2,3]
- # 存档文件名
- Global_Save_Path = "Save/GSave.rxdata"
- #---------------------------------------------------------------------------
- # 将一个对象写入全局存档
- # object : 要写入的对象
- #---------------------------------------------------------------------------
- def self.save_data
- # 全局存档的文件名
- filename = Global_Save_Path
- # 打开文件(写入模式)
- file = File.open(filename, "wb")
- # 将 object 写入该文件
- object = {}
- object[:v] = Global_Save_Variables.collect{|key| $game_variables[key]}
- object[:s] = Global_Save_Switches.collect{|key| $game_switches[key]}
- Marshal.dump(object, file)
- # 写入完成,关闭文件
- file.close
- end
- #---------------------------------------------------------------------------
- # 读取全局存档的数据
- #---------------------------------------------------------------------------
- def self.load_data
- # 全局存档的文件名
- filename = Global_Save_Path
- # 如果存在全局存档,则读取,否则什么也不做
- if FileTest.exist?(filename)
- # 打开文件(读取模式)
- file = File.open(filename, "rb")
- # 读取文件中的数据,并把它放在指定 ID 的变量当中
- object = Marshal.load(file)
- Global_Save_Variables.zip(object[:v]).each{|key, value| $game_variables[key] = value}
- Global_Save_Switches.zip(object[:s]).each{|key, value| $game_switches[key] = value}
- # 读取完成,关闭文件
- file.close
- end
- end
- end
复制代码
存储全局存档:
读取全局存档: |
|