with creation kit, I can fix that?
Thank you and sorry my bad english




ScriptName zqzzSlSorter extends ObjectReference{This script removes items from zqzzCsSort and places them in linked containers according to classification};Activator Property zqzzCsSort Auto;Keyword for types of weaponsKeyword Property WeapTypeBattleAxe AutoKeyword Property WeapTypeBow AutoKeyword Property WeapTypeDagger AutoKeyword Property WeapTypeGreatSword AutoKeyword Property WeapTypeMace AutoKeyword Property WeapTypeStaff AutoKeyword Property WeapTypeSword AutoKeyword Property WeapTypeWarAxe AutoKeyword Property WeapTypeWarhammer AutoKeyword Property VendorItemArrow Auto;Keyword for types of ArmorKeyword Property ArmorLight AutoKeyword Property ArmorHeavy AutoKeyword Property ArmorShield AutoKeyword Property ArmorHelmet AutoKeyword Property ArmorCuirass AutoKeyword Property ArmorGauntlets AutoKeyword Property ArmorBoots AutoKeyword Property ArmorJewelry AutoKeyword Property ArmorClothing Auto;Keyword for enchanted objectsKeyword Property MagicDisallowEnchanting Auto;Keyword for Other GearKeyword Property VendorItemGem AutoKeyword Property VendorItemJewelry Auto;Keyword DESIRED for favourite objects...??????????????????????;Keywords don't work as filtersEvent OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer); If akSourceContainer == Self.GetNthLinkedRef(-1); Debug.Trace("The player game me " + aiItemCount + "x " + akBaseItem) debug.Notification("OnitemAddedFiredSuccessfully") If akBaseItem.HasKeyword(WeapTypeDagger) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(21)) ElseIf akBaseItem.HasKeyword(WeapTypeDagger) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(1));................LineWorksCorrectly ElseIf akBaseItem.HasKeyword(WeapTypeBow) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(22)) ElseIf akBaseItem.HasKeyword(WeapTypeBow) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(2)) ElseIf akBaseItem.HasKeyword(VendorItemArrow) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(23)) ElseIf akBaseItem.HasKeyword(VendorItemArrow) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(3)) ElseIf akBaseItem.HasKeyword(WeapTypeSword) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(24)) ElseIf akBaseItem.HasKeyword(WeapTypeSword) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(4)) ElseIf akBaseItem.HasKeyword(WeapTypeWarAxe) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(25)) ElseIf akBaseItem.HasKeyword(WeapTypeWarAxe) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(5)) ElseIf akBaseItem.HasKeyword(WeapTypeMace) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(26)) ElseIf akBaseItem.HasKeyword(WeapTypeMace) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(6)) ElseIf akBaseItem.HasKeyword(ArmorShield) && akBaseItem.HasKeyword(ArmorLight) && akBaseItem.HasKeyword(MagicDisallowEnchanting);................FAIL due to keyword bug Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(27)) ElseIf akBaseItem.HasKeyword(ArmorShield) && akBaseItem.HasKeyword(ArmorLight);................FAIL due to keyword bug Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(7)) ElseIf akBaseItem.HasKeyword(WeapTypeGreatSword) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(28)) ElseIf akBaseItem.HasKeyword(WeapTypeGreatSword) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(8)) ElseIf akBaseItem.HasKeyword(WeapTypeBattleAxe) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(29)) ElseIf akBaseItem.HasKeyword(WeapTypeBattleAxe) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(9)) ElseIf akBaseItem.HasKeyword(WeapTypeWarHammer) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(30)) ElseIf akBaseItem.HasKeyword(WeapTypeWarHammer) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(10)) ElseIf akBaseItem.HasKeyword(WeapTypeStaff) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(31)) ElseIf akBaseItem.HasKeyword(WeapTypeStaff) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(11)) ElseIf akBaseItem.HasKeyword(ArmorShield) && akBaseItem.HasKeyword(ArmorHeavy) && akBaseItem.HasKeyword(MagicDisallowEnchanting);.................FAIL due to keyword bug Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(32)) ElseIf akBaseItem.HasKeyword(ArmorShield) && akBaseItem.HasKeyword(ArmorHeavy);.................FAIL due to keyword bug Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(12)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) && akBaseItem.HasKeyword(ArmorLight) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(33)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) && akBaseItem.HasKeyword(ArmorLight) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(13)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) && akBaseItem.HasKeyword(ArmorLight) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(34)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) && akBaseItem.HasKeyword(ArmorLight) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(14)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) && akBaseItem.HasKeyword(ArmorLight) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(35)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) && akBaseItem.HasKeyword(ArmorLight) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(15)) ElseIf akBaseItem.HasKeyword(ArmorBoots) && akBaseItem.HasKeyword(ArmorLight) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(36)) ElseIf akBaseItem.HasKeyword(ArmorBoots) && akBaseItem.HasKeyword(ArmorLight) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(16)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) && akBaseItem.HasKeyword(ArmorHeavy) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(37)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) && akBaseItem.HasKeyword(ArmorHeavy) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(17)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) && akBaseItem.HasKeyword(ArmorHeavy) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(38)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) && akBaseItem.HasKeyword(ArmorHeavy) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(18)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) && akBaseItem.HasKeyword(ArmorHeavy) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(39)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) && akBaseItem.HasKeyword(ArmorHeavy) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(19)) ElseIf akBaseItem.HasKeyword(ArmorBoots) && akBaseItem.HasKeyword(ArmorHeavy) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(40)) ElseIf akBaseItem.HasKeyword(ArmorBoots) && akBaseItem.HasKeyword(ArmorHeavy) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(20)) ElseIf (akBaseItem.HasKeyword(ArmorJewelry) || akBaseItem.HasKeyword(VendorItemJewelry)) && akBaseItem.HasKeyword(MagicDisallowEnchanting) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(42)) ElseIf akBaseItem.HasKeyword(ArmorJewelry) || akBaseItem.HasKeyword(VendorItemJewelry) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(41)) ElseIf akBaseItem.HasKeyword(VendorItemGem) Self.RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(43)) Else;If generic keywords such as VendorItemArmor, VendorItemWeapon, etc. EndIf; else; Debug.Trace("I got " + aiItemCount + "x " + akBaseItem + " from another container"); endIfendEvent.Self.RemoveItem()
RemoveItem()
ScriptName zqzzSlSorter extends ObjectReference{This script removes items from zqzzCsSort and places them in linked containers according to classification};Activator Property zqzzCsSort Auto;Keyword for types of weaponsKeyword Property WeapTypeBattleAxe AutoKeyword Property WeapTypeBow AutoKeyword Property WeapTypeDagger AutoKeyword Property WeapTypeGreatSword AutoKeyword Property WeapTypeMace AutoKeyword Property WeapTypeStaff AutoKeyword Property WeapTypeSword AutoKeyword Property WeapTypeWarAxe AutoKeyword Property WeapTypeWarhammer AutoKeyword Property VendorItemArrow Auto;Keyword for types of ArmorKeyword Property ArmorLight AutoKeyword Property ArmorHeavy AutoKeyword Property ArmorShield AutoKeyword Property ArmorHelmet AutoKeyword Property ArmorCuirass AutoKeyword Property ArmorGauntlets AutoKeyword Property ArmorBoots AutoKeyword Property ArmorJewelry AutoKeyword Property ArmorClothing Auto;Keyword for enchanted objectsKeyword Property MagicDisallowEnchanting Auto;Keyword for Other GearKeyword Property VendorItemGem AutoKeyword Property VendorItemJewelry Auto;Keyword DESIRED for favourite objects...??????????????????????;Keywords don't work as filtersEvent OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer) If akBaseItem.HasKeyword(WeapTypeDagger) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(21)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(1));................LineWorksCorrectly EndIf ElseIf akBaseItem.HasKeyword(WeapTypeBow) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(22)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(2)) EndIf ElseIf akBaseItem.HasKeyword(VendorItemArrow) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(23)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(3)) EndIf ElseIf akBaseItem.HasKeyword(WeapTypeSword) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(24)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(4)) EndIf ElseIf akBaseItem.HasKeyword(WeapTypeWarAxe) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(25)) ElseIf akBaseItem.HasKeyword(WeapTypeWarAxe) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(5)) EndIf ElseIf akBaseItem.HasKeyword(WeapTypeMace) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(26)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(6)) EndIf ElseIf akBaseItem.HasKeyword(ArmorShield) If akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(MagicDisallowEnchanting);................FAIL due to keyword bug RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(27)) Else;If akBaseItem.HasKeyword(ArmorLight);................FAIL due to keyword bug RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(7)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHeavy) If akBaseItem.HasKeyword(MagicDisallowEnchanting);.................FAIL due to keyword bug RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(32)) Else;If akBaseItem.HasKeyword(ArmorHeavy);.................FAIL due to keyword bug RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(12)) EndIf EndIf ElseIf akBaseItem.HasKeyword(WeapTypeGreatSword) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(28)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(8)) EndIf ElseIf akBaseItem.HasKeyword(WeapTypeBattleAxe) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(29)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(9)) EndIf ElseIf akBaseItem.HasKeyword(WeapTypeWarHammer) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(30)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(10)) EndIf ElseIf akBaseItem.HasKeyword(WeapTypeStaff) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(31)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(11)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHelmet) If akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(33)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(13)) EndIf Else If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(37)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(17)) EndIf EndIf ElseIf akBaseItem.HasKeyword(ArmorCuirass) If akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(34)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(14)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHeavy) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(38)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(18)) EndIf EndIf ElseIf akBaseItem.HasKeyword(ArmorGauntlets) If akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(35)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(15)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHeavy) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(39)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(19)) EndIf EndIf ElseIf akBaseItem.HasKeyword(ArmorBoots) If akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(36)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(16)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHeavy) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(40)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(20)) EndIf EndIf ElseIf (akBaseItem.HasKeyword(ArmorJewelry) || akBaseItem.HasKeyword(VendorItemJewelry)) If akBaseItem.HasKeyword(MagicDisallowEnchanting) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(42)) Else RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(41)) EndIf ElseIf akBaseItem.HasKeyword(VendorItemGem) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(43)); Else;If generic keywords such as VendorItemArmor, VendorItemWeapon, etc. EndIfEndEvent Self.RemoveItem()
RemoveItem()
I fixed up a few goofs from me editing it so it'll compile now and should do the same things faster.ScriptName zqzzSlSorter extends ObjectReferenceFormList Property StuffYouAreSortingFLST AutoKeyword Property WeapTypeBattleAxe AutoKeyword Property WeapTypeBow AutoKeyword Property WeapTypeDagger AutoKeyword Property WeapTypeGreatSword AutoKeyword Property WeapTypeMace AutoKeyword Property WeapTypeStaff AutoKeyword Property WeapTypeSword AutoKeyword Property WeapTypeWarAxe AutoKeyword Property WeapTypeWarhammer AutoKeyword Property VendorItemArrow AutoKeyword Property ArmorLight AutoKeyword Property ArmorHeavy AutoKeyword Property ArmorShield AutoKeyword Property ArmorHelmet AutoKeyword Property ArmorCuirass AutoKeyword Property ArmorGauntlets AutoKeyword Property ArmorBoots AutoKeyword Property ArmorJewelry AutoKeyword Property ArmorClothing AutoKeyword Property MagicDisallowEnchanting AutoKeyword Property VendorItemGem AutoKeyword Property VendorItemJewelry AutoEvent OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer) If !StuffYouAreSortingFLST.HasForm(akBaseItem) Return ; Even a ginormous FLST will return HasForm quickly ElseIf akBaseItem.HasKeyword(VendorItemGem) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(43)) ElseIf akBaseItem.HasKeyword(MagicDisallowEnchanting) If akBaseItem.HasKeyword(WeapTypeDagger) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(21)) ElseIf akBaseItem.HasKeyword(WeapTypeBow) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(22)) ElseIf akBaseItem.HasKeyword(VendorItemArrow) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(23)) ElseIf akBaseItem.HasKeyword(WeapTypeSword) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(24)) ElseIf akBaseItem.HasKeyword(WeapTypeWarAxe) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(25)) ElseIf akBaseItem.HasKeyword(WeapTypeMace) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(26)) ElseIf akBaseItem.HasKeyword(WeapTypeGreatSword) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(28)) ElseIf akBaseItem.HasKeyword(WeapTypeBattleAxe) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(29)) ElseIf akBaseItem.HasKeyword(WeapTypeWarHammer) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(30)) ElseIf akBaseItem.HasKeyword(WeapTypeStaff) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(31)) ElseIf akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(ArmorShield) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(27)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(33)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(34)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(35)) ElseIf akBaseItem.HasKeyword(ArmorBoots) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(36)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHeavy) If akBaseItem.HasKeyword(ArmorShield) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(32)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(37)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(38)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(39)) ElseIf akBaseItem.HasKeyword(ArmorBoots) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(40)) EndIf ElseIf (akBaseItem.HasKeyword(ArmorJewelry) || akBaseItem.HasKeyword(VendorItemJewelry)) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(42)) EndIf Else ; If !akBaseItem.HasKeyword(MagicDisallowEnchanting) If akBaseItem.HasKeyword(WeapTypeDagger) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(1)) ElseIf akBaseItem.HasKeyword(WeapTypeBow) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(2)) ElseIf akBaseItem.HasKeyword(VendorItemArrow) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(3)) ElseIf akBaseItem.HasKeyword(WeapTypeSword) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(4)) ElseIf akBaseItem.HasKeyword(WeapTypeWarAxe) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(5)) ElseIf akBaseItem.HasKeyword(WeapTypeMace) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(6)) ElseIf akBaseItem.HasKeyword(WeapTypeGreatSword) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(8)) ElseIf akBaseItem.HasKeyword(WeapTypeBattleAxe) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(9)) ElseIf akBaseItem.HasKeyword(WeapTypeWarHammer) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(10)) ElseIf akBaseItem.HasKeyword(WeapTypeStaff) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(11)) ElseIf akBaseItem.HasKeyword(ArmorLight) If akBaseItem.HasKeyword(ArmorShield) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(7)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(13)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(14)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(15)) ElseIf akBaseItem.HasKeyword(ArmorBoots) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(16)) ElseIf (akBaseItem.HasKeyword(ArmorJewelry) || akBaseItem.HasKeyword(VendorItemJewelry)) EndIf ElseIf akBaseItem.HasKeyword(ArmorHeavy) If akBaseItem.HasKeyword(ArmorShield) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(12)) ElseIf akBaseItem.HasKeyword(ArmorHelmet) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(17)) ElseIf akBaseItem.HasKeyword(ArmorCuirass) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(18)) ElseIf akBaseItem.HasKeyword(ArmorGauntlets) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(19)) ElseIf akBaseItem.HasKeyword(ArmorBoots) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(20)) EndIf ElseIf akBaseItem.HasKeyword(ArmorJewelry) || akBaseItem.HasKeyword(VendorItemJewelry) RemoveItem(akBaseItem, aiItemCount, TRUE, Self.GetNthLinkedRef(41)) EndIf EndIf EndEvent
I fixed up a few goofs from me editing it so it'll compile now and should do the same things faster. Here's a version with the conditions hinged on the MagicDisallowEnchanting keyword. Should be faster still... Light/Heavy shields: You could make FormLists, then check 'If YourHeavyShieldsFLST.HasForm(akBaseItem)'.