| 问题 | 结论 |
|---|---|
initiation_ok_over.bmp 是什么 | 通用「确定」按钮贴图(over/click 两态:initiation_ok_over.bmp + initiation_ok_click.bmp),不是助手窗口的控件 |
| 控件 ID | 两个,两个不同窗口复用同一贴图:ID=0x62 和 ID=0x72 |
| 是否属于助手窗口 | 否。0x62 / 0x72 都不在助手 0xA3F700 跳转表的直发清单里;创建处父对象用的成员偏移(+0x330、+0x3F4、+0x438)与助手窗口结构不符 |
..\datas\interface\DATA\etc\initiation_ok_over.bmp 在镜像中仅 1 处:VA 0x10A52DC(click 版 0x10A5310)0xAB0CBE~0xAB0D08、0xABD7FF~0xABD9560x00AB0D02 push 0x10a5310 ; click 贴图 0x00AB0D07 push 0x10a52dc ; over 贴图 0x00AB0D0C push 0x62 ; ★ 控件 ID = 0x62 0x00AB0D0E push this 0x00AB0D21 push (y+0x1B4) ; y = 436 0x00AB0D2E push (x+0xD5) ; x = 213 0x00AB0D3F call 0xcb28c0 ; 创建按钮(对象大小 0x548) → 指针存回 [this+0x358]
同窗口背景:window_npc\window_exchangebox_danger.bmp(红色警示确认框)+ Close_normal/Close_click 关闭按钮。
0x00ABD950 push 0x10a5310 ; click 贴图 0x00ABD955 push 0x10a52dc ; over 贴图 0x00ABD95A push 0x72 ; ★ 控件 ID = 0x72 0x00ABD974 push 0x9E ; x = 158 0x00ABD979 push 0xD5 ; y = 213 0x00ABD984 call 0xcb28c0 → 指针存回 [this+0x43C],并把 [this+0x3F4]+0x28 / +0x2C 挂到按钮 +0x38 / +0x3C
同窗口还引用:button_mugong_over/click.bmp(무공 = 武功按钮)。
window_exchangebox_danger(红色警示框背景)+ button_mugong(武功)+ initiation_ok(确定)——
这套 UI 是危险操作的确认弹窗,最典型的就是武功初始化(洗点)确认框:
initiation_ok 就是弹窗右下角那颗「确定」按钮,点了即执行不可逆操作。
window_exchangebox_danger 对应的窗口实例([this+0x3F4] 一族),再对其控件指针(父+0x358 / 父+0x43C)模拟点击initiation_ok_* 可作为识别该弹窗是否在屏的特征串