Compare commits

...

3 Commits

9 changed files with 140 additions and 134 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -10,7 +10,21 @@ Import Utility
Auto State Marking Auto State Marking
Event OnCrosshairRefChange(ObjectReference ref) Event OnControlUp(string control, float HoldTime)
Actor rTarget = Game.GetCurrentCrosshairRef() as Actor
if ! rTarget || rTarget == Game.GetForm(0x14)
return
endif
If _00E_A2_EldritchBloodGlobal.GetValueInt() == 1
EldritchBloodEffectScript.SelectEnemy(rTarget)
EndIf
EndEvent
Event OnCrosshairRefChange(ObjectReference ref)
if lastTarget != None if lastTarget != None
lastTarget.blockActivation(false) lastTarget.blockActivation(false)
@ -21,17 +35,9 @@ Event OnCrosshairRefChange(ObjectReference ref)
ref.blockActivation(true) ref.blockActivation(true)
endif endif
If _00E_A2_EldritchBloodGlobal.GetValueInt() == 1 EndEvent
If ref as Actor && ref != Game.GetForm(0x14)
EldritchBloodEffectScript.SelectEnemy(ref as Actor)
EndIf
Else
UnregisterForCrosshairRef()
EndIf
EndEvent Event OnAnimationEvent(ObjectReference akSource, string asEventName)
Event OnAnimationEvent(ObjectReference akSource, string asEventName)
if(akSource == akSelfRef && asEventName == "weaponSwing") if(akSource == akSelfRef && asEventName == "weaponSwing")
if iAttackCounter == 0 if iAttackCounter == 0
@ -44,23 +50,19 @@ Event OnAnimationEvent(ObjectReference akSource, string asEventName)
EndIf EndIf
EndIf EndIf
EndEvent EndEvent
Event OnObjectEquipped(Form equippedObject, ObjectReference reference) Event OnObjectEquipped(Form equippedObject, ObjectReference reference)
Shout equippedShout = equippedObject as Shout if ! equippedObject as Shout
if(!equippedShout)
; Debug.Notification(sMarkingModeInterrupted) ; Debug.Notification(sMarkingModeInterrupted)
_00E_MarkingTalents_sMarkingModeInterrupted.Show() _00E_MarkingTalents_sMarkingModeInterrupted.Show()
EldritchBloodEffectScript.abort() EldritchBloodEffectScript.abort()
EndIf EndIf
EndEvent EndEvent
Event OnSpellCast(Form akSpell) Event OnSpellCast(Form akSpell)
Shout equippedShout = akSpell as Shout
if akSpell != _00E_A2_EldritchBloodSP if akSpell != _00E_A2_EldritchBloodSP
; Debug.Notification(sMarkingModeInterrupted) ; Debug.Notification(sMarkingModeInterrupted)
@ -68,15 +70,15 @@ Event OnSpellCast(Form akSpell)
EldritchBloodEffectScript.abort() EldritchBloodEffectScript.abort()
EndIf EndIf
EndEvent EndEvent
Event OnPlayerBowShot(Weapon akWeapon, Ammo akAmmo, float afPower, bool abSunGazing) Event OnPlayerBowShot(Weapon akWeapon, Ammo akAmmo, float afPower, bool abSunGazing)
; Debug.Notification(sMarkingModeInterrupted) ; Debug.Notification(sMarkingModeInterrupted)
_00E_MarkingTalents_sMarkingModeInterrupted.Show() _00E_MarkingTalents_sMarkingModeInterrupted.Show()
EldritchBloodEffectScript.abort() EldritchBloodEffectScript.abort()
EndEvent EndEvent
EndState EndState
@ -93,21 +95,28 @@ Function EnterMarkingMode(Float iReach, _00E_A2_EldritchBloodPlayerSC _00E_A2_El
SetINIFloat("fActivatePickLength:Interface", iReach) SetINIFloat("fActivatePickLength:Interface", iReach)
EldritchBloodEffectScript = _00E_A2_EldritchBloodMEScript EldritchBloodEffectScript = _00E_A2_EldritchBloodMEScript
RegisterForCrosshairRef() RegisterForCrosshairRef()
RegisterForControl("Activate")
EndFunction EndFunction
Function ExitMarkingMode() Function ExitMarkingMode()
iAttackCounter = 0
UnregisterForAllControls()
UnregisterForCrosshairRef()
UnregisterForAnimationEvent(akSelfRef, "weaponSwing")
; Restore activation reach
if fActivatePickLengthBefore <= 0
fActivatePickLengthBefore = 150.0
endif
SetINIFloat("fActivatePickLength:Interface", fActivatePickLengthBefore)
if lastTarget != None if lastTarget != None
lastTarget.blockActivation(false) lastTarget.blockActivation(false)
EndIf EndIf
lastTarget = None lastTarget = None
iAttackCounter = 0
UnregisterForAnimationEvent(akSelfRef, "weaponSwing")
UnregisterForCrosshairRef()
SetINIFloat("fActivatePickLength:Interface", 150)
EndFunction EndFunction
;===================================================================================== ;=====================================================================================

View File

@ -51,7 +51,7 @@ EndFunction
State MarkTargets State MarkTargets
Event OnBeginState() Event OnBeginState()
If _00E_SelectionTutorialShown.GetValueInt() == 0 && _00E_DisableSkillTutorials.GetValueInt() == 0 If _00E_SelectionTutorialShown.GetValueInt() == 0 && _00E_DisableSkillTutorials.GetValueInt() == 0
_00E_Tutorial_SelectionMode.Show() _00E_Tutorial_SelectionMode.Show()
@ -79,13 +79,13 @@ Event OnBeginState()
Wait(0.5) Wait(0.5)
_00E_A2_EldritchBloodSelectionHoldIMOD.ApplyCrossFade(1.5) _00E_A2_EldritchBloodSelectionHoldIMOD.ApplyCrossFade(1.5)
EndEvent EndEvent
EndState EndState
State AddEffect State AddEffect
Event OnBeginState() Event OnBeginState()
A2_EldritchBlood_Victim.GetActorReference().RemoveSpell(_00E_A2_EldritchBloodAbMarkedVictimSP) A2_EldritchBlood_Victim.GetActorReference().RemoveSpell(_00E_A2_EldritchBloodAbMarkedVictimSP)
@ -123,7 +123,7 @@ Event OnBeginState()
_00E_A2_EldritchBloodGlobal.SetValueInt(0) _00E_A2_EldritchBloodGlobal.SetValueInt(0)
Sound.StopInstance(MarkingLP) Sound.StopInstance(MarkingLP)
EndEvent EndEvent
EndState EndState
@ -267,12 +267,6 @@ Function UnmarkEnemy(Actor iVictim)
_00E_A2_GhostwalkDeselectM.Play(PlayerREF) _00E_A2_GhostwalkDeselectM.Play(PlayerREF)
MarkingRuneREF.Delete() MarkingRuneREF.Delete()
MarkingRuneREF = None MarkingRuneREF = None
; Unmark attack target too
if A2_EldritchBlood_VictimTarget.GetActorReference()
UnmarkEnemy(A2_EldritchBlood_VictimTarget.GetActorReference())
endif
Elseif iVictim.HasSpell(_00E_A2_EldritchBloodAbMarkedVictimTargetSP) Elseif iVictim.HasSpell(_00E_A2_EldritchBloodAbMarkedVictimTargetSP)
A2_EldritchBlood_VictimRune.Clear() A2_EldritchBlood_VictimRune.Clear()
A2_EldritchBlood_VictimTarget.Clear() A2_EldritchBlood_VictimTarget.Clear()

View File

@ -22,10 +22,13 @@ Event OnPlayerLoadGame()
ControlRepository = Game.GetForm(0x493C2) as _00E_EnderalControls ControlRepository = Game.GetForm(0x493C2) as _00E_EnderalControls
endif endif
; Restore INI value changed by slow time effects ; Restore INI values changed by Entropic Blood
if Utility.GetINIFloat("fInAirFallingCharGravityMult:Havok") < 1.35 if Utility.GetINIFloat("fInAirFallingCharGravityMult:Havok") < 1.0
Utility.SetINIFloat("fInAirFallingCharGravityMult:Havok", 1.35) Utility.SetINIFloat("fInAirFallingCharGravityMult:Havok", 1.35)
endif endif
if Utility.GetINIFloat("fActivatePickLength:Interface") >= 1799.0
Utility.SetINIFloat("fActivatePickLength:Interface", 150.0)
endif
EndEvent EndEvent
_00E_SkillControl function GetSkillControl() Global _00E_SkillControl function GetSkillControl() Global

Binary file not shown.