Project1

标题: 文章提取器 [打印本页]

作者: zh99998    时间: 2008-9-7 19:03
标题: 文章提取器
自动提取VX游戏的对话
支持地图事件、全局事件、战斗事件
使用方法:插进脚本,然后运行游戏


【矿山小镇】的提取结果

  1. TAB = " " * 2
  2. HEAD = true


  3. def read_event(list, head, tab)
  4.   texts = []
  5.   list.each do |command|
  6.     texts.push command.parameters if command.code == 401
  7.   end
  8.   return if texts.empty?
  9.   result = head
  10.   texts.each do |text|
  11.     result += "#{tab}#{text[0]}\r\n"
  12.   end
  13.   result+= "\r\n"
  14.   return result
  15. end
  16. file = File.open("messages.txt", "wb")
  17. load_data("Data/MapInfos.rvdata").each_pair do |map_id, map|
  18.   file.write("<地图[#{map_id}]#{map.name}>\r\n") if HEAD
  19.   load_data(sprintf("Data/Map%03d.rvdata", map_id)).events.each_pair {|event_id, event| event.pages.each_index {|page_id| file.write(read_event(event.pages[page_id].list, HEAD ? "#{TAB}<事件[#{event_id}]#{event.name} 页[#{page_id+1}]>\r\n" : "", HEAD ? TAB * 2 : nil))}}
  20. end
  21. load_data("Data/CommonEvents.rvdata").each {|command| file.write(read_event(command.list, HEAD ? "<公共事件[#{command.id}]>\r\n" : "", HEAD ? TAB : nil)) if command}
  22. load_data("Data/Troops.rvdata").each {|battle| battle.pages.each_index {|page_id| file.write(read_event(battle.pages[page_id].list, HEAD ? "<战斗[#{battle.id}]#{battle.name} 页[#{page_id+1}]>\r\n" : "", HEAD ? TAB : nil))} if battle}
  23. file.close

  24. `notepad.exe messages.txt`
  25. exit
复制代码
[LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~

              [本贴由 八云紫 于 2008-10-30 15:04:25 进行了编辑]
作者: 龙轩    时间: 2008-9-7 19:49
提示: 作者被禁止或删除 内容自动屏蔽
作者: 柳之一    时间: 2008-9-7 20:29
对话导出啊。
之前在xp看见过一个。
要是还能导入就好了{/pz}
作者: drgdrg    时间: 2008-9-7 20:40
这个。。。。。

怎么感觉像是养成游戏中,回顾刚才的对话用的{/gg}{/gg}{/gg}
作者: 越前リョーマ    时间: 2008-9-7 20:48
可惜没用处……
作者: kissye    时间: 2008-9-7 20:57
提示: 作者被禁止或删除 内容自动屏蔽
作者: 越前リョーマ    时间: 2008-9-7 21:06
以下引用kissye于2008-9-7 12:57:21的发言:

导入不是导出的逆操作吗@ @
你都会导出了,导入就是反过来而已-0-
对了,导入最后还要存档

导入应该难一点吧…… = =
作者: zh99998    时间: 2008-9-7 21:18
以下引用越前リョーマ于2008-9-7 13:06:53的发言:


以下引用kissye于2008-9-7 12:57:21的发言:

导入不是导出的逆操作吗@ @
你都会导出了,导入就是反过来而已-0-
对了,导入最后还要存档


导入应该难一点吧…… = =

难很多………………
作者: 柳之一    时间: 2008-9-7 21:42
以下引用zh99998于2008-9-7 13:18:19的发言:


以下引用越前リョーマ于2008-9-7 13:06:53的发言:


以下引用kissye于2008-9-7 12:57:21的发言:

导入不是导出的逆操作吗@ @
你都会导出了,导入就是反过来而已-0-
对了,导入最后还要存档


导入应该难一点吧…… = =


难很多………………



如果仅仅是默认的 替换原来的还好说。
万一添加的字数和行数不一样的话就。。。
作者: kissye    时间: 2008-9-7 21:48
提示: 作者被禁止或删除 内容自动屏蔽
作者: cheyenne    时间: 2008-9-7 22:25
看见了很熟悉的对话,所以使劲殴打楼主,然后抱走脚本
然后……楼主你有提取战斗事件里面的对话么?
作者: zh99998    时间: 2008-9-8 04:15

作者: zh99998    时间: 2008-9-10 20:45
= =|||
一不小心把标签弄成【已经解决】了……
作者: 做游戏的新手    时间: 2008-9-11 02:24
你能不能参考XP的格式?
====================
事件ID: 3 事件名称:EV003 X:16 Y:8
====================
------------------------------
★事件第1页★:
出现条件:

角色图片: '046-Grappler01'
移动类型: 自定义 移动速度: 5 移动频率: 6
移动时动画: true 停止时动画: false 固定朝向: false
允许穿透: false 在最前面显示: false
触发条件: 决定键
------------------------------
◆条件分歧 :变量[1] >= 10
 ◆文章 :做游戏的新手:
          :你能帮我一个忙么?
 ◆显示选择项 :我很乐意 , 我还有事 ,
  :[我很乐意] 的场合
  ◆文章 :做游戏的新手:
           :我现在忙得团团转,你帮我去(任意人员)拿
           :一下(任意物品)。
  (◆注释 :aaa~)
  ◆开关操作 : [1] = ON
  
  :[我还有事] 的场合
  ◆文章 :做游戏的新手:
           :是么?那就算了
  
  :分歧结束
 
:除此以外的场合
 ◆文章 :做游戏的新手:
          :啊。。。这个脚本怎么做啊!
 
:分歧结束

------------------------------
★事件第2页★:
出现条件:
开关[1]为ON时 
角色图片: '046-Grappler01'
移动类型: 自定义 移动速度: 5 移动频率: 6
移动时动画: true 停止时动画: false 固定朝向: false
允许穿透: false 在最前面显示: false
触发条件: 决定键
------------------------------
◆条件分歧 :持有物品 [任意物品]
 ◆文章 :做游戏的新手:
          :啊,就是这个,谢谢!给你一些(奖励物品)和(奖
          :励金钱)。
 (◆注释 :aaaa~) 
:除此以外的场合
 ◆文章 :做游戏的新手:
          :快点去拿,我很急用!
 
:分歧结束


作者: cheyenne    时间: 2008-9-11 04:40
楼上看清楚,这是文章提取器,提取整个游戏里的显示文章内容。你那个是输出某个事件内容为文本好不好。越来越觉得你很那啥了。
作者: 八云紫    时间: 2008-10-30 23:11
发布完毕

发布地址:
   http://rpg.blue/web/htm/news1179.htm

VIP + 1   {/hx}




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1