原引擎三连击(重新写的)
昨天晚上给棉崽改引擎,其中有把防御两次攻击改为主动连击……
突然想起以前自己改过三连击,现在想想,那个方法是错误的,问题很大,于是就顺手重新写了
看贴回贴是个好习惯啊……还看,还不回帖,再不回帖就…………沉了……
效果:装备了3A特效号的武将攻击必定双击,有30%的几率进行第三次攻击
这样可以看作 主动双击 具有隐藏特性,可以有几率进行第三次攻击
主动连击改法不贴出来(教程很多,慕容和godtybe都有)
00406551 . /E9 22E80200 JMP Ekd116.00434D78(跳转空白处)
00406556 |90 NOP
00406557 |90 NOP
00406558 |90 NOP
我是占用的许子将教学最后开全宝的函数空间,取消该函数的调用,这样不影响教学……
00434D78 > \8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; 三连击修改
00434D7B . 33D2 XOR EDX,EDX
00434D7D . 8A90 08060000 MOV DL,BYTE PTR DS:[EAX+608]
00434D83 . 83FA 01 CMP EDX,1
00434D86 . 72 49 JB SHORT Ekd5.00434DD1
00434D88 . 83FA 02 CMP EDX,2 判断是否进行了第二次攻击,没进行就跳过第三次攻击判定
00434D8B . 7D 51 JGE SHORT Ekd5.00434DDE
00434D8D . 6A 3A PUSH 3A(宝物特效号) ; /Arg1 = 0000003A
00434D8F . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4] ; |
00434D92 . 36:8B48 08 MOV ECX,DWORD PTR SS:[EAX+8] ; |
00434D96 . E8 572DFDFF CALL Ekd5.00407AF2 ; \Ekd116.00407AF2
00434D9B . 85C0 TEST EAX,EAX
00434D9D . 74 3F JE SHORT Ekd5.00434DDE
00434D9F . 33C0 XOR EAX,EAX
00434DA1 . 36:A1 334D430>MOV EAX,DWORD PTR SS:[434D33] 判断位置434D33是否为1,为1开启三连击,默认为0,因为棉崽没说要这个特效,就没开启……
00434DA7 . 83F8 01 CMP EAX,1
00434DAA . 75 32 JNZ SHORT Ekd5.00434DDE
00434DAC . 6A 1E PUSH 1E(发动三连击概率为30%)
00434DAE . E8 7FAD0400 CALL Ekd5.0047FB32
00434DB3 . 85C0 TEST EAX,EAX
00434DB5 . 74 27 JE SHORT Ekd5.00434DDE
00434DB7 . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
00434DBA . 8A88 08060000 MOV CL,BYTE PTR DS:[EAX+608]
00434DC0 . 80C1 01 ADD CL,1(计数加1)
00434DC3 . 8B55 FC MOV EDX,DWORD PTR SS:[EBP-4]
00434DC6 . 888A 08060000 MOV BYTE PTR DS:[EDX+608],CL
00434DCC .^ E9 6817FDFF JMP Ekd5.00406539(攻击)
00434DD1 > 8B4D FC MOV ECX,DWORD PTR SS:[EBP-4](前两次攻击到这里)
00434DD4 . E8 A813FDFF CALL Ekd5.00406181(连击率判断,必双击修改里面)
00434DD9 .^ E9 7B17FDFF JMP Ekd5.00406559
00434DDE >^ E9 7E17FDFF JMP Ekd5.00406561
以上也可以独立出来三连击,也可以让双击10级变三连击……
|