设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索

请问如何将指定变量存入/读取RXDATA文件中?

查看数: 3390 | 评论数: 7 | 收藏 1
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2012-5-17 19:29

正文摘要:

比如说我设置了一个5号变量为10,将此变量存入一个RXDATA中(随便取什么名) 因为这个五号变量在以后的游戏中会变,而之前变化的数据要一直读取,所以我想到了将变量存入RXDATA中 我参考过自动存档脚本,结果啥都没 ...

回复

帕克 发表于 2012-5-20 13:04:31
好吧- -我纠结了0.0,两个都可以用,不过orzfly的开创了新的方法- -所以认可他的吧= =
orzfly 发表于 2012-5-18 12:31:17
抱歉疏忽了
那个脚本第八行的 Marshal.save 改成 Marshal.dump
orzfly 发表于 2012-5-17 22:06:01
本帖最后由 orzfly 于 2012-5-17 22:07 编辑

$ges[10] = $game_variables[9]
$ges.save

= =b

游戏一开始的时候,执行
$game_variables[9] = $ges[10]
读入变量不就可以了……
帕克 发表于 2012-5-17 21:31:19
本帖最后由 帕克 于 2012-5-17 21:37 编辑
orzfly 发表于 2012-5-17 20:49
读取:$ges[:key]
设置:$ges[:key] = 233
保存:$ges.save


$ges[$game_variables[9].to_s] = 10
$ges.save

$ges["$game_variables[9].to_s"] = 10
$ges.save

$ges["$game_variables[9]"] = 10
$ges.save

$ges[$game_variables[9]] = 10
$ges.save

均不可以这样输出,我想写入变量
orzfly 发表于 2012-5-17 20:49:33
本帖最后由 orzfly 于 2012-5-18 15:11 编辑
  1. class Game_EternalStorage
  2.   attr_reader :filename
  3.   def initialize(fn)
  4.     @filename = fn
  5.     @data = (open fn, "rb" do |f| Marshal.load(f) end rescue nil) || {}
  6.   end
  7.   def save
  8.     open @filename, "wb" do |f| Marshal.dump(@data, f) end
  9.   end
  10.   def [](key); @data[key] || 0; end
  11.   def []=(k, v); @data[k] = v; end
  12. end

  13. $ges = Game_EternalStorage.new("Save9999.rxdata")
复制代码
读取:$ges[:key]
设置:$ges[:key] = 233
保存:$ges.save


‘‘──orzfly于2012-5-17 20:52补充以下内容

例子
事件里

脚本:$ges["一周目通关次数"] += 1
脚本:$ges.save
’’���

点评

強大@@!  发表于 2012-5-18 15:10
tommay 发表于 2012-5-17 20:42:59
本帖最后由 tommay 于 2012-5-17 20:50 编辑

save_data($game_variables[5], "xx.rxdata")
不过还是没想明白为什么一定要存存储

点评

$game_variables[5] = load_data("xx.rxdata")  发表于 2012-5-18 12:46
那如何读取呢?  发表于 2012-5-18 12:30
拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-18 02:54

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表