可以用事件直接存/读档(理论上支持无限存档)
直接用事件脚本来存/读档使用方法
存档(直接用事件脚本):
Save.save(存档位置)
读档(直接用事件脚本):
Load.load(存档位置)
RUBY 代码
=begin
By 九幽鬼少
使用方法
存档(直接用事件脚本):
Save.save(存档位置)
读档(直接用事件脚本):
Load.load(存档位置)
=end
module Save
defself.save(index = nil)
@filename = "Save#{index}.rxdata"unless index.nil?
file = File.open(@filename, "wb")
characters = []
for i in0...$game_party.actors.size
actor = $game_party.actors
characters.push()
end
Marshal.dump(characters, file)
Marshal.dump(Graphics.frame_count, file)
$game_system.save_count += 1
$game_system.magic_number = $data_system.magic_number
Marshal.dump($game_system, file)
Marshal.dump($game_switches, file)
Marshal.dump($game_variables, file)
Marshal.dump($game_self_switches, file)
Marshal.dump($game_screen, 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)
file.close
end
end
moduleLoad
defself.load(index = nil)
@filename = "Save#{index}.rxdata"unless index.nil?
file = File.open(@filename, "rb")
characters = Marshal.load(file)
Graphics.frame_count = Marshal.load(file)
$game_system = Marshal.load(file)
$game_switches = Marshal.load(file)
$game_variables = Marshal.load(file)
$game_self_switches = Marshal.load(file)
$game_screen = Marshal.load(file)
$game_actors = Marshal.load(file)
$game_party = Marshal.load(file)
$game_troop = Marshal.load(file)
$game_map = Marshal.load(file)
$game_player = Marshal.load(file)
if$game_system.magic_number != $data_system.magic_number
$game_map.setup($game_map.map_id)
$game_player.center($game_player.x, $game_player.y)
end
$game_party.refresh
file.close
$game_system.bgm_play($game_system.playing_bgm)
$game_system.bgs_play($game_system.playing_bgs)
$game_map.update
$scene = Scene_Map.new
end
end
本帖来自P1论坛作者九幽鬼少,因Project1站服务器在国外有时候访问缓慢不方便作者交流学习,经联系P1站长fux2同意署名转载一起分享游戏制作经验,共同为国内独立游戏作者共同创造良好交流环境,原文地址:https://rpg.blue/forum.php?mod=viewthread&tid=366409若有侵权,发帖作者可联系底部站长QQ在线咨询功能删除,谢谢。
页:
[1]