设为首页收藏本站官方微博

其他 【Scummvm汉化 #5】 Phantasmagoria 2 - A Puzzle of Flesh 幽魂2#1 字幕篇

[复制链接]
查看: 307|回复: 0
打印 上一主题 下一主题

[其他] 【Scummvm汉化 #5】 Phantasmagoria 2 - A Puzzle of Flesh 幽魂2#1 字幕篇

跳转到指定楼层
楼主
发表于 2023-8-14 20:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

【Scummvm汉化 #5】 Phantasmagoria 2 - A Puzzle of Flesh 幽魂2#1 字幕篇

这个游戏本身是没有字幕的,但是我们可以想办法配上中文字幕。  u! P; b% V- P. z# H) U
和幽魂1类似,在游戏的DUK下,有很多*.DUK文件,这些文件可以用改名为*.AVI的方式实现播放。
" z: U3 N) Z, N
+ Z% h  c/ N! W在下边这个文件中,可以抓取游戏正在使用哪个DUK文件。' g* `1 u' h  G4 S7 Y, u- ]; ?, h: N$ w
下一步,只要找到游戏正在播放的frameno,就能有办法输出字幕。
0 l" E( D$ F1 w
) `, A2 K; J7 d6 F" I# G  G抓取resourceId的代码' R' J+ [' `* _1 U& ~6 A  D
  1. \engines\sci\engine\kvideo.cpp% c' J: t8 Q, ?" W2 b. U! V+ z
  2. reg_t kPlayDuckOpen(EngineState *s, int argc, reg_t *argv) {+ m+ L) q9 L& e" l4 S' ]/ r
  3.         const GuiResourceId resourceId = argv[0].toUint16();0 ]) @9 T8 R' I- f
  4.         const int displayMode = argv[1].toSint16();9 D6 N7 A) V3 N
  5.         const int16 x = argv[2].toSint16();
    ) Q' E" o: N: j% j* z
  6.         const int16 y = argv[3].toSint16();& I  F) b& j2 r, E. i8 y" w
  7.         // argv[4] is a cache size argument that we do not use
    ! P5 o, ^8 @6 V  ^2 x/ r5 F+ B
  8.         g_sci->_video32->getDuckPlayer().open(resourceId, displayMode, x, y);
    # k1 T% E* t' a! s* d

  9. / g) w4 r( `  X2 w. m
  10.         //by shane007 for test6 p) }6 L. s% I" O1 i; Q" ]
  11.         debug("resourceId %i", resourceId);
    7 @. ?4 e. `2 S- s1 A- B3 \
  12. 3 T$ \* T. F+ H6 m0 ^' l7 B
  13.         return NULL_REG;
    & f# R! o1 r) W& ?$ {
  14. }
复制代码

4 J% B8 Z+ K& _6 ^2 b& J. `
' M7 A8 n6 h8 B7 E2 m
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

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