Board logo

标题: 6.2修正版【物理攻击后施法指定策略】 [打印本页]

作者: 59054695    时间: 2021-7-2 17:13     标题: 6.2修正版【物理攻击后施法指定策略】

因为之前写了【攻击次数+1】,这次自动施法的位置也用到这里,就写到了一起。

00406545  |. FF75 0C           |PUSH DWORD PTR SS:[EBP+C]               ; /Arg2
00406548  |. FF75 08           |PUSH DWORD PTR SS:[EBP+8]               ; |Arg1
0040654B  |. E8 20C60000       |CALL Ekd5.00412B70                      ; \Ekd5.00412B70
00406550  |. 90                |NOP
00406551  |. 90                |NOP

00412B70  /$ 55                PUSH EBP
00412B71  |. 8BEC              MOV EBP,ESP
00412B73  |. 51                PUSH ECX
00412B74  |. E8 6832FFFF       CALL Ekd5.00405DE1
00412B79  |. FF75 FC           PUSH DWORD PTR SS:[EBP-4]                ; /Arg1
00412B7C  |. E8 0FA0FFFF       CALL Ekd5.0040CB90                       ; \Ekd5.0040CB90
00412B81  |. 8B4D 08           MOV ECX,DWORD PTR SS:[EBP+8]
00412B84  |. E8 7036FFFF       CALL Ekd5.004061F9
00412B89  |. E8 013AFFFF       CALL Ekd5.0040658F
00412B8E  |. 6A 01             PUSH 1                                   ; /Arg4 = 00000001
00412B90  |. 6A 01             PUSH 1                                   ; |Arg3 = 00000001
00412B92  |. 6A 77             PUSH 77                                  ; |Arg2 = 00000077  攻击次数+1
00412B94  |. 6A 5C             PUSH 5C                                  ; |Arg1 = 0000005C
00412B96  |. E8 3ED6FFFF       CALL Ekd5.004101D9                       ; \Ekd5.004101D9
00412B9B  |. 85C0              TEST EAX,EAX
00412B9D  |. 74 10             JE SHORT Ekd5.00412BAF
00412B9F  |. 8B4D FC           MOV ECX,DWORD PTR SS:[EBP-4]
00412BA2  |. E8 3A32FFFF       CALL Ekd5.00405DE1
00412BA7  |. FF75 FC           PUSH DWORD PTR SS:[EBP-4]                ; /Arg1
00412BAA  |. E8 E19FFFFF       CALL Ekd5.0040CB90                       ; \Ekd5.0040CB90
00412BAF  |> 8B4D 08           MOV ECX,DWORD PTR SS:[EBP+8]
00412BB2  |. E8 4236FFFF       CALL Ekd5.004061F9
00412BB7  |. E8 D339FFFF       CALL Ekd5.0040658F
00412BBC  |. 6A 00             PUSH 0                                   ; /Arg4 = 00000000
00412BBE  |. 6A 01             PUSH 1                                   ; |Arg3 = 00000001
00412BC0  |. 6A 7A             PUSH 7A                                  ; |Arg2 = 0000007A 攻击后施法
00412BC2  |. 6A 61             PUSH 61                                  ; |Arg1 = 00000061
00412BC4  |. E8 10D6FFFF       CALL Ekd5.004101D9                       ; \Ekd5.004101D9
00412BC9  |. 85C0              TEST EAX,EAX
00412BCB  |. 74 25             JE SHORT Ekd5.00412BF2
00412BCD  |. 50                PUSH EAX
00412BCE  |. 8B4D 0C           MOV ECX,DWORD PTR SS:[EBP+C]
00412BD1  |. E8 2336FFFF       CALL Ekd5.004061F9
00412BD6  |. E8 ABD60B00       CALL Ekd5.004D0286
00412BDB  |. 85C0              TEST EAX,EAX
00412BDD  |. 74 13             JE SHORT Ekd5.00412BF2
00412BDF  |. 8B45 F8           MOV EAX,DWORD PTR SS:[EBP-8]
00412BE2  |. 48                DEC EAX
00412BE3  |. FF75 0C           PUSH DWORD PTR SS:[EBP+C]
00412BE6  |. FF75 08           PUSH DWORD PTR SS:[EBP+8]
00412BE9  |. 50                PUSH EAX
00412BEA  |. 8B4D FC           MOV ECX,DWORD PTR SS:[EBP-4]
00412BED  |. E8 78030C00       CALL Ekd5.004D2F6A
00412BF2  |> 8BE5              MOV ESP,EBP
00412BF4  |. 5D                POP EBP
00412BF5  \. C2 0800           RETN 8

想要施展的策略号+1=效果值

004D2EE0   55                  PUSH EBP
004D2EE1   8BEC                MOV EBP,ESP
004D2EE3   68 3D534500         PUSH Ekd5.0045533D                       ; 入口地址
004D2EE8   6A 00               PUSH 0
004D2EEA   FF75 0C             PUSH DWORD PTR SS:[EBP+C]
004D2EED   FF75 08             PUSH DWORD PTR SS:[EBP+8]
004D2EF0   E8 3227F5FF         CALL Ekd5.00425627
004D2EF5   8BE5                MOV ESP,EBP
004D2EF7   5D                  POP EBP
004D2EF8   C2 0800             RETN 8
004D2EFB   55                  PUSH EBP
004D2EFC   8BEC                MOV EBP,ESP
004D2EFE   8A45 18             MOV AL,BYTE PTR SS:[EBP+18]
004D2F01   8BE5                MOV ESP,EBP
004D2F03   5D                  POP EBP
004D2F04   C2 1400             RETN 14
004D2F07   55                  PUSH EBP
004D2F08   8BEC                MOV EBP,ESP
004D2F0A   33C0                XOR EAX,EAX
004D2F0C   3805 DC5F5000       CMP BYTE PTR DS:[505FDC],AL
004D2F12   74 1A               JE SHORT Ekd5.004D2F2E
004D2F14   8079 08 3C          CMP BYTE PTR DS:[ECX+8],3C
004D2F18   75 0A               JNZ SHORT Ekd5.004D2F24
004D2F1A   837D 08 02          CMP DWORD PTR SS:[EBP+8],2
004D2F1E   74 27               JE SHORT Ekd5.004D2F47
004D2F20   B0 23               MOV AL,23
004D2F22   EB 23               JMP SHORT Ekd5.004D2F47
004D2F24   837D 08 02          CMP DWORD PTR SS:[EBP+8],2
004D2F28   75 1D               JNZ SHORT Ekd5.004D2F47
004D2F2A   B0 23               MOV AL,23
004D2F2C   EB 19               JMP SHORT Ekd5.004D2F47
004D2F2E   FF75 0C             PUSH DWORD PTR SS:[EBP+C]
004D2F31   FF31                PUSH DWORD PTR DS:[ECX]
004D2F33   FF75 08             PUSH DWORD PTR SS:[EBP+8]
004D2F36   FFB1 C9020000       PUSH DWORD PTR DS:[ECX+2C9]
004D2F3C   FF71 01             PUSH DWORD PTR DS:[ECX+1]
004D2F3F   B9 50424B00         MOV ECX,Ekd5.004B4250
004D2F44   FF55 10             CALL DWORD PTR SS:[EBP+10]
004D2F47   8BE5                MOV ESP,EBP
004D2F49   5D                  POP EBP
004D2F4A   C2 0C00             RETN 0C
004D2F4D   55                  PUSH EBP
004D2F4E   8BEC                MOV EBP,ESP
004D2F50   FFB1 A8040000       PUSH DWORD PTR DS:[ECX+4A8]
004D2F56   FF71 0C             PUSH DWORD PTR DS:[ECX+C]
004D2F59   FF71 01             PUSH DWORD PTR DS:[ECX+1]
004D2F5C   FF31                PUSH DWORD PTR DS:[ECX]
004D2F5E   E8 E0D4F4FF         CALL Ekd5.00420443
004D2F63   83C4 10             ADD ESP,10
004D2F66   8BE5                MOV ESP,EBP
004D2F68   5D                  POP EBP
004D2F69   C3                  RETN
004D2F6A   55                  PUSH EBP
004D2F6B   8BEC                MOV EBP,ESP
004D2F6D   51                  PUSH ECX
004D2F6E   8B4D 08             MOV ECX,DWORD PTR SS:[EBP+8]
004D2F71   E8 8C10FBFF         CALL Ekd5.00484002
004D2F76   8A41 0E             MOV AL,BYTE PTR DS:[ECX+E]
004D2F79   8845 FC             MOV BYTE PTR SS:[EBP-4],AL
004D2F7C   8B4D 0C             MOV ECX,DWORD PTR SS:[EBP+C]
004D2F7F   E8 7532F3FF         CALL Ekd5.004061F9
004D2F84   90                  NOP
004D2F85   90                  NOP
004D2F86   90                  NOP
004D2F87   90                  NOP
004D2F88   0FB741 14           MOVZX EAX,WORD PTR DS:[ECX+14]
004D2F8C   0FB65D FC           MOVZX EBX,BYTE PTR SS:[EBP-4]
004D2F90   3BC3                CMP EAX,EBX
004D2F92   72 18               JB SHORT Ekd5.004D2FAC
004D2F94   68 FB2E4D00         PUSH Ekd5.004D2EFB
004D2F99   FF75 10             PUSH DWORD PTR SS:[EBP+10]
004D2F9C   FF75 0C             PUSH DWORD PTR SS:[EBP+C]
004D2F9F   FF75 08             PUSH DWORD PTR SS:[EBP+8]
004D2FA2   B9 F87A4900         MOV ECX,Ekd5.00497AF8
004D2FA7   E8 7B26F5FF         CALL Ekd5.00425627
004D2FAC   8BE5                MOV ESP,EBP
004D2FAE   5D                  POP EBP
004D2FAF   C2 0C00             RETN 0C
004D2FB2   C602 40             MOV BYTE PTR DS:[EDX],40
004D2FB5   EB 03               JMP SHORT Ekd5.004D2FBA
004D2FB7   C602 50             MOV BYTE PTR DS:[EDX],50
004D2FBA   FF75 14             PUSH DWORD PTR SS:[EBP+14]
004D2FBD   FF75 10             PUSH DWORD PTR SS:[EBP+10]
004D2FC0   8B4D FC             MOV ECX,DWORD PTR SS:[EBP-4]
004D2FC3   E8 7401F5FF         CALL Ekd5.0042313C
004D2FC8   83C4 08             ADD ESP,8
004D2FCB  -E9 1127F5FF         JMP Ekd5.004256E1
004D2FD0   C602 80             MOV BYTE PTR DS:[EDX],80
004D2FD3   EB 03               JMP SHORT Ekd5.004D2FD8
004D2FD5   C602 90             MOV BYTE PTR DS:[EDX],90
004D2FD8   FF75 14             PUSH DWORD PTR SS:[EBP+14]
004D2FDB   FF75 10             PUSH DWORD PTR SS:[EBP+10]
004D2FDE   8B4D FC             MOV ECX,DWORD PTR SS:[EBP-4]
004D2FE1   E8 5403F5FF         CALL Ekd5.0042333A
004D2FE6   83C4 08             ADD ESP,8
004D2FE9  -E9 9027F5FF         JMP Ekd5.0042577E

0043DC5A  |. E8 81520900       CALL Ekd5.004D2EE0

004259C0   . C2 1000           RETN 10

004259C3   . B22F4D00          DD Ekd5.004D2FB2

004259CF     B72F4D00          DD Ekd5.004D2FB7

004259F7     D02F4D00          DD Ekd5.004D2FD0
004259FB     D52F4D00          DD Ekd5.004D2FD5

0042313C  /$ 55                PUSH EBP
0042313D  |. 8BEC              MOV EBP,ESP
0042313F  |. 51                PUSH ECX
00423140  |. 51                PUSH ECX
00423141  |. 51                PUSH ECX
00423142  |. 6A 00             PUSH 0
00423144  |. 6A 00             PUSH 0
00423146  |. FF75 0C           PUSH DWORD PTR SS:[EBP+C]
00423149  |. FF75 08           PUSH DWORD PTR SS:[EBP+8]
0042314C  |. 6A 02             PUSH 2
0042314E  |. E8 B4FD0A00       CALL Ekd5.004D2F07
00423153  |. 3C FF             CMP AL,0FF
00423155  |. 74 1A             JE SHORT Ekd5.00423171
00423157  |. 8B4D F8           MOV ECX,DWORD PTR SS:[EBP-8]
0042315A  |. 8841 0C           MOV BYTE PTR DS:[ECX+C],AL
0042315D  |. 90                NOP
0042315E  |. 90                NOP
0042315F  |. 90                NOP
00423160  |. 90                NOP
00423161  |. 90                NOP
00423162  |. 90                NOP
00423163  |. 90                NOP
00423164  |. 90                NOP
00423165  |. 90                NOP
00423166  |. 90                NOP
00423167  |. 90                NOP
00423168  |. E8 E0FD0A00       CALL Ekd5.004D2F4D
0042316D  |. 85C0              TEST EAX,EAX
0042316F  |. 75 05             JNZ SHORT Ekd5.00423176
00423171  |> E9 DE000000       JMP Ekd5.00423254

0042333A  /$ 55                PUSH EBP
0042333B  |. 8BEC              MOV EBP,ESP
0042333D  |. 83EC 10           SUB ESP,10
00423340  |. 894D F8           MOV DWORD PTR SS:[EBP-8],ECX
00423343  |. FF75 0C           PUSH DWORD PTR SS:[EBP+C]
00423346  |. FF75 08           PUSH DWORD PTR SS:[EBP+8]
00423349  |. 6A 03             PUSH 3
0042334B  |. E8 B7FB0A00       CALL Ekd5.004D2F07
00423350  |. 3C FF             CMP AL,0FF
00423352  |. 0F84 91000000     JE Ekd5.004233E9
00423358  |. 8B4D F8           MOV ECX,DWORD PTR SS:[EBP-8]
0042335B  |. 8841 0C           MOV BYTE PTR DS:[ECX+C],AL
0042335E  |. 90                NOP
0042335F  |. 90                NOP
00423360  |. 90                NOP
00423361  |. 90                NOP
00423362  |. 90                NOP
00423363  |. 90                NOP
00423364  |. 90                NOP
00423365  |. 90                NOP
00423366  |. 90                NOP
00423367  |. E8 E1FB0A00       CALL Ekd5.004D2F4D
0042336C  |. 85C0              TEST EAX,EAX
0042336E  |. 74 79             JE SHORT Ekd5.004233E9

[ 本帖最后由 59054695 于 2021-7-6 00:26 编辑 ]
作者: zhoufangzun    时间: 2021-7-6 00:36



[ 本帖最后由 zhoufangzun 于 2021-7-6 00:38 编辑 ]
作者: c381612    时间: 2021-7-6 15:28     标题: 回复 #1 59054695 的帖子

白神,照这个代码修改之后,要怎么在形象修改器里面设定啊?
另外,这个对于恢复系的法术适用吗?打敌军一下,给我军奶一口,可以不?

[ 本帖最后由 c381612 于 2021-7-6 15:31 编辑 ]
作者: 59054695    时间: 2021-7-6 16:48     标题: 回复 #3 c381612 的帖子

这个写法只适合攻击系,恢复系的需要另外写
作者: c381612    时间: 2021-7-6 20:42     标题: 回复 #4 59054695 的帖子

好的,希望白神再接再厉,恢复系也能上线~
作者: 天道圣君    时间: 2021-7-8 22:55

要是可以打完自选策略就好了
作者: 双枪董平    时间: 2021-7-10 12:21

白神请教一下,教程的设置是攻击完之后释放第几号策略?
还有可以做成宝物特效吗?
作者: zhoufangzun    时间: 2021-7-10 12:28



QUOTE:
原帖由 双枪董平 于 2021-7-10 12:21 发表
白神请教一下,教程的设置是攻击完之后释放第几号策略?
还有可以做成宝物特效吗?

7a就是宝物特效,61是个人特效,策略是根据data值去设定。
作者: 双枪董平    时间: 2021-7-10 12:34     标题: 回复 #8 zhoufangzun 的帖子

了解,谢谢
作者: 59054695    时间: 2021-7-10 15:58     标题: 回复 #9 双枪董平 的帖子

宝物效果还是会质变的,如果不会处理宝物质变问题的话,这个效果最好放在辅助位。
PS:最近有没有更新S形象啊?给我分享一些。
作者: c381612    时间: 2021-7-22 08:53     标题: 回复 #10 59054695 的帖子

白神,照着你的代码修改了,也实现了效果。
不过和我之前想的有点不一样,我之前以为是A,也就是,第一下是物理攻击,然后接一个法术(对同一个敌人)
现在这个特效是B,对一个敌人实施物理打击,然后可以在指定策略的施法范围内,释放一个法术(可对同一敌人,也可对别的敌人实施远程打击)
然后我想问,我认为的那种效果A 要怎么实现?有相应的代码吗?我好像记得以前有MOD 做到过,但是忘记是哪一个了,求助白神
作者: 59054695    时间: 2021-7-23 12:57     标题: 回复 #11 c381612 的帖子

你的意思是,A攻击B后,A再选择策略,随意攻击范围内的人?
这个效果都不需要写这么多代码的。
直接在攻击后,插入释放策略代码。
作者: c381612    时间: 2021-7-23 13:28

白神,你看一下我的这个引擎,ekd5这个 是我自己改的,就是我说的,先打敌人一下,然后在指定的策略的施法范围之内,可以随意的对敌军施法,而不一定是对我击打的这个敌军。你能不能帮我测试一下,看看有没有BUG?

[ 本帖最后由 c381612 于 2021-7-23 14:44 编辑 ]

附件: Ekd5.zip (2021-7-23 13:28, 289.22 K) / 该附件被下载次数 26
http://xycq.org.cn/forum/attachment.php?aid=149383
作者: c381612    时间: 2021-7-23 13:37

已解决

[ 本帖最后由 c381612 于 2021-7-23 14:41 编辑 ]
作者: c381612    时间: 2021-7-23 14:41

找到原因了,少抄了一段代码




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