查看: 1467|回复: 4

[已经解决] 儲存變數問題

  [复制链接]
梦石
0
星屑
50
在线时间
371 小时
注册时间
2008-12-11
回帖
42
发表于 2011-8-13 00:47:35 | 显示全部楼层 |阅读模式

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

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

×
請問各位~首先
  1. file = File.open("Save/data.rvdata", "wb")
  2. Marshal.dump($game_system.gallery, file)
  3. file.close
复制代码
產生儲存CG變數的檔案,

然後
  1. $game_system.gallery[2] = true
  2. file = File.open("Save/data.rvdata", "wb")
  3. Marshal.dump($game_system.gallery, file)
  4. file.close
复制代码
將2號CG打開。

但是如果在執行
  1. $game_system.gallery[3] = true
  2. file = File.open("Save/data.rvdata", "wb")
  3. Marshal.dump($game_system.gallery, file)
  4. file.close
复制代码
將3號CG打開,就變成3號CG打開。但2號CG卻關閉了!

請問如何才能寫入新變數但卻不覆蓋已存在的變數?!

点评

“同时”后面加句“使用”。  发表于 2011-8-13 01:24
三段脚本并非同时?……  发表于 2011-8-13 01:23

虚構歪曲

梦石
0
星屑
354
在线时间
1196 小时
注册时间
2010-12-18
回帖
3842

贵宾

发表于 2011-8-13 01:04:47 | 显示全部楼层
那个……
第三段脚本前,加上:
  1. p $game_system.gallery
复制代码
然后把图贴上来,就能弥补我看不出具体情况的问题……

点评

對...3個腳本事件是分開的  发表于 2011-8-13 01:26
回复

使用道具 举报

梦石
0
星屑
50
在线时间
371 小时
注册时间
2008-12-11
回帖
42
 楼主| 发表于 2011-8-13 01:25:16 | 显示全部楼层
好的~以下是P出來的圖↓
3339.PNG

上圖是CG2打開的狀況,下圖是CG3打開的狀況

看了內容之後稍微測試下,發現如果打開CG2之後關掉遊戲再進入之後打開CG3
則CG2變成關閉CG3打開

若是同時打開CG2與CG3的話則沒問題~兩個都正常開啟(於是加入CG4測試)

測試之後判斷因為寫入之前沒有讀取先前紀錄的檔案↓
  1. file = File.open("Save/data.rvdata", "rb")
  2. $game_system.gallery = Marshal.load(file)
  3. file.close
复制代码
所以會直接生成新的檔案(不知是不是如此...自己猜測的)

所以只要在寫入新變數之前使用↑讀取之後應該就沒問題了???對嗎?

点评

真是很少见到的领悟能力高的人,真希望每个人都有你这么好……  发表于 2011-8-13 01:36
回复

使用道具 举报

虚構歪曲

梦石
0
星屑
354
在线时间
1196 小时
注册时间
2010-12-18
回帖
3842

贵宾

发表于 2011-8-13 01:35:28 | 显示全部楼层
hsun770916 发表于 2011-8-13 01:25
好的~以下是P出來的圖↓

我只能说,如果两次不一样是会覆盖的……那么你必须在第二次分开使用的时候先读取……好吧,理解能力不错,不需要我说明已经想到了。
回复

使用道具 举报

梦石
0
星屑
50
在线时间
371 小时
注册时间
2008-12-11
回帖
42
 楼主| 发表于 2011-8-13 01:40:56 | 显示全部楼层
感謝幫助~不然自己一個人還真的不知道怎麼找問題解決方法!

点评

我只是给了几个提示吧……其实还是你自己解决的哦。  发表于 2011-8-13 01:48
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部