From b00c33c6543aef8bf92235620aeb724bd750b9b2 Mon Sep 17 00:00:00 2001 From: qndel Date: Mon, 11 Mar 2019 01:30:12 +0100 Subject: [PATCH] AddBoneSpirit bin exact (#615) --- Source/missiles.cpp | 41 +++++++++++++---------------------------- 1 file changed, 13 insertions(+), 28 deletions(-) diff --git a/Source/missiles.cpp b/Source/missiles.cpp index 5cfcb2b72..d405c9ef8 100644 --- a/Source/missiles.cpp +++ b/Source/missiles.cpp @@ -3423,40 +3423,25 @@ void __fastcall AddTelekinesis(int mi, int sx, int sy, int dx, int dy, int midir void __fastcall AddBoneSpirit(int mi, int sx, int sy, int dx, int dy, int midir, int mienemy, int id, int dam) { - int v9; // ebx - int v10; // edi - int v11; // esi - int v12; // eax - int v13; // eax - int mia; // [esp+Ch] [ebp-8h] - int x; // [esp+10h] [ebp-4h] - - v9 = dx; - v10 = dy; - x = sx; - mia = mi; if (sx == dx && sy == dy) { - v9 = XDirAdd[midir] + dx; - v10 = YDirAdd[midir] + dy; + dx = XDirAdd[midir] + dx; + dy = YDirAdd[midir] + dy; } - v11 = mi; missile[mi]._midam = 0; - GetMissileVel(mi, sx, sy, v9, v10, 16); - v12 = GetDirection8(x, sy, v9, v10); - SetMissDir(mia, v12); - missile[v11]._miVar3 = 0; - missile[v11]._mirange = 256; - missile[v11]._miVar1 = x; - missile[v11]._miVar2 = sy; - missile[v11]._miVar4 = v9; - missile[v11]._miVar5 = v10; - missile[v11]._mlid = AddLight(x, sy, 8); + GetMissileVel(mi, sx, sy, dx, dy, 16); + SetMissDir(mi, GetDirection8(sx, sy, dx, dy)); + missile[mi]._mirange = 256; + missile[mi]._miVar1 = sx; + missile[mi]._miVar2 = sy; + missile[mi]._miVar3 = 0; + missile[mi]._miVar4 = dx; + missile[mi]._miVar5 = dy; + missile[mi]._mlid = AddLight(sx, sy, 8); if (!(_BYTE)mienemy) { UseMana(id, 36); - v13 = id; drawhpflag = TRUE; - plr[v13]._pHPBase -= 384; - plr[v13]._pHitPoints -= 384; + plr[id]._pHitPoints -= 384; + plr[id]._pHPBase -= 384; if (plr[id]._pHitPoints <= 0) SyncPlrKill(id, 0); }