Browse Source

Fix decompilation of pnode_vals

Was originally int[26], should be int[25] with a dword as int[0]
pull/4/head
galaxyhaxz 8 years ago committed by GitHub
parent
commit
a1a39ccefc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 11
      Source/path.cpp

11
Source/path.cpp

@ -4,6 +4,7 @@
PATHNODE path_nodes[300];
int gdwCurPathStep;
int gdwCurNodes;
int pnode_vals[25];
PATHNODE *pnode_ptr;
PATHNODE *pnode_tblptr[300];
@ -28,7 +29,7 @@ int __fastcall FindPath(bool (__fastcall *PosOk)(int, int, int), int PosOkArg, i
int *v17; // ecx
char v18; // dl
pnode_vals[0] = 0;
gdwCurNodes = 0;
path_2_nodes = path_new_step();
gdwCurPathStep = 0;
pnode_ptr = path_new_step();
@ -60,7 +61,7 @@ int __fastcall FindPath(bool (__fastcall *PosOk)(int, int, int), int PosOkArg, i
v16 = v15 == 25;
if ( v15 >= 25 )
break;
pnode_vals[++v15] = path_directions[3 * (v13->y - (*v14)->y) - (*v14)->x + 4 + v13->x];
pnode_vals[++v15-1] = path_directions[3 * (v13->y - (*v14)->y) - (*v14)->x + 4 + v13->x];
v13 = *v14;
v14 = &(*v14)->Parent;
if ( !*v14 )
@ -75,7 +76,7 @@ int __fastcall FindPath(bool (__fastcall *PosOk)(int, int, int), int PosOkArg, i
result = 0;
if ( v15 > 0 )
{
v17 = &pnode_vals[v15];
v17 = &pnode_vals[v15-1];
do
{
v18 = *(_BYTE *)v17;
@ -405,9 +406,9 @@ PATHNODE *__cdecl path_new_step()
{
PATHNODE *v1; // esi
if ( pnode_vals[0] == 300 )
if ( gdwCurNodes == 300 )
return 0;
v1 = &path_nodes[pnode_vals[0]++];
v1 = &path_nodes[gdwCurNodes++];
memset(v1, 0, 0x34u);
return v1;
}

Loading…
Cancel
Save