Form DegradingClone = ArmorInQuestion.GetReference().GetBaseObject() DegradingClone = DegradingClone.TempClone() ObjectReference ClonedRef = PlayerREF.addItem(DegradingClone) PlayerREF.EquipItem(ClonedRef) PlayerREF.RemoveItem(ArmorInQuestion.GetReference()) ArmorInQuestion.Clear() ArmorInQuestion.ForceRefTo(ClonedRef) ArmDegList9.addForm(ArmorInQuestion.GetReference())
and while I get a notification that something was added to my inventory, the name is blank and nothing appears there. It's as if there is a blank form being added rather than a cloned one.
EDIT: In the script log it says it can't do stuff with a None callstack, so that's interesting. But I do get a message saying simply "Added" without any item name before it.
NOTE: My skse_launcher.dll won't copy in properly to its directory, maybe this is the problem?
EDIT2: I doubt this is it. I looked and the old launcher dll is the same exact size as the new one. Dunno why it won't copy in though. Says something about it being used by explorer.
Here's the whole script:
Scriptname ARMDEG_CastingSpellScript extends activemagiceffect FormList Property ArmDegList0 autoFormList Property ArmDegList1 autoFormList Property ArmDegList2 autoFormList Property ArmDegList3 autoFormList Property ArmDegList4 autoFormList Property ArmDegList5 autoFormList Property ArmDegList6 autoFormList Property ArmDegList7 autoFormList Property ArmDegList8 autoFormList Property ArmDegList9 autoReferenceAlias Property EqCuirass autoReferenceAlias Property EqHelm autoReferenceAlias Property EqGaunt autoReferenceAlias Property EqBoots autoReferenceAlias Property EqShield autoReferenceAlias Property EqWeap autoActor Property PlayerREF autoevent OnEffectStart(Actor C, Actor T)Degrade()endEventfunction Degrade()ReferenceAlias ArmorInQuestion = PickSlot();Debug.Notification(ArmorInQuestion.GetName())if (ArmorInQuestion.GetReference()); && PlayerREF.IsEquipped(ArmorInQuestion.GetReference()) ;Debug.Notification("ArmorInQuestion.GetReference() Exists and is Equipped") if ArmDegList1.HasForm(ArmorInQuestion.GetReference()) ArmDegList0.addForm(ArmorInQuestion.GetReference()) ArmDegList1.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList2.HasForm(ArmorInQuestion.GetReference()) ArmDegList1.addForm(ArmorInQuestion.GetReference()) ArmDegList2.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList3.HasForm(ArmorInQuestion.GetReference()) ArmDegList2.addForm(ArmorInQuestion.GetReference()) ArmDegList3.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList4.HasForm(ArmorInQuestion.GetReference()) ArmDegList3.addForm(ArmorInQuestion.GetReference()) ArmDegList4.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList5.HasForm(ArmorInQuestion.GetReference()) ArmDegList4.addForm(ArmorInQuestion.GetReference()) ArmDegList5.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList6.HasForm(ArmorInQuestion.GetReference()) ArmDegList5.addForm(ArmorInQuestion.GetReference()) ArmDegList6.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList7.HasForm(ArmorInQuestion.GetReference()) ArmDegList6.addForm(ArmorInQuestion.GetReference()) ArmDegList7.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList8.HasForm(ArmorInQuestion.GetReference()) ArmDegList7.addForm(ArmorInQuestion.GetReference()) ArmDegList8.RemoveAddedForm(ArmorInQuestion.GetReference()) elseIf ArmDegList9.HasForm(ArmorInQuestion.GetReference()) ArmDegList8.addForm(ArmorInQuestion.GetReference()) ArmDegList9.RemoveAddedForm(ArmorInQuestion.GetReference()) else Form DegradingClone = ArmorInQuestion.GetReference().GetBaseObject() DegradingClone = DegradingClone.TempClone() ObjectReference ClonedRef = PlayerREF.PlaceAtMe(DegradingClone) PlayerREF.additem(ClonedRef) PlayerREF.EquipItem(ClonedRef) PlayerREF.RemoveItem(ArmorInQuestion.GetReference()) ArmorInQuestion.Clear() ArmorInQuestion.ForceRefTo(ClonedRef) ArmDegList9.addForm(ArmorInQuestion.GetReference()) endIf;Debug.Notification("A piece of armor has degraded.")endIf endFunctionReferenceAlias Function PickSlot()int SlotNum = Utility.RandomInt(1,5);Debug.Notification("SlotNum = " +SlotNum)if SlotNum==1return EqCuirasselseIf SlotNum==2return EqBootselseIf SlotNum==3return EqShieldelseIf SlotNum==4return EqGauntelseIf SlotNum==5return EqHelmendIfendFunction