查看: 1426|回复: 2

这段简体化繁体脚本能否帮我修改成设置开关呢?

  [复制链接]
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-12-16
回帖
82
发表于 2008-2-9 04:01:33 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
回帖
1810
发表于 2008-2-9 04:05:50 | 显示全部楼层
#------------------------------------------------------------------------------
# 本脚本来自www.66RPG.com,功能是将整个游戏中draw_text的简体字全部变为繁体字
# 作者:66RPG技术区版大:灼眼的夏娜
#------------------------------------------------------------------------------
BIG_SWITCH  = 1

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
$I_LOVE_RMXP_6RWORDCONV = $game_switches[BIG_SWITCH]
if $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 = false
end
end  

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
不常在线,有事PM
回复

使用道具 举报

冰王子

梦石
0
星屑
50
在线时间
34 小时
注册时间
2008-1-27
回帖
1810
发表于 2008-2-9 04:06:46 | 显示全部楼层
修改最上面的BIG_SWITCH = 后面的数值改变开关号码,默认是1号
不常在线,有事PM
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部