scgame ! Y% z8 }+ R9 b: \( P
' j. @! \+ K( k4 i% v你好,exttextout函数替换工具的功能部分的设计我写好了。
8 O. d; b! y/ g k+ H% H0 i请编写后放入gdi32.dll的proxy dll里,谢谢! 5 X) R/ V* O9 U. l6 `
这个工具制作完以后可以通用于所有Exttextout输出字幕的游戏 ,非常有用。 u, z' e; j7 K* G d
; H- W* p+ {2 r4 Q$ B/ d2 d. P$ {
hook Exttextout 为myExttextout,对传入的字符串作如下变化。
1 e+ f1 c2 I' Y: W1 E先把hash变换为1个12位的字符串,比如eb013c782344,然后到sub.ini文件寻找key * D% P, ~6 d4 X% t% P5 C, ?
eb013c782344_cn,如有取出key值作为译文,如无,则在eb013c782344_en中写入原文,
& J+ f& o( B, }在eb013c782344_cn写入一个空字符串,以备翻译。 $ m5 {+ _/ T$ x/ ~
* i, p; y6 L" g" T
对了,为了不导致乱码,还要hook creatfont系列函数。
$ u: H9 d. e8 K* ~* p/ p. _把charset和字体修改一下,就可以出中文了。" D2 ]& |) _, b4 k$ ]1 h; G
可以先用那个俄文游戏试试看。
+ I: N& x% R- q. e$ M% W& J1 f# v& ~$ h% k. ] K
有问题的话,请提问。 |