From e34f492418a6ec18c6b24303c31ca043f8e3e143 Mon Sep 17 00:00:00 2001 From: Clownacy Date: Sat, 9 Nov 2019 14:39:23 +0000 Subject: [PATCH] Accuracy fixes for Igor Includes an ASM-accuracy fix I somehow missed before. --- src/NpcAct080.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/NpcAct080.cpp b/src/NpcAct080.cpp index 378a0e18..8a3d0008 100644 --- a/src/NpcAct080.cpp +++ b/src/NpcAct080.cpp @@ -991,6 +991,7 @@ void ActNpc088(NPCHAR *npc) npc->act_wait = 0; npc->xm = 3 * npc->xm / 2; npc->damage = 2; + break; } else { @@ -1081,11 +1082,11 @@ void ActNpc088(NPCHAR *npc) if (++npc->act_wait > 100 && npc->act_wait % 6 == 1) { if (npc->direct == 0) - deg = -120; + deg = 0x88; else - deg = -8; + deg = 0xF8; - deg += (unsigned char)Random(-16, 16); + deg += (unsigned char)Random(-0x10, 0x10); ym = 3 * GetSin(deg); xm = 3 * GetCos(deg); SetNpChar(11, npc->x, npc->y + 0x800, xm, ym, 0, 0, 0x100);