Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Scriptname InnerPowerAnimationScript extends activemagiceffect
- event OnEffectStart(Actor akTarget, Actor akCaster)
- Debug.trace("player effect starting")
- tryToLoadDlcForms()
- isCancelled = false
- wasFirstPerson = false
- if(akTarget == Game.getPlayer() && checkDlcLocations() && checkMiraak())
- makePlayerPlayTheAnim(akTarget)
- else
- self.dispel()
- endif
- endevent
- function makePlayerPlayTheAnim(Actor player)
- Utility.wait(preAnimationWait)
- recheckMiraakAndMaybeCancel()
- if(isCancelled)
- return
- endif
- Debug.trace("will play the anim")
- ; Disable movement and combat
- Game.DisablePlayerControls()
- wasFirstPerson = player.GetAnimationVariableBool("IsFirstPerson")
- Game.ForceThirdPerson()
- if(player.isWeaponDrawn())
- player.playIdle(DefaultSheathe)
- Utility.wait(weaponSheatheTime)
- endif
- if(isCancelled)
- return
- endif
- ;THIS IS WHERE THE DISMOUNT SCRIPT STARTS
- Debug.trace("player dismount effect starting")
- if(akTarget == Game.getPlayer() && checkDlcLocations() && checkMiraak())
- if(akTarget.isOnMount())
- if(akTarget.dismount())
- Utility.wait(4.0) ; wait for them to dismount
- else ; dismounting failed
- self.dispel()
- return
- endif
- endif
- endif
- ;THIS IS WHERE THE DISMOUNT SCRIPT ENDS
- player.playIdle(RitualSpellStart)
- Utility.wait(spellHoldingTime)
- recheckMiraakAndMaybeCancel()
- if(isCancelled)
- return
- endif
- player.playIdle(RitualSpellRelease)
- Utility.wait(spellReleaseTime)
- ; spell
- if(SpellToAdd)
- SpellToAdd.cast(player)
- endif
- Utility.wait(afterEffectTime)
- ; Enable all controls
- Game.EnablePlayerControls()
- if(wasFirstPerson)
- Game.ForceFirstPerson()
- endif
- self.dispel()
- endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement