查看: 3959|回复: 4

[已经解决] 寻求读取/储存存档脚本

[复制链接]
梦石
0
星屑
136
在线时间
1050 小时
注册时间
2006-5-3
回帖
602
发表于 2013-2-17 00:42:34 | 显示全部楼层 |阅读模式

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

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

×
本帖最后由 gaofei677 于 2013-2-17 13:25 编辑

想要寻求2段脚本,储存和读取存档脚本,例如把储存脚本放事件里,执行这个事件,则储存当前游戏状态到指定存档位置,比如存档1,同样读取脚本。不要事件里那个自带的储存项,因为我想用自定义的存档/读档系统,所以不能用系统自带的存档界面。谢谢各位大哥大姐了
漏夏同人
《咱的夏天》
下载地址:http://tieba.baidu.com/p/2681607456
人员招募:http://rpg.blue/thread-339747-1-1.html
梦石
0
星屑
1653
在线时间
207 小时
注册时间
2013-2-3
回帖
583
发表于 2013-2-17 12:19:24 | 显示全部楼层
本帖最后由 protosssonny 于 2013-2-24 14:23 编辑

我这有一个按f5的脚本,其实存档只要按esc可乎出菜单存档

脚本


[pre lang="ruby" line="1"]#==============================================================================

# 本脚本来自www.66RPG.com,使用和转载请保留此信息

#==============================================================================



# ————————————————————————————————————



#———版权:carol3————



#———使用方法与效果————

#——默认状态下,将本脚本插入到main之前,在游戏进行中普通地图界面:

#——按下F5将自动存档到4号进度,打开开关1号将存档到4号进度

#——可修改内容:存档编号,开关编号,声效,以及可以自动存档的时候调用公共事件

#———自定义内容

#———1、你希望使用的自动存档开关编号,填写在下面,否则使用1号开关。

#———2、你希望的自动存档编号,填写在下面,否则使用F5存档在4号

#———3、按下F5后的音效,这个音效一定要存在,否则必然出错

#———4、公共事件(可以没有)

#—— 包括:打开开关的时候调用的公共事件,按下F5之后可以存档与禁止存档的公共事件

#——(你可以在公共事件弹出一个对话框提示你已经自动存档了,播放一段音乐音效,补血或者什么别的),默认=0是不调用任何公共事件

#——(注意这个编号如果不正确(比如该编号没有设置内容),程序将自动忽略这项功能)

#########################################################################

$carol3_打开自动存档用的开关编号 = 3

$carol3_自动存档位置 = 4

$carol3_按下F5之后的自动存档的音效 = "Audio/SE/Decision1"

$carol3_按下F5之后禁止存档时候的音效 = "Audio/Se/Buzzer1"



$carol3_打开自动存档开关之后调用的公共事件 = 0 #——默认未定义

$carol3_按下F5之后可以存档调用的公共事件 = 0 #——默认未定义

$carol3_按下F5之后禁止存档调用的公共事件 = 0 #——默认未定义

#########################################################################

#从此处往下的部分如果进行了修改出现问题后果自负。

#########################################################################

class Scene_Map

  alias carol3_update update

  def update

    carol3_update

    #——按下F5的时候自动存档,可以修改为F5,F6,F7,F8,也可以修改成默认按键但是不推荐。

    #——注意在不可存档的时候是无效的

    if Input.trigger?(Input::F5)

      unless $game_map.interpreter.running?

        if $game_system.save_disabled

          Audio.se_play($carol3_按下F5之后禁止存档时候的音效)

          $game_temp.common_event_id = $carol3_按下F5之后禁止存档调用的公共事件

        else

          Audio.se_play($carol3_按下F5之后的自动存档的音效)

          $game_temp.common_event_id = $carol3_按下F5之后可以存档调用的公共事件

          carol3_save

        end

      end

    end

    #——当BOSS战之前打开一下定义的开关,即可自动存档

    if $game_switches[$carol3_打开自动存档用的开关编号] == true

      $game_switches[$carol3_打开自动存档用的开关编号] = false

      $game_temp.common_event_id = $carol3_打开自动存档开关之后调用的公共事件

      carol3_save

    end

  end

  def carol3_save

    #——这里定义了储存的文件,如果不希望用Save4可以自己修改编号

    #——默认情况可以修改为Save1到Save4,如果你增添了存档编号也可以自定义

    carol3_file = File.open("Save#{$carol3_自动存档位置}.rvdata", "wb")

    carol3_save_data(carol3_file)

    carol3_file.close

  end

  def carol3_save_data(file)

    #——以下定义内容和Scene_Save的write_save_data(file)完全一样

    #——如果你修改过该存档方法,不要忘记用你修改的覆盖这部分内容。

    characters = []

    for actor in $game_party.members

      characters.push([actor.character_name, actor.character_index])

    end

    $game_system.save_count += 1

    $game_system.version_id = $data_system.version_id

    @last_bgm = RPG::BGM::last

    @last_bgs = RPG::BGS::last

    Marshal.dump(characters,           file)

    Marshal.dump(Graphics.frame_count, file)

    Marshal.dump(@last_bgm,            file)

    Marshal.dump(@last_bgs,            file)

    Marshal.dump($game_system,         file)

    Marshal.dump($game_message,        file)

    Marshal.dump($game_switches,       file)

    Marshal.dump($game_variables,      file)

    Marshal.dump($game_self_switches,  file)

    Marshal.dump($game_actors,         file)

    Marshal.dump($game_party,          file)

    Marshal.dump($game_troop,          file)

    Marshal.dump($game_map,            file)

    Marshal.dump($game_player,         file)

  end

end



#==============================================================================

# 本脚本来自www.66RPG.com,使用和转载请保留此信息

#==============================================================================
[/pre]

点评

代码必须用代码框框起来  发表于 2013-2-24 14:24

评分

参与人数 1星屑 +70 收起 理由
怪蜀黍 + 70 认可答案+75,编辑税-5

查看全部评分

回复

使用道具 举报

梦石
0
星屑
136
在线时间
1050 小时
注册时间
2006-5-3
回帖
602
 楼主| 发表于 2013-2-17 13:26:08 | 显示全部楼层
谢谢LS呀,不过这个用起来似乎还不太方便哦,我还是想找我说的那种脚本
漏夏同人
《咱的夏天》
下载地址:http://tieba.baidu.com/p/2681607456
人员招募:http://rpg.blue/thread-339747-1-1.html
回复

使用道具 举报

梦石
0
星屑
1653
在线时间
207 小时
注册时间
2013-2-3
回帖
583
发表于 2013-2-24 15:45:20 | 显示全部楼层
ali 发表于 2013-2-17 12:19
我这有一个按f5的脚本,其实存档只要按esc可乎出菜单存档

脚本

@protosssonny  对不起,我不会弄代码框...抱歉

点评

符号<>就是了。  发表于 2013-2-24 15:50
回复

使用道具 举报

八宝粥的基叔

梦石
0
星屑
4957
在线时间
5234 小时
注册时间
2009-4-29
回帖
14054

贵宾

发表于 2013-2-24 15:50:10 | 显示全部楼层
符号<>就是了。
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部