可以尝试在工程的脚本编辑器最上面插入一页以下脚本,然后运行游戏:path = './Data' begin mapinfos = {} entries = Dir.entries(path) entries.each do |entry| name = path + '/' + entry next unless File.file?(name) && entry =~ /^Map(\d+)\.rvdata2$/ next unless (map = load_data(name) rescue nil).is_a?(RPG::Map) id = $1.to_i info = RPG::MapInfo.new info.name = 'MAP%03d' % id + (map.display_name.empty? ? '' : ' - ' + map.display_name) info.order = id mapinfos[id] = info end save_data(mapinfos, path + '/MapInfos.rvdata2') msgbox mapinfos.size.to_s + ' map infos created.' rescue Exception => e msgbox e end
path = './Data'
begin
mapinfos = {}
entries = Dir.entries(path)
entries.each do |entry|
name = path + '/' + entry
next unless File.file?(name) && entry =~ /^Map(\d+)\.rvdata2$/
next unless (map = load_data(name) rescue nil).is_a?(RPG::Map)
id = $1.to_i
info = RPG::MapInfo.new
info.name = 'MAP%03d' % id + (map.display_name.empty? ? '' : ' - ' + map.display_name)
info.order = id
mapinfos[id] = info
end
save_data(mapinfos, path + '/MapInfos.rvdata2')
msgbox mapinfos.size.to_s + ' map infos created.'
rescue Exception => e
msgbox e
end
如果成功了的话会重新生成“MapInfos.rvdata2”文件,这时候重新打开工程应该就能看到其他地图了。
如果失败了的话很可能是地图文件也有损坏的,可以尝试从Data文件夹剪切走一部分地图文件再重复这个流程来筛选。 |