Browse Source

Clean up M_DoFadein, M_DoFadeout and M_DoGotHit

pull/25/head
Anders Jenbo 8 years ago
parent
commit
ef74b2cbaf
  1. 80
      Source/monster.cpp
  2. 6
      Source/monster.h

80
Source/monster.cpp

@ -2790,51 +2790,40 @@ BOOL __fastcall M_DoSAttack(int i)
return FALSE;
}
int __fastcall M_DoFadein(int i)
BOOL __fastcall M_DoFadein(int i)
{
int v1; // edi
int v2; // esi
v1 = i;
if ((DWORD)i >= MAXMONSTERS)
TermMsg("M_DoFadein: Invalid monster %d", i);
v2 = v1;
if ((!(monster[v1]._mFlags & 2) || monster[v2]._mAnimFrame != 1)
&& (monster[v1]._mFlags & 2 || monster[v2]._mAnimFrame != monster[v2]._mAnimLen)) {
return 0;
if ((!(monster[i]._mFlags & 2) || monster[i]._mAnimFrame != 1)
&& (monster[i]._mFlags & 2 || monster[i]._mAnimFrame != monster[i]._mAnimLen)) {
return FALSE;
}
M_StartStand(v1, monster[v2]._mdir);
monster[v2]._mFlags &= 0xFFFFFFFD;
return 1;
M_StartStand(i, monster[i]._mdir);
monster[i]._mFlags &= 0xFFFFFFFD;
return TRUE;
}
int __fastcall M_DoFadeout(int i)
BOOL __fastcall M_DoFadeout(int i)
{
int v1; // esi
int v2; // eax
int v3; // ecx
signed int v4; // edx
int v5; // ecx
int v6; // edx
v1 = i;
if ((DWORD)i >= MAXMONSTERS)
TermMsg("M_DoFadeout: Invalid monster %d", i);
v2 = v1;
v3 = monster[v1]._mFlags;
if ((!(monster[v1]._mFlags & 2) || monster[v2]._mAnimFrame != 1)
&& (monster[v1]._mFlags & 2 || monster[v2]._mAnimFrame != monster[v2]._mAnimLen)) {
return 0;
if ((!(monster[i]._mFlags & 2) || monster[i]._mAnimFrame != 1)
&& (monster[i]._mFlags & 2 || monster[i]._mAnimFrame != monster[i]._mAnimLen)) {
return FALSE;
}
v4 = monster[v2].MType->mtype;
if (v4 < MT_INCIN || v4 > MT_HELLBURN)
v5 = v3 & 0xFFFFFFFD | 1;
if (monster[i].MType->mtype < MT_INCIN || monster[i].MType->mtype > MT_HELLBURN)
monster[i]._mFlags = monster[i]._mFlags & 0xFFFFFFFD | 1;
else
v5 = v3 & 0xFFFFFFFD;
v6 = monster[v2]._mdir;
monster[v2]._mFlags = v5;
M_StartStand(v1, v6);
return 1;
monster[i]._mFlags = monster[i]._mFlags & 0xFFFFFFFD;
M_StartStand(i, monster[i]._mdir);
return TRUE;
}
int __fastcall M_DoHeal(int i)
@ -3032,21 +3021,20 @@ void __fastcall M_Teleport(int i)
}
}
int __fastcall M_DoGotHit(int i)
BOOL __fastcall M_DoGotHit(int i)
{
int v1; // edi
int v2; // esi
v1 = i;
if ((DWORD)i >= MAXMONSTERS)
TermMsg("M_DoGotHit: Invalid monster %d", i);
v2 = v1;
if (monster[v1].MType == NULL)
TermMsg("M_DoGotHit: Monster %d \"%s\" MType NULL", v1, monster[v2].mName);
if (monster[v2]._mAnimFrame != monster[v2]._mAnimLen)
return 0;
M_StartStand(v1, monster[v2]._mdir);
return 1;
if (monster[i].MType == NULL)
TermMsg("M_DoGotHit: Monster %d \"%s\" MType NULL", i, monster[i].mName);
if (monster[i]._mAnimFrame == monster[i]._mAnimLen) {
M_StartStand(i, monster[i]._mdir);
return TRUE;
}
return FALSE;
}
void __fastcall M_UpdateLeader(int i)

6
Source/monster.h

@ -76,12 +76,12 @@ BOOL __fastcall M_DoAttack(int i);
BOOL __fastcall M_DoRAttack(int i);
int __fastcall M_DoRSpAttack(int i);
BOOL __fastcall M_DoSAttack(int i);
int __fastcall M_DoFadein(int i);
int __fastcall M_DoFadeout(int i);
BOOL __fastcall M_DoFadein(int i);
BOOL __fastcall M_DoFadeout(int i);
int __fastcall M_DoHeal(int i);
int __fastcall M_DoTalk(int i);
void __fastcall M_Teleport(int i);
int __fastcall M_DoGotHit(int i);
BOOL __fastcall M_DoGotHit(int i);
void __fastcall M_UpdateLeader(int i);
void __cdecl DoEnding();
void __cdecl PrepDoEnding();

Loading…
Cancel
Save