Project1

标题: 谁帮我给简体转繁体脚本加个开关 [打印本页]

作者: zzj0109    时间: 2012-6-22 10:58
标题: 谁帮我给简体转繁体脚本加个开关
本帖最后由 zzj0109 于 2012-6-22 10:59 编辑

脚本如下,谢谢各位高人了



#------------------------------------------------------------------------------
# 本脚本来自www.66RPG.com,功能是将整个游戏中draw_text的简体字全部变为繁体字
# 作者:66RPG技术区版大:灼眼的夏娜
#------------------------------------------------------------------------------

module Conv
  def self.c(str)
  
   m2w = Win32API.new("kernel32","MultiByteToWideChar",'ilpipi','i')
   w2m = Win32API.new("kernel32","WideCharToMultiByte",'ilpipipp','i')
   lcms = Win32API.new("kernel32","LCMapString",'llpipi','i')

   len = m2w.call(65001,0,str,-1,nil,0)
   buf = "\0"*(len*2)

   m2w.call(65001,0,str,-1,buf,len)

   len = w2m.call(0,0,buf,-1,nil,0,nil,nil)
   ret = "\0"*len

   w2m.call(0,0,buf,-1,ret,len,nil,nil)

   len = m2w.call(936,0,ret,-1,nil,0)
   buf01 = "\0"*(len*2+1)
   lcms.call(0x0804,0x04000000,ret,-1,buf01,len*2)
  
   len = m2w.call(0,0,buf01,-1,nil,0)
   buf = "\0" * (len*2)
   m2w.call(0,0,buf01,-1,buf,len)

   len = w2m.call(65001,0,buf,-1,nil,0,nil,nil)
   ret = "\0" * (len-1)
   w2m.call(65001,0,buf,-1,ret,len-1,nil,nil)
  
   return ret
end

end

class Bitmap
  unless $I_LOVE_RMXP_6RWORDCONV
    alias dx draw_text
    def draw_text(p1, p2, p3 = 0, p4 = 3, p5 = nil, p6 = 0)
      case p1
      when Rect
        str = Conv.c(p2)
        dx(p1, str, p3)
      else
        str = Conv.c(p5)
        dx(p1, p2, p3, p4, str, p6)
      end
    end
    $I_LOVE_RMXP_6RWORDCONV = true
  end
end





还有,麻烦讲解一下,如何加开关dsu_plus_rewardpost_czw
作者: chd114    时间: 2012-6-22 15:37
不可能加开关完全控制,因为加开关后,不显示繁体字的情况下你看不到对话框的内容
作者: zzj0109    时间: 2012-6-24 13:24
谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢谢




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