这个游戏本身是没有字幕的,但是我们可以想办法配上中文字幕。
4 r+ k' I; R6 f% G8 a在游戏的VMD下,有很多*.VMD文件,这些文件可以用HD Video Converter Factory Pro这个软件转换成MP4格式。. J1 I8 }( s9 l2 h
~) C: C) |7 {( C. j1 b) s
在下边这个文件中,可以抓取游戏正在使用哪个VMD文件。
3 c+ o% r0 V1 [, s+ j+ i5 `下一步,只要找到游戏正在播放的frameno,就能有办法输出字幕。
b+ W3 C/ @4 G) i |4 c- M研究到此时,出了一个怪问题,游戏在打开*.VMD文件变成无法播放了,讲scummvm和游戏都进行了还原,还是老样子。
; B! d0 N5 u( f0 c& d8 [先记录一下,后续继续解决。- g, Z$ F: M8 G; m; V; B0 h
0 m6 k* a) d% @2 N4 S8 s
抓取文件名的代码5 |1 f% d1 b+ [0 J
- reg_t kPlayVMDOpen(EngineState *s, int argc, reg_t *argv) {, z. h' ?7 f2 ^, @. I/ A! h
- const Common::String fileName = s->_segMan->getString(argv[0]);
+ ?8 i0 Z: j! n' ?+ t" s. g9 c" E- O8 ] - // argv[1] is an optional cache size argument which we do not use: b( r' }0 v) j g; B3 e# D
- // const uint16 cacheSize = argc > 1 ? CLIP<int16>(argv[1].toSint16(), 16, 1024) : 0;
' [7 ~, F: a# {+ y, W - const VMDPlayer::OpenFlags flags = argc > 2 ? (VMDPlayer::OpenFlags)argv[2].toUint16() : VMDPlayer::kOpenFlagNone;+ L& B; K8 H& [) {% k( k
- ' @9 a5 [1 u6 n/ n$ e+ h& `1 d
- //by shane007 for test5 a* n0 y) x. S
- //debug("fileName %s", fileName.c_str());6 x x2 F' H; z; @" \
- 3 `' z! R7 o# T7 Y$ P6 O
- return make_reg(0, g_sci->_video32->getVMDPlayer().open(fileName, flags));
6 V# @9 D: {5 [2 x0 ^9 h0 S
$ f: U! d& z W8 @# F, h- }
复制代码
3 l3 Q- S. a l' t) k6 n( v: j( G+ i. q- Y* ~$ e5 K8 X4 y' q
9 P0 O* b9 W* X6 B3 _5 L |