diff --git a/artifacts/ddraw.ini b/artifacts/ddraw.ini index 9879ed34..64f42680 100644 --- a/artifacts/ddraw.ini +++ b/artifacts/ddraw.ini @@ -520,7 +520,6 @@ AutoQuickSavePage=1 ;Set to 1 to speed up the HP/AC counter animations ;Set to 2 to update the HP/AC counters instantly -;Set to 3 to update the AC counter instantly when switching to other controlled critters in combat SpeedInterfaceCounterAnims=0 ;These lines allow you to control the karma FRMs displayed on the character screen diff --git a/sfall/Modules/PartyControl.cpp b/sfall/Modules/PartyControl.cpp index d92839bd..86dd1852 100644 --- a/sfall/Modules/PartyControl.cpp +++ b/sfall/Modules/PartyControl.cpp @@ -32,7 +32,7 @@ bool npcAutoLevelEnabled; bool npcEngineLevelUp = true; static bool isControllingNPC = false; -static char skipCounterAnim; +static bool skipCounterAnim = false; static int delayedExperience; @@ -94,8 +94,8 @@ static void SaveRealDudeState() { realDude.isSaved = true; - if (skipCounterAnim == 1) { - skipCounterAnim++; + if (!skipCounterAnim) { + skipCounterAnim = true; SafeWrite8(0x422BDE, 0); // no animate } if (isDebug) fo::func::debug_printf("\n[SFALL] Save dude state."); @@ -226,8 +226,8 @@ static void RestoreRealDudeState(bool redraw = true) { (*fo::ptr::game_global_vars)[fo::ptr::drugInfoList[8].addictGvar] = realDude.addictGvar[7]; if (redraw) { - if (skipCounterAnim == 2) { - skipCounterAnim--; + if (skipCounterAnim) { + skipCounterAnim = false; SafeWrite8(0x422BDE, 1); // restore } fo::func::intface_redraw(); @@ -354,8 +354,8 @@ pcName: static void PartyControlReset() { if (realDude.obj_dude != nullptr && isControllingNPC) { RestoreRealDudeState(false); - if (skipCounterAnim == 2) { - skipCounterAnim = 1; // skipCounterAnim--; + if (skipCounterAnim) { + skipCounterAnim = false; SafeWrite8(0x422BDE, 1); // restore } } @@ -427,8 +427,8 @@ static void NPCWeaponTweak() { void PartyControl::SwitchToCritter(fo::GameObject* critter) { static bool onlyOnce = false; - if (skipCounterAnim == 2 && critter && critter == realDude.obj_dude) { - skipCounterAnim--; + if (skipCounterAnim && critter && critter == realDude.obj_dude) { + skipCounterAnim = false; SafeWrite8(0x422BDE, 1); // restore } @@ -727,8 +727,6 @@ void PartyControl::init() { NpcAutoLevelPatch(); - skipCounterAnim = (IniReader::GetConfigInt("Misc", "SpeedInterfaceCounterAnims", 0) == 3) ? 1 : 0; - // Display party member's current level & AC & addict flag if (IniReader::GetConfigInt("Misc", "PartyMemberExtraInfo", 0)) { dlogr("Applying display extra info patch for party members.", DL_INIT);