喵星人
- UID
- 93
- 功勋
- 0 功勋
- 现金
- 11389 Ziny
- 猫币
- 389 Cat
|
{:5_256:}之前发那个文档是某个很久以前的前辈人工抄写的(估计是这样……)
前几天我在做编程练习的时候突然想起这回事,写了个小脚本把前作的文本全部提取了出来
链接:http://pan.baidu.com/s/1i3vfGX3 密码:17y4
这是用程序直接提取的版本,顺序上来说是按照文本在数据库中排列的顺序给出的
跟剧情顺序虽然有一定联系(比如后面的剧情总是在后面的地图里),但并不是完全按照的剧情顺序。
想要查找东西的话可以善用记事本的查找功能
另外,附上当时用于提取的代码:
def goToMyWay
提取地图文本
提取公共事件文本
提取战斗事件文本
end
def 提取公共事件文本
arr = []
$data_common_events.each do |event|
list_flag = false
if event == nil
next
end
event.list.each do |lists|
if lists.code == 101 or lists.code == 401 #文章
arr.push(" " + lists.parameters[0] + "\n")
list_flag = true
end
if lists.code == 102 #选择项
arr.push(" 请选择:\n")
for text in lists.parameters[0]
arr.push(" " + text + "\n")
end
list_flag = true
end
end
if list_flag
arr.unshift("公共事件" + event.id.to_s + ":\n")
end
p "已经导出一百个公共事件" if event.id % 100 == 0
files = File.open("OZ大乱斗——梦想与传说的延续全文本.txt","a+")
files.print(arr)
arr = []
files.close
end
end
def 提取战斗事件文本
arr = []
$data_troops.each do |troop|
list_flag = false
if troop == nil
next
end
troop.pages.each do |page|
page.list.each do |lists|
if lists.code == 101 or lists.code == 401 #文章
arr.push(" " + lists.parameters[0] + "\n")
list_flag = true
end
if lists.code == 102 #选择项
arr.push(" 请选择:\n")
for text in lists.parameters[0]
arr.push(" " + text + "\n")
end
list_flag = true
end
end
end
if list_flag
arr.unshift("敌群" + troop.id.to_s + ":\n")
end
p "已经导出一百个战斗事件" if troop.id % 100 == 0
files = File.open("OZ大乱斗——梦想与传说的延续全文本.txt","a+")
files.print(arr)
arr = []
files.close
end
end
def 提取地图文本
arr = []
arr_1 = []
arr_2 = []
arr_3 = []
call_all_map do |map , map_id , data_id|
if map == nil
next
end
event_flag = false
map.events.each do |event_id , event|
if event == nil
next
end
page_flag = false
event.pages.each_with_index do |page , i|
i += 1
list_flag = false
page.list.each do |lists|
if lists.code == 101 or lists.code == 401 #文章
arr.push(" " + lists.parameters[0] + "\n")
list_flag = true
end
if lists.code == 102 #选择项
arr.push(" 请选择:\n")
for text in lists.parameters[0]
arr.push(" " + text + "\n")
end
list_flag = true
end
end
if list_flag
arr.unshift(" 事件页" + i.to_s + ":\n")
arr_1.push(arr)
arr = []
page_flag = true
end
end
if page_flag
arr_1.unshift(" 事件" + event_id.to_s + ":\n")
arr_2.push(arr_1)
arr_1 = []
event_flag = true
end
end
if event_flag
arr_2.unshift("data" + data_id.to_s + "地图编号" + map_id.to_s + ":\n")
arr_3.push(arr_2)
arr_2 = []
end
files = File.open("OZ大乱斗——梦想与传说的延续全文本.txt","a+")
files.print(arr_3)
arr_3 = []
files.close
end
end
def call_all_map
for map_id in 1..999
data_id = 0
begin
map = load_data(sprintf("Data/Map%03d.rxdata", map_id))
rescue
next
end
yield map , map_id , data_id
p "已导出一百张地图" if map_id % 100 == 0
end
for map_id in 1..999
data_id = 1
begin
map = load_data(sprintf("data1/Map%03d.rxdata", map_id))
rescue
next
end
yield map , map_id , data_id
p "已导出一百张地图" if map_id % 100 == 0
end
for map_id in 1..47
data_id = 2
begin
map = load_data(sprintf("data2/Map%03d.rxdata", map_id))
rescue
next
end
yield map , map_id , data_id
p "已导出一百张地图" if map_id % 100 == 0
end
end
|
|