From ef74b2cbaf496c931843da63282f9783e6198ab4 Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Sat, 27 Oct 2018 18:00:19 +0200 Subject: [PATCH] Clean up M_DoFadein, M_DoFadeout and M_DoGotHit --- Source/monster.cpp | 80 ++++++++++++++++++++-------------------------- Source/monster.h | 6 ++-- 2 files changed, 37 insertions(+), 49 deletions(-) diff --git a/Source/monster.cpp b/Source/monster.cpp index 8d536607e..5c35e9f52 100644 --- a/Source/monster.cpp +++ b/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) diff --git a/Source/monster.h b/Source/monster.h index 3e7d1393f..466d55b0c 100644 --- a/Source/monster.h +++ b/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();