Board logo

标题: 水木版曹操传兵种特效 [打印本页]

作者: okokwori    时间: 2017-8-15 18:14     标题: 水木版曹操传兵种特效

最近无聊在添加兵种特效,论坛里发现了反击后反击的兵种特效
原版的反击后反击宝物特效的是这样的:
004063D6  |. 6A 28          PUSH 28  <——特效号
004063D8  |. 8B4D FC        MOV ECX,DWORD PTR SS:[EBP-4]
004063DB  |. E8 90920500    CALL 0045F670
004063E0  |. 8BC8           MOV ECX,EAX
004063E2  |. 6BC9 48        IMUL ECX,ECX,48
004063E5  |. 81C1 681B4A00  ADD ECX,004A1B68  <——计算出来的武将数据内存起始地址
004063EB  |. E8 19160000    CALL 00407A09  <——判断武将身上是否带有指定特效号的装备
004063F0  |. 85C0           TEST EAX,EAX
004063F2  |. 75 0F          JNZ SHORT 00406403  <——判断出武将身上带有反击后反击的宝物特效装备,跳到406403

将原来的代码修改如下(肯定不够位置,需要另外找空位置跳过改好再跳回来)
MOV ECX,DWORD PTR SS:[EBP-4]
CALL 0045F670
MOV ECX,EAX
IMUL ECX,ECX,48
ADD ECX,004A1B68
CALL 406610
CMP AL,XX  <——XX就是兵种编号
JE 406403
PUSH 28
CALL 00407A09
TEST EAX,EAX
JNZ SHORT 00406403

如上更改后发现所有兵种都变成反击后反击了,有没有大大帮忙指点一下,哪里错了?还有跳转空白的汇编是要从哪里改的?我是从原地址的6A 28改的 对吗?




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