diff --git a/artifacts/ddraw.ini b/artifacts/ddraw.ini index 44997386..734ca897 100644 --- a/artifacts/ddraw.ini +++ b/artifacts/ddraw.ini @@ -515,7 +515,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 251c3f4d..b82430db 100644 --- a/sfall/Modules/PartyControl.cpp +++ b/sfall/Modules/PartyControl.cpp @@ -38,7 +38,7 @@ bool npcAutoLevelEnabled; bool npcEngineLevelUp = true; static bool isControllingNPC = false; -static char skipCounterAnim; +static bool skipCounterAnim = false; static int delayedExperience; @@ -158,8 +158,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."); @@ -324,8 +324,8 @@ static void RestoreRealDudeState(bool redraw = true) { if (realDude.extendAddictGvar) RestoreAddictGvarState(); if (redraw) { - if (skipCounterAnim == 2) { - skipCounterAnim--; + if (skipCounterAnim) { + skipCounterAnim = false; SafeWrite8(0x422BDE, 1); // restore } fo::func::intface_redraw(); @@ -463,8 +463,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 } } @@ -537,8 +537,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 } @@ -866,8 +866,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);