Fixed missing damage from spectral arrows, slightly improved precision

This commit is contained in:
Eddoursul 2024-10-17 01:09:54 +02:00
parent 79ee9611c0
commit c0ceabbc8b
6 changed files with 17 additions and 2 deletions

BIN
Fix Arcane Arrow damage.esp Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -4795,4 +4795,5 @@ scripts\prkf__00e_fs_nq07_craftpotio_0300146e.pex
scripts\prkf__00e_craftquestpotionpe_0300146d.pex scripts\prkf__00e_craftquestpotionpe_0300146d.pex
scripts\pf_mq14_sc06_toriusstandstil_0003c597.pex scripts\pf_mq14_sc06_toriusstandstil_0003c597.pex
scripts\_00E_UpdateSpeedmult.pex scripts\_00E_UpdateSpeedmult.pex
scripts\_00E_AutolearnEffectsAlias.pex scripts\_00E_AutolearnEffectsAlias.pex
scripts\_00E_ArcaneArrowEffect.pex

View File

@ -0,0 +1,9 @@
Scriptname _00E_ArcaneArrowEffect extends activemagiceffect
Event OnEffectStart(Actor akTarget, Actor akCaster)
if akTarget
akTarget.DamageActorValue("Health", (Game.GetForm(0x14) as Actor).GetActorValue("Marksman"))
endif
EndEvent

View File

@ -50,8 +50,13 @@ Event OnPlayerBowShot(Weapon akWeapon, Ammo akAmmo, float afPower, bool abSunGaz
if PlayerREF.HasSpell(_00E_Affinity_AbArcaneArcher) if PlayerREF.HasSpell(_00E_Affinity_AbArcaneArcher)
Utility.Wait(0.03) Utility.Wait(0.03)
ObjectReference akTarget
if SKSE.GetVersion()
; Slightly improves precision
akTarget = Game.GetCurrentCrosshairRef()
endif
_00E_AltIshmartepElectroShotSound.Play(PlayerREF) _00E_AltIshmartepElectroShotSound.Play(PlayerREF)
_00E_Affinity_AbSpectralArrowSP.Cast(PlayerREF) _00E_Affinity_AbSpectralArrowSP.Cast(PlayerREF, akTarget)
EndIf EndIf
EndEvent EndEvent