From 901c40287403424d722da937b39b03b90fdb3e46 Mon Sep 17 00:00:00 2001 From: Eddoursul Date: Thu, 7 Oct 2021 01:08:29 +0200 Subject: [PATCH] Added 'SkyUI - Ghost Item Bug Fix' by EdmanSA --- scripts/ski_favoritesmanager.pex | Bin 24327 -> 24876 bytes scripts/source/ski_favoritesmanager.psc | 110 +++++++++++++++++------- 2 files changed, 81 insertions(+), 29 deletions(-) diff --git a/scripts/ski_favoritesmanager.pex b/scripts/ski_favoritesmanager.pex index 836d62e739107c7e93d1f6c24de490fbf8528553..6892dcba1dcbb61d5b769e0f108a8f0c97a7d70a 100644 GIT binary patch literal 24876 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 literal 24327 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 IpWM*?KmBcmod5s; diff --git a/scripts/source/ski_favoritesmanager.psc b/scripts/source/ski_favoritesmanager.psc index dc3a74f9..dbcc4f3b 100644 --- a/scripts/source/ski_favoritesmanager.psc +++ b/scripts/source/ski_favoritesmanager.psc @@ -11,9 +11,11 @@ import Math ; 2: - Added check for vampire lord ; ; 3: - Less eagerly clearing of invalid entries +; +; 4: - EDC - Added repeat find to InvalidateItem() int function GetVersion() - return 3 + return 4 endFunction @@ -222,6 +224,11 @@ event OnVersionUpdate(int a_version) _itemInvalidFlags2 = new bool[128] endIf + ; Version 4 + if (a_version >= 4 && CurrentVersion < 4) + Debug.Trace(self + ": Updating to script version 4") + endIf + endEvent @@ -804,7 +811,10 @@ bool function ProcessItem(Form a_item, int a_itemType, bool a_allowDeferring = t ; It's two-handed and both hands are free elseIf (weaponType > 4 && !_usedRightHand && !_usedLeftHand) - if (a_item == PlayerREF.GetEquippedObject(0) && a_itemId != PlayerREF.GetEquippedItemId(0)) + ; EDC - Changed this line from GetEquippedItemId(0) to GetEquippedItemId(1) since two-handed weapons don't seem to appear in left hand + ;Debug.Trace(self + ": PlayerREF.GetEquippedObject(0) is " + PlayerREF.GetEquippedObject(0) + ", PlayerREF.GetEquippedObject(1) is " + PlayerREF.GetEquippedObject(1)) + ;Debug.Trace(self + ": PlayerREF.GetEquippedItemId(0) is " + PlayerREF.GetEquippedItemId(0) + ", PlayerREF.GetEquippedItemId(1) is " + PlayerREF.GetEquippedItemId(1)) + if (a_item == PlayerREF.GetEquippedObject(0) && a_itemId != PlayerREF.GetEquippedItemId(1)) UnequipHand(0) endIf PlayerREF.EquipItemById(itemWeapon, a_itemId, equipSlot = 0, equipSound = _silenceEquipSounds) @@ -960,41 +970,83 @@ bool function ProcessItem(Form a_item, int a_itemType, bool a_allowDeferring = t endFunction function InvalidateItem(int a_itemId, bool redrawIcon = false) + ; EDC - Version 3 implementation only invalidates the first appearance of + ; an itemID. Any subsequent use in other groups is missed. + ; This version recursively searches for additional items beyond the first + ;int loop int index + - ; GroupData - index = _itemIds1.Find(a_itemId) - if (index != -1) - _itemInvalidFlags1[index] = true - endIf - - index = _itemIds2.Find(a_itemId) - if (index != -1) - _itemInvalidFlags2[index] = true - endIf - + ; GroupData [1-4] + ;loop = 0 + index = 0 + while index < 128 + index = _itemIds1.Find(a_itemId, index) + if (index != -1) + ;Debug.Trace(self + ": Setting _itemInvalidFlags1[" + index + "] = true. Loop number " + loop) + ;loop += 1 + _itemInvalidFlags1[index] = true + index += 1 + else + index = 128 + endIf + endWhile + + ; GroupData [5-8] + ;loop = 0 + index = 0 + while index < 128 + index = _itemIds2.Find(a_itemId, index) + if (index != -1) + ;Debug.Trace(self + ": Setting _itemInvalidFlags2[" + index + "] = true. Loop number " + loop) + ;loop += 1 + _itemInvalidFlags2[index] = true + index += 1 + else + index = 128 + endIf + endWhile + ; Main hand - index = _groupMainHandItemIds.Find(a_itemId) - if (index != -1) - _groupMainHandItems[index] = none - _groupMainHandItemIds[index] = 0 - endIf + index = 0 + while index < 8 + index = _groupMainHandItemIds.Find(a_itemId, index) + if (index != -1) + _groupMainHandItems[index] = none + _groupMainHandItemIds[index] = 0 + index += 1 + else + index = 8 + endIf + endWhile ; Off hand - index = _groupOffHandItemIds.Find(a_itemId) - if (index != -1) - _groupOffHandItems[index] = none - _groupOffHandItemIds[index] = 0 - endIf + index = 0 + while index < 8 + index = _groupOffHandItemIds.Find(a_itemId, index) + if (index != -1) + _groupOffHandItems[index] = none + _groupOffHandItemIds[index] = 0 + index += 1 + else + index = 8 + endIf + endWhile ; Icon - index = _groupIconItemIds.Find(a_itemId) - if (index != -1) - ReplaceGroupIcon(index) - if (redrawIcon) - UpdateMenuGroupData(index) + index = 0 + while index < 8 + index = _groupIconItemIds.Find(a_itemId, index) + if (index != -1) + ReplaceGroupIcon(index) + if (redrawIcon) + UpdateMenuGroupData(index) + endIf + index += 1 + else + index = 8 endIf - endIf + endWhile endFunction int function FindFreeIndex(int[] a_itemIds, bool[] a_itemInvalidFlags, int offset)