设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 10053|回复: 31
打印 上一主题 下一主题

一个直接把RMXP游戏“简体 -> 繁体”的脚本{无需点数}

 关闭 [复制链接]

Lv1.梦旅人

66RPG站长

梦石
0
星屑
54
在线时间
615 小时
注册时间
2005-10-10
帖子
5734

RMVX自由创作大赛亚军第2届短篇游戏比赛亚军第5届短篇游戏比赛冠军

跳转到指定楼层
1
发表于 2006-11-6 05:44:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
最近很少用VIP区孵化脚本了,这次相当成功

簡體->繁體腳本使用前後效果截圖

  1. #------------------------------------------------------------------------------
  2. # 本脚本来自www.66RPG.com,功能是将整个游戏中draw_text的简体字全部变为繁体字
  3. # 作者:66RPG技术区版大:灼眼的夏娜
  4. #------------------------------------------------------------------------------
  5. module Conv
  6.   def self.c(str)
  7.    
  8.    m2w = Win32API.new("kernel32","MultiByteToWideChar",'ilpipi','i')
  9.    w2m = Win32API.new("kernel32","WideCharToMultiByte",'ilpipipp','i')
  10.    lcms = Win32API.new("kernel32","LCMapString",'llpipi','i')

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

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

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

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

  17.    len = m2w.call(936,0,ret,-1,nil,0)
  18.    buf01 = "\0"*(len*2+1)
  19.    lcms.call(0x0804,0x04000000,ret,-1,buf01,len*2)
  20.    
  21.    len = m2w.call(0,0,buf01,-1,nil,0)
  22.    buf = "\0" * (len*2)
  23.    m2w.call(0,0,buf01,-1,buf,len)

  24.    len = w2m.call(65001,0,buf,-1,nil,0,nil,nil)
  25.    ret = "\0" * (len-1)
  26.    w2m.call(65001,0,buf,-1,ret,len-1,nil,nil)
  27.    
  28.    return ret
  29. end

  30. end

  31. class Bitmap
  32.   unless $I_LOVE_RMXP_6RWORDCONV
  33.     alias dx draw_text
  34.     def draw_text(p1, p2, p3 = 0, p4 = 3, p5 = nil, p6 = 0)
  35.       case p1
  36.       when Rect
  37.         str = Conv.c(p2)
  38.         dx(p1, str, p3)
  39.       else
  40.         str = Conv.c(p5)
  41.         dx(p1, p2, p3, p4, str, p6)
  42.       end
  43.     end
  44.     $I_LOVE_RMXP_6RWORDCONV = true
  45.   end
  46. end
复制代码


              [本贴由 叶舞枫 于 2007-4-22 22:20:45 进行了编辑]

Lv1.梦旅人

66RPG站长

梦石
0
星屑
54
在线时间
615 小时
注册时间
2005-10-10
帖子
5734

RMVX自由创作大赛亚军第2届短篇游戏比赛亚军第5届短篇游戏比赛冠军

2
 楼主| 发表于 2006-11-6 05:44:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
最近很少用VIP区孵化脚本了,这次相当成功

簡體->繁體腳本使用前後效果截圖

  1. #------------------------------------------------------------------------------
  2. # 本脚本来自www.66RPG.com,功能是将整个游戏中draw_text的简体字全部变为繁体字
  3. # 作者:66RPG技术区版大:灼眼的夏娜
  4. #------------------------------------------------------------------------------
  5. module Conv
  6.   def self.c(str)
  7.    
  8.    m2w = Win32API.new("kernel32","MultiByteToWideChar",'ilpipi','i')
  9.    w2m = Win32API.new("kernel32","WideCharToMultiByte",'ilpipipp','i')
  10.    lcms = Win32API.new("kernel32","LCMapString",'llpipi','i')

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

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

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

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

  17.    len = m2w.call(936,0,ret,-1,nil,0)
  18.    buf01 = "\0"*(len*2+1)
  19.    lcms.call(0x0804,0x04000000,ret,-1,buf01,len*2)
  20.    
  21.    len = m2w.call(0,0,buf01,-1,nil,0)
  22.    buf = "\0" * (len*2)
  23.    m2w.call(0,0,buf01,-1,buf,len)

  24.    len = w2m.call(65001,0,buf,-1,nil,0,nil,nil)
  25.    ret = "\0" * (len-1)
  26.    w2m.call(65001,0,buf,-1,ret,len-1,nil,nil)
  27.    
  28.    return ret
  29. end

  30. end

  31. class Bitmap
  32.   unless $I_LOVE_RMXP_6RWORDCONV
  33.     alias dx draw_text
  34.     def draw_text(p1, p2, p3 = 0, p4 = 3, p5 = nil, p6 = 0)
  35.       case p1
  36.       when Rect
  37.         str = Conv.c(p2)
  38.         dx(p1, str, p3)
  39.       else
  40.         str = Conv.c(p5)
  41.         dx(p1, p2, p3, p4, str, p6)
  42.       end
  43.     end
  44.     $I_LOVE_RMXP_6RWORDCONV = true
  45.   end
  46. end
复制代码


              [本贴由 叶舞枫 于 2007-4-22 22:20:45 进行了编辑]

Lv1.梦旅人

海 关

梦石
0
星屑
50
在线时间
431 小时
注册时间
2006-1-1
帖子
460
3
发表于 2006-11-6 05:59:59 | 只看该作者
发现了隐藏的表情~
消失中~~
回复 支持 反对

使用道具 举报

Lv1.梦旅人

NewS-

梦石
0
星屑
172
在线时间
21 小时
注册时间
2006-7-14
帖子
629
4
发表于 2006-11-6 06:08:14 | 只看该作者
以下引用两只鱼于2006-11-5 21:59:59的发言:

发现了隐藏的表情~


[本贴由作者于 2006-11-5 22:03:10 最后编辑]

啊!~~~~~  洋葱头  我都没有!!
都在那里下载的!!{/ll}

统统告诉我!!{/dk}
RockK & Abu.     2020.
热血物语RM+
回复 支持 反对

使用道具 举报

Lv1.梦旅人

有事烧纸

梦石
0
星屑
154
在线时间
509 小时
注册时间
2005-10-22
帖子
6982

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

5
发表于 2006-11-6 06:21:29 | 只看该作者

不可以太水哦!
神隐中,偶尔诈尸
回复 支持 反对

使用道具 举报

Lv1.梦旅人

风之塞尔达

梦石
0
星屑
50
在线时间
57 小时
注册时间
2005-10-22
帖子
2492

贵宾

6
发表于 2006-11-6 06:23:29 | 只看该作者
直接对RM里面的数据(说明,文章之类)进行转换?!
不太明白!(不过应该不会{/gg})
在程序里延续塞尔达的传说, 在画板上勾勒塞尔达的轮廓!!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

有事烧纸

梦石
0
星屑
154
在线时间
509 小时
注册时间
2005-10-22
帖子
6982

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

7
发表于 2006-11-6 07:26:11 | 只看该作者
  1. module Conv
  2.   
  3.   def self.c(str)
  4.    
  5.     m2w = Win32API.new("kernel32","MultiByteToWideChar",'ilpipi','i')
  6.     w2m = Win32API.new("kernel32","WideCharToMultiByte",'ilpipipp','i')
  7.     lcms = Win32API.new("kernel32","LCMapString",'llpipi','i')

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

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

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

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

  14.     len = m2w.call(936,0,ret,-1,nil,0)
  15.     buf01 = "\0"*(len*2+1)
  16.     lcms.call(0x0804,0x04000000,ret,-1,buf01,len*2)
  17.    
  18.     len = m2w.call(0,0,buf01,-1,nil,0)
  19.     buf = "\0" * (len*2)
  20.     m2w.call(0,0,buf01,-1,buf,len)

  21.     len = w2m.call(65001,0,buf,-1,nil,0,nil,nil)
  22.     ret = "\0" * (len-1)
  23.     w2m.call(65001,0,buf,-1,ret,len-1,nil,nil)
  24.    
  25.     return ret
  26.   end
  27.   
  28. end
复制代码


Covn.c(str)
神隐中,偶尔诈尸
回复 支持 反对

使用道具 举报

Lv1.梦旅人

66RPG站长

梦石
0
星屑
54
在线时间
615 小时
注册时间
2005-10-10
帖子
5734

RMVX自由创作大赛亚军第2届短篇游戏比赛亚军第5届短篇游戏比赛冠军

8
 楼主| 发表于 2006-11-6 07:48:22 | 只看该作者

API果然方便,省事了。
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

战争女神

梦石
0
星屑
50
在线时间
0 小时
注册时间
2006-4-20
帖子
177
9
发表于 2006-11-6 15:48:07 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

有事烧纸

梦石
0
星屑
154
在线时间
509 小时
注册时间
2005-10-22
帖子
6982

贵宾VX城市地图大赛冠军第1届RMTV比赛冠军第1届TG大赛冠军

10
发表于 2006-11-6 18:41:44 | 只看该作者
貌似圣姑的“圣”没有转成繁体字啊?
神隐中,偶尔诈尸
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 15:50

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表