Project1

标题: 我用了自动存档脚本却发现没有正确存上 [打印本页]

作者: doubeizhuce    时间: 2014-8-23 23:25
标题: 我用了自动存档脚本却发现没有正确存上

RUBY 代码复制
  1. #==============================================================================
  2. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  3. #==============================================================================
  4. # ————————————————————————————————————
  5. #———版权:carol3————
  6. #———使用方法与效果————
  7. #——默认状态下,将本脚本插入到main之前,在游戏进行中普通地图界面:
  8. #——按下F5将自动存档到4号进度,打开开关1号将存档到4号进度
  9. #——可修改内容:存档编号,开关编号,声效,以及可以自动存档的时候调用公共事件
  10. #———自定义内容
  11. #———1、你希望使用的自动存档开关编号,填写在下面,否则使用1号开关。
  12. #———2、你希望的自动存档编号,填写在下面,否则使用F5存档在4号
  13. #———3、按下F5后的音效,这个音效一定要存在,否则必然出错
  14. #———4、公共事件(可以没有)
  15. #—— 包括:打开开关的时候调用的公共事件,按下F5之后可以存档与禁止存档的公共事件
  16. #——(你可以在公共事件弹出一个对话框提示你已经自动存档了,播放一段音乐音效,补血或者什么别的),默认=0是不调用任何公共事件
  17. #——(注意这个编号如果不正确(比如该编号没有设置内容),程序将自动忽略这项功能)
  18. #########################################################################
  19. $carol3_打开自动存档用的开关编号 = 1
  20. $carol3_自动存档位置 = 4
  21. $carol3_按下F5之后的自动存档的音效 = "Audio/SE/007-System07"
  22. $carol3_按下F5之后禁止存档时候的音效 = "Audio/Se/003-System03"
  23. $carol3_打开自动存档开关之后调用的公共事件 = 0 #——默认未定义
  24. $carol3_按下F5之后可以存档调用的公共事件 = 0 #——默认未定义
  25. $carol3_按下F5之后禁止存档调用的公共事件 = 0 #——默认未定义
  26. #########################################################################
  27. #从此处往下的部分如果进行了修改出现问题后果自负。
  28. #########################################################################
  29. class Scene_Map
  30.   alias carol3_update update  
  31.   def update
  32.     carol3_update  
  33.     #——按下F5的时候自动存档,可以修改为F5,F6,F7,F8,也可以修改成默认按键但是不推荐。
  34.     #——注意在不可存档的时候是无效的
  35.     if Input.trigger?(Input::F5)
  36.       unless $game_system.map_interpreter.running?  
  37.         if $game_system.save_disabled
  38.           Audio.se_play($carol3_按下F5之后禁止存档时候的音效)
  39.           $game_temp.common_event_id = $carol3_按下F5之后禁止存档调用的公共事件
  40.         else
  41.           Audio.se_play($carol3_按下F5之后的自动存档的音效)
  42.           $game_temp.common_event_id = $carol3_按下F5之后可以存档调用的公共事件
  43.           carol3_save
  44.         end
  45.       end
  46.     end
  47.     #——当BOSS战之前打开一下定义的开关,即可自动存档
  48.     if $game_switches[$carol3_打开自动存档用的开关编号] == true
  49.       $game_switches[$carol3_打开自动存档用的开关编号] = false
  50.       $game_temp.common_event_id = $carol3_打开自动存档开关之后调用的公共事件
  51.       carol3_save
  52.     end
  53.   end
  54.   def carol3_save
  55.     #——这里定义了储存的文件,如果不希望用Save4可以自己修改编号
  56.     #——默认情况可以修改为Save1到Save4,如果你增添了存档编号也可以自定义
  57.     carol3_file = File.open("Save#{$carol3_自动存档位置}.rxdata", "wb")
  58.     carol3_save_data(carol3_file)
  59.     carol3_file.close
  60.   end
  61.   def carol3_save_data(file)
  62.     #——以下定义内容和Scene_Save的write_save_data(file)完全一样
  63.     #——如果你修改过该存档方法,不要忘记用你修改的覆盖这部分内容。
  64.     characters = []
  65.     for i in 0...$game_party.actors.size
  66.       actor = $game_party.actors[i]
  67.       characters.push([actor.character_name, actor.character_hue])
  68.     end
  69.     Marshal.dump(characters, file)
  70.     Marshal.dump(Graphics.frame_count, file)
  71.     $game_system.save_count += 1
  72.     $game_system.magic_number = $data_system.magic_number
  73.     Marshal.dump($game_system, file)
  74.     Marshal.dump($game_switches, file)
  75.     Marshal.dump($game_variables, file)
  76.     Marshal.dump($game_self_switches, file)
  77.     Marshal.dump($game_screen, file)
  78.     Marshal.dump($game_actors, file)
  79.     Marshal.dump($game_party, file)
  80.     Marshal.dump($game_troop, file)
  81.     Marshal.dump($game_map, file)
  82.     Marshal.dump($game_player, file)
  83.   end
  84. end
  85. #==============================================================================
  86. # 本脚本来自[url]www.66RPG.com[/url],使用和转载请保留此信息
  87. #==============================================================================

RT
作者: doubeizhuce    时间: 2014-8-24 14:17
我直接把它复制在main前的啊
作者: 白鬼    时间: 2014-8-24 16:06
本帖最后由 白鬼 于 2014-8-24 16:09 编辑

我知道了
4号位置的问题

系统默认的编号是:0 1 2 3
这样来算的
所以你看到的第四个存档,实际上应该是3
也就是说,存档位置应该改成3
你试试

作者: doubeizhuce    时间: 2014-8-25 09:10
白鬼 发表于 2014-8-24 16:06
我知道了
4号位置的问题

额,试过了,依旧不行,没有一个档位成功存上
作者: doubeizhuce    时间: 2014-8-27 10:25
白鬼 发表于 2014-8-24 16:06
我知道了
4号位置的问题

这是脚本文件

Scripts.rxdata

153.99 KB, 下载次数: 30


作者: RyanBern    时间: 2014-8-27 10:48
问题出现的原因,是“存档数增加”读取存档的位置和“自动存档”储存的位置不一致。
解决方法:将“自动存档”脚本的57行
  1. carol3_file = File.open("Save#{$carol3_自动存档位置}.rxdata", "wb")
复制代码
替换为
  1. carol3_file = File.open("Save/Save#{$carol3_自动存档位置}.rxdata", "wb")
复制代码
并在游戏根目录下新建一个名为Save的空文件夹即可。
作者: doubeizhuce    时间: 2014-8-28 09:31
RyanBern 发表于 2014-8-27 10:48
问题出现的原因,是“存档数增加”读取存档的位置和“自动存档”储存的位置不一致。
解决方法:将“自动存 ...

解决了 谢谢




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