原帖由 程军超 于 2021-2-20 17:24 发表
问一个困扰我多年的问题,城门上限能扩充吗?好像到了多少张后面的就贴不到地图上去了。有没有办法扩充下。S战场没法换27地图,所以笨到用GATE换了。
GATE的 伪扩充 可以去参考无双,用N个GATE文件通过整形变量来更换,前提是一个战场地图只能用同一个GATE文件里面的图。
无双引擎相关的代码:(对着EXE去看,看得明白就看吧)
0045650C |. C745 FC 00000000 MOV DWORD PTR SS:[EBP-4],0
00456513 |. 68 B8BB4800 PUSH 0048BBB8 ; /Arg1 = 0048BBB8 ASCII "GATE.E5"
00456518 |. 8D8D D8FEFFFF LEA ECX,DWORD PTR SS:[EBP-128] ; |
0045651E |. E8 1296FCFF CALL 0041FB35 ; \0041FB35
0045694F |. C745 FC 00000000 |MOV DWORD PTR SS:[EBP-4],0
00456956 |. 68 B8BB4800 |PUSH 0048BBB8 ; /Arg1 = 0048BBB8 ASCII "GATE.E5"
0045695B |. 8D8D DCFEFFFF |LEA ECX,DWORD PTR SS:[EBP-124] ; |
00456961 |. E8 CF91FCFF |CALL 0041FB35 ; \0041FB35
00456EDB |. C745 FC 00000000 |MOV DWORD PTR SS:[EBP-4],0
00456EE2 |. 68 B8BB4800 |PUSH 0048BBB8 ; /Arg1 = 0048BBB8 ASCII "GATE.E5"
00456EE7 |. 8D8D E4FEFFFF |LEA ECX,DWORD PTR SS:[EBP-11C] ; |
00456EED |. E8 438CFCFF |CALL 0041FB35 ; \0041FB35
0045650C 33C9 XOR ECX,ECX
0045650E 894D FC MOV DWORD PTR SS:[EBP-4],ECX
00456511 E8 EABE0700 CALL 004D2400
00456516 50 PUSH EAX
00456517 90 NOP
0045694F 33C9 XOR ECX,ECX
00456951 894D FC MOV DWORD PTR SS:[EBP-4],ECX
00456954 E8 A7BA0700 CALL 004D2400
00456959 51 PUSH ECX
0045695A 90 NOP
00456EDB 33C9 XOR ECX,ECX
00456EDD 894D FC MOV DWORD PTR SS:[EBP-4],ECX
00456EE0 E8 1BB50700 CALL 004D2400
00456EE5 50 PUSH EAX
00456EE6 90 NOP
004D2400 55 PUSH EBP
004D2401 8BEC MOV EBP,ESP
004D2403 B9 9E0F0000 MOV ECX,0F9E
004D2408 E8 19EDFFFF CALL 004D1126
004D240D 8B0485 00EE5400 MOV EAX,DWORD PTR DS:[EAX*4+54EE00]
004D2414 8BE5 MOV ESP,EBP
004D2416 5D POP EBP
004D2417 C3 RETN