前三步应该不难,甚至可以合并到一个工具里来实现。也就是从TXT中提取汉字,整理不重复的以后,直接生成TGA文件。2 F+ D3 t% `4 e# ?8 L' z& \
至于第四步,我还没有研究过游戏的XML结构。不好下结论。但想来是XML结构应该不会太难。
& P5 s6 q2 l% T7 M `因为下载的两个游戏都在单位的电脑上,我明天一早就出差走,可能没有时间去研究了。那就凭我现在的理解说两个问题,可能两个问题一旦搞明白XML文件以后就不是问题了,但还是希望007能给我解释一下,这样我在出差的时候就能够把程序的主题框架构思出来,解决一些算法上的问题,出差一回来就可以动手了。
# x# f8 b# @2 }7 M9 R5 J
% c) p! Y0 ?6 W问题1:我们汉化的游戏中的英文和数字怎么处理?仍然调用原来的字体TGA文件吗?
" W9 i. {' Q9 ]1 L问题2:假设我们汉化制作好以后的TGA中按顺序保存了如下汉字“一二三四”,而在需要显示的对话中,一句是“一三”,另一句是“一四”。& k* Q% g3 P4 I$ V' W2 G
那么在XML中,是不是应该有这样的结构:
5 x" Z" t7 H8 U1 S{
+ @* O+ _5 A" F K$ eSHOWTEXT //需要显示文字的ID,或者是偏移量 {. T4 s8 Q" F8 F
X // 显示的X坐标6 ]: |, j5 f, k8 \. f/ W, c
Y // Y坐标/ @$ ?& P: Q& X# P2 z8 ?
}
9 d" u) h- r$ q0 W当然,如果这个结构中再包含字体文件,那就解释了我的第一个问题。如果是这样,那又出现一个新问题,就是制作汉化的XML时,需要考虑英文或者数字的宽度,将后面的文字显示位置进行调整。$ ? ?6 Y2 P) U2 C, y
& C- K2 ?( v, [$ C' v“一三”对应的XML内容就是{TGA名, ID:1, X:100, Y: 100;TGA名, ID:3, X:116, Y: 100} //假设显示在(100,100)
& m7 Y- g8 \5 K, T“一四”对应的XML内容就是{TGA名, ID:1, X:200, Y: 100;TGA名, ID:4, X:216, Y: 100} //假设显示在(200,100)8 L# x/ t3 x8 [4 d5 T
3 `6 {7 _. j7 I猜测,以上都是我的猜测,请007发一个游戏中XML的样式我看一下。 |