So what does TrapSoul actually do?

Post » Thu Jul 25, 2013 2:20 am

So according to the Creation Kit Wiki calling trapsoul() on an actor will trigger a soul trap, then if they die I should be able to harvest its soul. That doesn't seem to be working though.

Every example I've seen uses TrapSoul in an if statement, like it was checking if there was a successful soul trap rather than actually triggering one.

I have attempted changing it into an if statement but it still didn't apply the soul trap at all. What am I missing here? Just ignore the elseifs. It doesn't seem to work even when I'm in the same cell as the creature. I have found a thread from a while back where a person was trying to do the same thing as me but they used a summon instead of specific actor in a particular cell.

Scriptname SE_ImbueSoulGem2 extends ActiveMagicEffect Actor Property GrandAvatar AutoActor Property GreaterAvatar AutoActor Property CommonAvatar AutoActor Property LesserAvatar AutoActor Property PettyAvatar Auto    SoulGem Property SoulGemPetty  Auto  SoulGem Property SoulGemLesser  Auto  SoulGem Property SoulGemCommon  Auto  SoulGem Property SoulGemGreater  Auto  SoulGem Property SoulGemGrand  Auto EVENT OnEffectStart(Actor akTarget, Actor caster)    if caster.getItemCount(SoulGemGrand) > 0caster.TrapSoul(GrandAvatar)GrandAvatar.Kill(caster)Debug.Notification("Grand Ether Inbued")    elseif caster.getItemCount(SoulGemGreater) > 0        ; greaterDebug.Notification("Greater Ether Imbued!")    elseif caster.getItemCount(SoulGemCommon) > 0        ; commonDebug.Notification("Common Ether Imbued!")    elseif caster.getItemCount(SoulGemLesser) > 0        ; lesserDebug.Notification("Lesser Ether Imbued!")     elseif caster.getItemCount(SoulGemPetty) > 0        ; pettyDebug.Notification("Petty Ether Imbued!")        else        ; no fillable gemsDebug.Notification("Something went wrong.")    endifendEVENT
User avatar
-__^
 
Posts: 3420
Joined: Mon Nov 20, 2006 4:48 pm

Return to V - Skyrim