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

Project1

 找回密码
 注册会员
搜索
查看: 1144|回复: 0
打印 上一主题 下一主题

[已经过期] 自动存档脚本的BUG请个高手进来帮忙看看。

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2011-7-2
帖子
12
跳转到指定楼层
1
发表于 2011-7-4 16:36:24 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

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

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

x
本帖最后由 gzliujie 于 2011-7-4 16:59 编辑

我下了个自动存档脚本,能存档,直接关掉游戏,默认存档最后时间。
关掉游戏后,重新进,选择继续,结果不想继续想重新开始,BUG出来了,脚本错误,然后存档丢失,不能再使用存档了,怎么弄都不行,我想写个直接跳过选择存档的那里,选继续直接进游戏,但是这样的话就只能玩一个号了,自动存档默认存档第一个(暂时我发现是这样的,刚用不久。)
希望高手帮个忙看看脚本是否存在问题,帮忙改下,感激不尽~~~。如果能给我个装备属性随机脚本就更好了~~~

==============================================================
以下是脚本
==============================================================
  1. module Kernel

  2. alias origin_exit exit unless method_defined? :exit

  3. def exit(*args)
  4.    case $scene
  5.    when Scene_Map
  6.      AutoSave.common_save unless $game_system.map_interpreter.running?
  7.    when Scene_Battle
  8.      AutoSave.common_save unless $game_system.battle_interpreter.running?
  9.    else
  10.      if $scene.type != NilClass and $scene.type != Scene_Title
  11.        AutoSave.common_save
  12.      end
  13.    end
  14.    origin_exit(*args)
  15. end

  16. end


  17. module AutoSave

  18. if @scene_proc.nil?
  19.    @last_scene = nil.class
  20.    @scene_proc = proc do |value|
  21.      if value.nil? or value.is_a?(Scene_Title)
  22.        if @last_scene != NilClass and @last_scene != Scene_Title
  23.          AutoSave.common_save
  24.        end
  25.      end
  26.      @last_scene = value.type
  27.    end
  28.    trace_var(:$scene,@scene_proc)
  29. end

  30. module_function

  31. def common_save
  32.    filename = "Save#{$game_temp.last_file_index + 1}.rxdata"
  33.    file = File.open(filename, "wb")
  34.    write_save_data(file)
  35.    file.close
  36. end

  37. def write_save_data(file)
  38.    characters = []
  39.    for i in 0...$game_party.actors.size
  40.      actor = $game_party.actors[i]
  41.      characters.push([actor.character_name, actor.character_hue])
  42.    end
  43.    Marshal.dump(characters, file)
  44.    Marshal.dump(Graphics.frame_count, file)
  45.    $game_system.save_count += 1
  46.    $game_system.magic_number = $data_system.magic_number
  47.    Marshal.dump($game_system, file)
  48.    Marshal.dump($game_switches, file)
  49.    Marshal.dump($game_variables, file)
  50.    Marshal.dump($game_self_switches, file)
  51.    Marshal.dump($game_screen, file)
  52.    Marshal.dump($game_actors, file)
  53.    Marshal.dump($game_party, file)
  54.    Marshal.dump($game_troop, file)
  55.    Marshal.dump($game_map, file)
  56.    Marshal.dump($game_player, file)
  57. end

  58. end
复制代码
gzliujie于2011-7-4 16:39补充以下内容:
   for i in 0...$game_party.actors.size

这个是错误行,另刚发现个BUG,就是使用自动存档后,不能再手动存档,不然

      @characters = Marshal.load(file)

这里又会出错~~~


gzliujie于2011-7-4 16:43补充以下内容:
忘说明,第二个出错是在Windows_SaveFile脚本里面第28行,上面一个出错是自动存档脚本错误。


gzliujie于2011-7-4 16:58补充以下内容:
怎么修改?我很少发帖子,不会改~~~实在不行你直接删掉吧,没人帮我就算了。

点评

这种标题是会被删贴的,请迅速修改  发表于 2011-7-4 16:51
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

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

GMT+8, 2024-11-26 10:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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