Skip to content

Commit

Permalink
Merge pull request #2 from seritools/monster-refactor
Browse files Browse the repository at this point in the history
monster.cpp: first cleanups
  • Loading branch information
seritools authored Aug 20, 2018
2 parents c68923a + 9d31a6e commit ce997ec
Show file tree
Hide file tree
Showing 13 changed files with 1,017 additions and 1,237 deletions.
2 changes: 1 addition & 1 deletion Source/dead.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ void __cdecl InitDead()
v10 = monster[v9].MType;
v11 = (char *)(v8 - 8);
v15 = (int *)8;
v14 = v10->Anims[4].Frames;
v14 = (int *)v10->Anims[4].Frames;
do
{
v12 = v14;
Expand Down
8 changes: 4 additions & 4 deletions Source/engine.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1950,12 +1950,12 @@ void __fastcall LoadFileWithMem(char *pszName, void *buf)
WCloseFile(a1);
}

void __fastcall Cl2ApplyTrans(char *p, char *ttbl, int last_frame)
void __fastcall Cl2ApplyTrans(unsigned char *p, unsigned char *ttbl, int last_frame)
{
int v3; // eax
int v4; // edi
int v5; // esi
char *v6; // eax
unsigned char *v6; // eax
char v7; // bl
unsigned char v8; // bl
int v9; // edi
Expand All @@ -1982,7 +1982,7 @@ void __fastcall Cl2ApplyTrans(char *p, char *ttbl, int last_frame)
v9 = v8;
do
{
*v6 = ttbl[(unsigned char)*v6];
*v6 = ttbl[*v6];
++v6;
--v9;
}
Expand All @@ -1992,7 +1992,7 @@ void __fastcall Cl2ApplyTrans(char *p, char *ttbl, int last_frame)
else
{
--v5;
*v6 = ttbl[(unsigned char)*v6];
*v6 = ttbl[*v6];
++v6;
}
}
Expand Down
2 changes: 1 addition & 1 deletion Source/engine.h
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ void *__fastcall DiabloAllocPtr(int dwBytes);
void __fastcall mem_free_dbg(void *p);
unsigned char *__fastcall LoadFileInMem(char *pszName, int *pdwFileLen);
void __fastcall LoadFileWithMem(char *pszName, void *buf);
void __fastcall Cl2ApplyTrans(char *p, char *ttbl, int last_frame);
void __fastcall Cl2ApplyTrans(unsigned char *p, unsigned char *ttbl, int last_frame);
void __fastcall Cl2DecodeFrm1(int x, int y, char *pCelBuff, int nCel, int width, int dir1, int dir2);
void __fastcall Cl2DecDatFrm1(char *buffer, char *frame_content, int a3, int width);
void __fastcall Cl2DecodeFrm2(char colour, int screen_x, int screen_y, char *pCelBuff, int nCel, int frame_width, int a7, int a8);
Expand Down
1 change: 1 addition & 0 deletions Source/gendung.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ char nTrapTable[2049];
char leveltype; // weak
unsigned char currlevel; // idb
char TransList[256];
// TODO: probably unsigned char
char nSolidTable[2049];
int level_frame_count[2049];
ScrollStruct ScrollInfo;
Expand Down
11 changes: 7 additions & 4 deletions Source/missiles.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2119,6 +2119,9 @@ void __fastcall SetMissDir(int mi, int dir)
SetMissAnim(mi, _LOBYTE(missile[mi]._miAnimType));
}

// TODO: replace `int mi` parameter with `missile_graphic_id mi`
// to enable the compiler to optimize int to char properly
// check for example the calls in `InitMonsterGFX`
void __fastcall LoadMissileGFX(int mi)
{
MisFileData *v1; // esi
Expand Down Expand Up @@ -3454,7 +3457,7 @@ void __fastcall AddRhino(int mi, int sx, int sy, int dx, int dy, int midir, int
v13 = i;
missile[v13]._miAnimFlags = 0;
missile[v13]._mimfnum = midir;
missile[v13]._miAnimData = v12->Frames[midir];
missile[v13]._miAnimData = (int)v12->Frames[midir];
missile[v13]._miAnimDelay = v12->Delay;
missile[v13]._miAnimLen = v12->Rate;
v14 = monster[v9].MType;
Expand Down Expand Up @@ -3494,7 +3497,7 @@ void __fastcall miss_null_32(int mi, int sx, int sy, int dx, int dy, int midir,
v12 = v10;
missile[v12]._mimfnum = midir;
missile[v12]._miAnimFlags = 0;
missile[v12]._miAnimData = v11->Frames[midir];
missile[v12]._miAnimData = (int)v11->Frames[midir];
missile[v12]._miAnimDelay = v11->Delay;
missile[v12]._miAnimLen = v11->Rate;
v13 = monster[id].MType;
Expand Down Expand Up @@ -6511,7 +6514,7 @@ void __fastcall mi_null_32(int i)
missile[v2]._miyvel = -missile[v2]._miyvel;
v14 = opposite[v13];
missile[v2]._mimfnum = v14;
v15 = monster[v4].MType->Anims[1].Frames[v14];
v15 = (int)monster[v4].MType->Anims[1].Frames[v14];
++missile[v2]._miVar2;
missile[v2]._miAnimData = v15;
if ( v10 > 0 )
Expand Down Expand Up @@ -7479,7 +7482,7 @@ void __cdecl missiles_process_charge()
{
v7 = &v5->Anims[5];
}
missile[v2]._miAnimData = v7->Frames[v3];
missile[v2]._miAnimData = (int)v7->Frames[v3];
}
}
}
Expand Down
Loading

0 comments on commit ce997ec

Please # to comment.