Project1
标题:
求自动存档、读档的脚本
[打印本页]
作者:
Wind2010
时间:
2010-10-15 18:00
标题:
求自动存档、读档的脚本
本帖最后由 Wind2010 于 2010-10-15 18:01 编辑
就是说在游戏时可以调用一个指令,自动进行存档,不需要选择存档位置
读档也是,直接读取,不提示
作者:
魔之哆啦
时间:
2010-10-15 18:00
本帖最后由 魔之哆啦 于 2010-10-15 18:05 编辑
[qq] 995113876
[/qq]
我可以教你
作者:
魔之哆啦
时间:
2010-10-15 18:01
可以使用DNF的脚本
作者:
nijunxin12321
时间:
2010-10-15 18:23
提示:
作者被禁止或删除 内容自动屏蔽
作者:
雪_“‘
时间:
2010-10-15 18:53
1、LZ发帖前应该先搜索..我记得有这样的东西..(搜索在登录后右上角有显示..LZ只需打上”自动存档“即可)
2、3楼和4楼已经给了答案..LZ可以去查看的..
3、在下就给个连接吧..声明这个是搜索里找来的..
http://rpg.blue/forum.php?mod=vi ... 6%E5%AD%98%E6%A1%A3
作者:
429259591
时间:
2010-10-15 18:55
我记得好像神域里也有自动存档
作者:
Wind2010
时间:
2010-10-15 19:17
呃……我要的不是可以在任何时候都可以存档的脚本
我是要一个可以调用的指令,这个指令可以自动生成一个存档而不用选择存档位置
读档的时候也是直接读取这个存档
作者:
fux2
时间:
2010-10-15 20:05
回复
Wind2010
的帖子
请参考夏娜大人的“即时存档”主题。
作者:
DBZ-1
时间:
2010-10-15 21:04
魔石……记忆深刻啊
作者:
Wind2010
时间:
2010-10-15 21:06
不是在每一帧都可以存档啊……
就是在城市中心做个存档事件,触发事件时生成一个存档
然后读取游戏时就读取这个存档
作者:
雪_“‘
时间:
2010-10-15 21:19
LZ的意思应该是:按存档时直接存档...读档时也是直接读档吧?
就像口袋妖怪那种一样的吧..意思是只能存一个档..而不是原本的按存档后有4个位置选的..
如果LZ的问题是这个意思..那么这个应该可以在脚本里改的吧...把某脚本里的1、2、3、4选项里删了2、3、4...之类的..(我脚本无能啊...貌似有个叫什么SAVE的东西..LZ会看脚本的话可以修改..感觉难度不大的..重要的是看看里面牵涉到什么脚本- -)..希望能帮到你...
作者:
Wind2010
时间:
2010-10-15 23:26
然后现在自己解决掉存档的问题了……
def baocun
file = File.open("game.sav", "wb") #game.sav是存档名称
# 生成描绘存档文件用的角色图形
characters = []
for i in 0...$game_party.actors.size
actor = $game_party.actors[i]
characters.push([actor.character_name, actor.character_hue,
actor.id, actor.battler_name, actor.battler_hue])
end
# 写入描绘存档文件用的角色数据
Marshal.dump(characters, file)
# 写入测量游戏时间用画面计数
Marshal.dump(Graphics.frame_count, file)
# 保存魔法编号
# (将编辑器保存的值以随机值替换)
$game_system.magic_number = $data_system.magic_number
# 写入各种游戏对像
Marshal.dump($data_skills, file)
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)
#Marshal.dump($keymiyue, file) 这个是密钥
file.close
end
复制代码
然后现在就是读取有问题啊……有人能帮忙看看下面那个读取脚本有什么错误么,我用的是事件标题……
def duqu
if $continue_enabled == true
file = File.open("game.sav", "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)
#$keymiyue = 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
# 刷新同伴成员
new_actors = []
for i in [email]
[email protected]
[/email]
if $data_actors[@actors[i].id] != nil
new_actors.push($game_actors[@actors[i].id])
end
end
@actors = new_actors
file.close
# 还原 BGM、BGS
$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
复制代码
作者:
asperta
时间:
2010-10-16 00:35
在duqu函数
$game_system = Marshal.load(file)
复制代码
的前面加上一行
$data_skills = Marshal.load(file)
复制代码
试试
作者:
Wind2010
时间:
2010-10-16 20:08
已经没有人看到这个帖子了么……
难道是因为我把X键调出菜单的脚本删掉了?
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1