仙剑之十里坡

标题: 容错脚本 第3版 [打印本页]

作者: 月下独孤    时间: 2011-6-11 19:24
标题: 容错脚本 第3版

  1. #==============================================================================
  2. # ■ 容错脚本第3版(070816修订)                                   BY 轮回者
  3. #------------------------------------------------------------------------------
  4. #  本脚本基于星大叔的容错脚本第2版,区别只是“下手”的地方不同而已。
  5. #  说明请参看星大叔的容错脚本第2版。
  6. #------------------------------------------------------------------------------
  7. #  07.08.16
  8. #     修正了按下F12重启后的错误
  9. #     附,出错原因:重启后RMXP封装的类没有重置
  10. #==============================================================================
  11. begin
  12.   result = Graphics::Transition.nil?
  13. rescue
  14.   result = true
  15. end
  16. if result
  17.   
  18.   $need_file_bitmap = []
  19.   if FileTest.exist?("log_bitmap.txt")
  20.     f = File.open("./log_bitmap.txt","r")
  21.     $need_file_bitmap = f.read.split(/\n/)
  22.     f.close
  23.   end
  24.   module Graphics
  25.     Transition = method("transition")
  26.     def self.transition(*arg)
  27.       begin
  28.         Transition.call(*arg)
  29.       rescue Errno::ENOENT
  30.         ary=[*arg]
  31.         filename=ary[1]
  32.         unless $need_file_bitmap.include?(filename)
  33.           $need_file_bitmap.push(filename)
  34.           f = File.open("./log_bitmap.txt","a")
  35.           f.write(filename + "\n")
  36.           f.close
  37.         end
  38.         Transition.call(ary[0])
  39.       end
  40.     end
  41.   end
  42.   class Bitmap < Object
  43.     alias ini_Fx initialize
  44.      
  45.     def initialize(*args)
  46.       begin
  47.         ini_Fx(*args)
  48.         return
  49.       rescue Errno::ENOENT
  50.         filename=[*args][0]
  51.         unless $need_file_bitmap.include?(filename)
  52.           $need_file_bitmap.push(filename)
  53.           f = File.open("./log_bitmap.txt","a")
  54.           f.write(filename + "\n")
  55.           f.close
  56.         end
  57.         ini_Fx(32,32)
  58.       end
  59.     end
  60.   end
  61.   $need_file_audio = []
  62.   if FileTest.exist?("log_audio.txt")
  63.     f = File.open("./log_audio.txt","r")
  64.     $need_file_audio = f.read.split(/\n/)
  65.     f.close
  66.   end
  67.   
  68.   module Audio
  69.     Me_play = method("me_play")
  70.     def self.me_play(*arg)
  71.       begin
  72.         Me_play.call(*arg)
  73.       rescue Errno::ENOENT
  74.         filename=[*arg][0]
  75.         unless $need_file_audio.include?(filename)
  76.           $need_file_audio.push(filename)
  77.           f = File.open("./log_audio.txt","a")
  78.           f.write(filename + "\n")
  79.           f.close
  80.         end
  81.         me_stop
  82.       end
  83.     end
  84.     Bgm_play = method("bgm_play")
  85.     def self.bgm_play(*arg)
  86.       begin
  87.         Bgm_play.call(*arg)
  88.       rescue Errno::ENOENT
  89.         filename=[*arg][0]
  90.         unless $need_file_audio.include?(filename)
  91.           $need_file_audio.push(filename)
  92.           f = File.open("./log_audio.txt","a")
  93.           f.write(filename + "\n")
  94.           f.close
  95.         end
  96.         bgm_stop
  97.       end
  98.     end
  99.     Se_play = method("se_play")
  100.     def self.se_play(*arg)
  101.       begin
  102.         Se_play.call(*arg)
  103.       rescue Errno::ENOENT
  104.         filename=[*arg][0]
  105.         unless $need_file_audio.include?(filename)
  106.           $need_file_audio.push(filename)
  107.           f = File.open("./log_audio.txt","a")
  108.           f.write(filename + "\n")
  109.           f.close
  110.         end
  111.         se_stop
  112.       end
  113.     end
  114.     Bgs_play = method("bgs_play")
  115.     def self.bgs_play(*arg)
  116.       begin
  117.         Bgs_play.call(*arg)
  118.       rescue Errno::ENOENT
  119.         filename=[*arg][0]
  120.         unless $need_file_audio.include?(filename)
  121.           $need_file_audio.push(filename)
  122.           f = File.open("./log_audio.txt","a")
  123.           f.write(filename + "\n")
  124.           f.close
  125.         end
  126.         bgs_stop
  127.       end
  128.     end
  129.   end
  130. end

复制代码

作者: 冷剑随风    时间: 2011-6-11 23:00
本帖最后由 冷剑随风 于 2011-6-11 23:02 编辑

此附容错脚本的范例工程,如果不懂这个脚本意思的可以下载。
下载请点我
作者: 御剑天河    时间: 2011-6-12 15:14
我不懂...下载
作者: BlackFeather    时间: 2011-6-13 16:59
我到现在还不知道是容的啥错
作者: 恨思归    时间: 2012-1-20 18:14
容得啥错- -
作者: 天莫邪    时间: 2015-1-31 18:42
不懂,下了再说




欢迎光临 仙剑之十里坡 (http://palslp.com/BBS/) Powered by Discuz! X2.5