Project1

标题: 保存错误了! [打印本页]

作者: qq1090548579    时间: 2013-8-11 19:54
标题: 保存错误了!
本帖最后由 qq1090548579 于 2013-8-11 20:16 编辑
  1. #==============================================================================
  2. # ■ Scene_Load
  3. #------------------------------------------------------------------------------
  4. #  处理读档画面的类。
  5. #==============================================================================

  6. class Scene_Load < Scene_File
  7.   #--------------------------------------------------------------------------
  8.   # ● 初始化对像
  9.   #--------------------------------------------------------------------------
  10.   def initialize
  11.     # 再生成临时对像
  12.     $game_temp = Game_Temp.new
  13.     # 选择存档时间最新的文件
  14.     $game_temp.last_file_index = 0
  15.     latest_time = Time.at(0)
  16.     for i in 0..3
  17.       filename = make_filename(i)
  18.       if FileTest.exist?(filename)
  19.         file = File.open(filename, "r")
  20.         if file.mtime > latest_time
  21.           latest_time = file.mtime
  22.           $game_temp.last_file_index = i
  23.         end
  24.         file.close
  25.       end
  26.     end
  27.     super("要载入哪个文件?")
  28.   end
  29.   #--------------------------------------------------------------------------
  30.   # ● 确定时的处理
  31.   #--------------------------------------------------------------------------
  32.   def on_decision(filename)
  33.     # 文件不存在的情况下
  34.     unless FileTest.exist?(filename)
  35.       # 演奏冻结 SE
  36.       $game_system.se_play($data_system.buzzer_se)
  37.       return
  38.     end
  39.     # 演奏读档 SE
  40.     $game_system.se_play($data_system.load_se)
  41.     # 写入存档数据
  42.     file = File.open(filename, "rb")
  43.     read_save_data(file)
  44.     file.close
  45.     # 还原 BGM、BGS
  46.     $game_system.bgm_play($game_system.playing_bgm)
  47.     $game_system.bgs_play($game_system.playing_bgs)
  48.     # 刷新地图 (执行并行事件)
  49.     $game_map.update
  50.     # 切换到地图画面
  51.     $scene = Scene_Map.new
  52.   end
  53.   #--------------------------------------------------------------------------
  54.   # ● 取消时的处理
  55.   #--------------------------------------------------------------------------
  56.   def on_cancel
  57.     # 演奏取消 SE
  58.     $game_system.se_play($data_system.cancel_se)
  59.     # 切换到标题画面
  60.     $scene = Scene_Title.new
  61.   end
  62.   #--------------------------------------------------------------------------
  63.   # ● 读取存档数据
  64.   #     file : 读取用文件对像 (已经打开)
  65.   #--------------------------------------------------------------------------
  66.   def read_save_data(file)
  67.     # 读取描绘存档文件用的角色数据
  68.     characters = Marshal.load(file)
  69.     # 读取测量游戏时间用画面计数
  70.     Graphics.frame_count = Marshal.load(file)
  71.     # 读取各种游戏对像
  72.     $game_system        = Marshal.load(file)
  73.     $game_switches      = Marshal.load(file)
  74.     $game_variables     = Marshal.load(file)
  75.     $game_self_switches = Marshal.load(file)
  76.     $game_screen        = Marshal.load(file)
  77.     $game_actors        = Marshal.load(file)
  78.     $game_party         = Marshal.load(file)
  79.     $game_troop         = Marshal.load(file)
  80.     $game_map           = Marshal.load(file)
  81.     $game_player        = Marshal.load(file)
  82.     # 魔法编号与保存时有差异的情况下
  83.     # (加入编辑器的编辑过的数据)
  84.     if $game_system.magic_number != $data_system.magic_number
  85.       # 重新装载地图
  86.       $game_map.setup($game_map.map_id)
  87.       $game_player.center($game_player.x, $game_player.y)
  88.     end
  89.     # 刷新同伴成员
  90.     $game_party.refresh
  91.   end
  92. end
复制代码
我创了一个游戏,现在在游戏里,一按保存就会出现
脚本'Scene_Load'的77行发生了EOFError。

End of file reached


怎么解决啊,我的上传图片出了些问题

QQ图片20130811195345.jpg (15.86 KB, 下载次数: 4)

QQ图片20130811195345.jpg

QQ截图20130811200537.png (783 Bytes, 下载次数: 6)

这就是第77行,有毛问题?

这就是第77行,有毛问题?

作者: qq1090548579    时间: 2013-8-11 20:03
本帖最后由 qq1090548579 于 2013-8-11 21:17 编辑

原来可以发送图片呃,是浏览器的问题,谢谢@弗雷德
对了,我还不会脚本的时候
看了看脚本
以为是初始金钱,我就随便改了改,是不是哪里错了?
但是我现在找不到我改的在哪里
可能是那时候我以为$是钱吧,然后后面又有显示初始的,我可能就以为是钱了
你们如果还需要哪个部分的脚本就向我要啊
召唤楼主的我是怕情况很严重,别人答不上来...反正楼主也说了不会的可以问他{:2_275:}  
作者: 弗雷德    时间: 2013-8-11 21:20
很简单,新建一个工程,把Scene_Load类复制进去……
作者: qq1090548579    时间: 2013-8-12 01:57
弗雷德 发表于 2013-8-11 21:20
很简单,新建一个工程,把Scene_Load类复制进去……

我新建了一个工程,和我原来的对比了一下,一点错误都没有啊,那如果我把我的工程初始化,会影响到我的事件和地图那些之类的吗?
作者: 紫英晓狼1130    时间: 2013-8-12 08:21
只对Scene_Load初始化之后,应该不会影响游戏
复制进去看看
作者: qq1090548579    时间: 2013-8-12 09:18
紫英晓狼1130 发表于 2013-8-12 08:21
只对Scene_Load初始化之后,应该不会影响游戏
复制进去看看

我之前说了,我把我的和原始的对比了一下没有差别啊!他那个错误提示是不是指某个地方照成那里运行错误而已,可能不是那里的问题
作者: qq1090548579    时间: 2013-8-12 11:14
本帖最后由 qq1090548579 于 2013-8-12 11:16 编辑
qq1090548579 发表于 2013-8-11 20:03
原来可以发送图片呃,是浏览器的问题,谢谢@弗雷德
对了,我还不会脚本的时候
看了看脚本


我当然知道啊,以前我就不知道

现在好了
是我朋友电脑的问题..
谢谢@弗雷德  等各位朋友
费雷德...发言滴人都要给分哦,包括你
嘿嘿
作者: chd114    时间: 2013-8-12 12:08
电脑问题,我遇到过,应该是C盘什么坏了,你去找维修部修理下
作者: satgo1546    时间: 2013-8-12 12:13
重新存档试试=-=
一般EOF都是旧存档数据不全……
作者: yychchhh    时间: 2013-8-12 13:42
复制一下原来的Scene_Load又不费力气……= =
#以下扯淡
$就是金钱……原来如此,我在RM探索了这么久,终于发现整个RM都是由金钱变量所构成的,EB掉钱眼儿里了啊……
作者: qq1090548579    时间: 2013-8-12 13:54
yychchhh 发表于 2013-8-12 13:42
复制一下原来的Scene_Load又不费力气……= =
#以下扯淡
$就是金钱……原来如此,我在RM探索了这么久,终于 ...

该问题已经解决了,召唤版主@弗雷德 给3楼的加经验...
作者: orzfly    时间: 2013-8-12 14:43
那啥其实我想吐槽一下这明明是读档不能为啥要说存档不能呢……
作者: qq1090548579    时间: 2013-8-12 14:47
orzfly 发表于 2013-8-12 14:43
那啥其实我想吐槽一下这明明是读档不能为啥要说存档不能呢……

问我干什么?如果我知道的话还要问你们吗?
作者: heiwang1997    时间: 2013-8-12 18:01
以前遇到这种问题是因为存档时新保存进去一些东西,比如说原来只有$a,又存了$b,就会EOF
既然已经解决,我也不多说,楼主可以试试把出错工程的原存档删掉之后再运行游戏!
作者: qq1090548579    时间: 2013-8-12 18:02
heiwang1997 发表于 2013-8-12 18:01
以前遇到这种问题是因为存档时新保存进去一些东西,比如说原来只有$a,又存了$b,就会EOF
既然已经解决,我 ...

我都说了,找到原因了,是我朋友电脑的错误= =#我说了N变了,你不会看我们之前说的话?




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