shithub: cstory

Download patch

ref: e34f492418a6ec18c6b24303c31ca043f8e3e143
parent: cb87f050576d749d19f7b1f86c3a43505a22394c
author: Clownacy <Clownacy@users.noreply.github.com>
date: Sat Nov 9 09:39:23 EST 2019

Accuracy fixes for Igor

Includes an ASM-accuracy fix I somehow missed before.

--- a/src/NpcAct080.cpp
+++ b/src/NpcAct080.cpp
@@ -991,6 +991,7 @@
 				npc->act_wait = 0;
 				npc->xm = 3 * npc->xm / 2;
 				npc->damage = 2;
+				break;
 			}
 			else
 			{
@@ -1081,11 +1082,11 @@
 			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);