Your script needs to extend a form, in this case, an activemagiceffect.
Also, you need some properties for your script to work with.
Lastly, I see you have duplicate "additem" functions in some of the lines of code.
here is what I think you're driving towards
Also, if you were using the debug.traces to debug your script, that is fine, otherwise, debug.notification would be a nice touch.
Hope this helped!
ScriptName SoulReaperScript Extends ActiveMagicEffect
ObjectReference Property SoulGemPetty Auto
ObjectReference Property SoulGemPettyFilled Auto
ObjectReference Property SoulGemLesser Auto
ObjectReference Property SoulGemLesserFilled Auto
ObjectReference Property SoulGemCommon Auto
ObjectReference Property SoulGemCommonFilled Auto
ObjectReference Property SoulGemGreater Auto
ObjectReference Property SoulGemGreaterFilled Auto
ObjectReference Property SoulGemGrand Auto
ObjectReference Property SoulGemGrandFilled Auto
EVENT OnEffectStart(Actor akTarget, Actor akCaster)
Int INVSoulGemPetty = akcaster.GetItemCount(SoulGemPetty)
Int INVSoulGemLesser = akcaster.GetItemCount(SoulGemLesser)
Int INVSoulGemCommon = akcaster.GetItemCount(SoulGemCommon)
Int INVSoulGemGreater = akcaster.GetItemCount(SoulGemGreater)
Int INVSoulGemGrand = akcaster.GetItemCount(SoulGemGrand)
if INVSoulGemPetty >= 1
akcaster.AddItem(SoulGemPettyFilled, 1, false)
akcaster.RemoveItem(SoulGemPetty, 1, true)
Debug.Trace("You have reaped a soul")
Elseif INVSoulGemLesser >= 1
akcaster.AddItem(SoulGemLesserFilled, 1, false)
akcaster.RemoveItem(SoulGemLesser, 1, true)
Debug.Trace("You have reaped a soul")
Elseif INVSoulGemCommon >= 1
akcaster.AddItem(SoulGemCommonFilled, 1, false)
akcaster.RemoveItem(SoulGemCommon, 1, true)
Debug.Trace("You have reaped a soul")
Elseif INVSoulGemCommon >= 1
akcaster.AddItem(SoulGemCommonFilled, 1, false)
akcaster.RemoveItem(SoulGemCommon, 1, true)
Debug.Trace("You have reaped a soul")
Elseif INVSoulGemGreater >= 1
akcaster.AddItem(SoulGemGreaterFilled, 1, false)
akcaster.RemoveItem(SoulGemGreater, 1, true)
Debug.Trace("You have reaped a soul")
Elseif INVSoulGemGrand >= 1
akcaster.AddItem(SoulGemGrandFilled, 1, false)
akcaster.RemoveItem(SoulGemGrand, 1, true)
Debug.Trace("You have reaped a soul")
Else
Debug.Trace("You cannot reap any more souls")
Endif
endEVENT