Board logo

标题: 6.5引擎中建言、献策的条件错误 [打印本页]

作者: 贝莉卡    时间: 2025-8-31 20:57     标题: 6.5引擎中建言、献策的条件错误

也可能错误在更早的版本就有了,一直没有被发现。
因为冥想是消耗HP的,所以有限定条件HP≥3,否则无法使用,但是这个条件也同时被错误地加在了建言和献策上,导致HP<3时无法使用建言和献策

0046FDA0  |> \3C 14             CMP AL,14                //14是恢复MP的策略类型码,包括建言、献策、冥想
0046FDA2  |.  75 1A             JNZ SHORT Ekd5.0046FDBE
0046FDA4  |.  8B4D F8           MOV ECX,DWORD PTR SS:[EBP-8]
0046FDA7  |.  E8 54B7FAFF       CALL Ekd5.0041B500        //读取当前HP
0046FDAC  |.  83F8 03           CMP EAX,3                //判断HP是否≥3
0046FDAF  |.  73 37             JNB SHORT Ekd5.0046FDE8
修改为
0046FDA0  |> \807D 08 3E        CMP BYTE PTR SS:[EBP+8],3E        //3E是冥想的策略序号
0046FDA4  |.  75 18             JNZ SHORT Ekd5.0046FDBE
0046FDA6  |.  8B4D F8           MOV ECX,DWORD PTR SS:[EBP-8]
0046FDA9  |.  8379 10 03        CMP DWORD PTR DS:[ECX+10],3        //这种写法不太规范,实在是因为空间不够,就不调用41B500了
0046FDAD  |.  90                NOP
0046FDAE  |.  90                NOP
0046FDAF  |.  73 37             JNB SHORT Ekd5.0046FDE8




欢迎光临 轩辕春秋文化论坛 (http://xycq.org.cn/forum/) Powered by Discuz! 5.0.0