Compare commits

...

7 Commits

13 changed files with 49 additions and 37 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -122,11 +122,13 @@ Function VisionEffectNoTimestop(Formlist RefsInvolved, Formlist ActorsToFreeze =
int nItems = RefsInvolved.GetSize()
While iIndex < nItems
Actor VisionREF = RefsInvolved.GetAt(iIndex) as Actor
if VisionREF.IsDisabled()
VisionREF.EnableNoWait()
EndIf
VisionRef.SetAlpha(0.5)
MS04MemoryFXBody01VFX.Play(VisionREF)
if VisionREF
if VisionREF.IsDisabled()
VisionREF.EnableNoWait()
EndIf
VisionRef.SetAlpha(0.5)
MS04MemoryFXBody01VFX.Play(VisionREF)
endif
iIndex += 1
EndWhile
endif
@ -169,8 +171,10 @@ Function VisionEffectNoTimestopStop(Formlist RefsInvolved, Formlist ActorsToFree
Int iIndex = 0
While iIndex < nItems
Actor VisionREF = RefsInvolved.GetAt(iIndex) as Actor
MS04MemoryFXBody01VFX.Stop(VisionREF)
VisionRef.SetAlpha(1)
if VisionREF
MS04MemoryFXBody01VFX.Stop(VisionREF)
VisionRef.SetAlpha(1)
endif
iIndex += 1
EndWhile
endif

View File

@ -2,22 +2,23 @@ Scriptname _00E_FS_ChestOpenPassphrase extends ObjectReference
Event OnInit()
Self.BlockActivation(True)
BlockActivation(True)
Lock(100)
EndEvent
Event OnActivate(ObjectReference akActionRef)
if Self.IsActivationBlocked()
if CheckForPassphrase()
Self.Lock(False)
Self.BlockActivation(False)
Self.Activate(akActionRef)
if ! EnderalFunctions.TextInputEnabled() || ! IsLocked()
Activate(akActionRef, true)
elseif CheckForPassphrase()
Lock(False)
BlockActivation(False)
Activate(akActionRef)
else
_00E_MQ07a_sRChainNothingHappens.Show()
endif
endif
EndEvent
@ -34,4 +35,4 @@ bool Function CheckForPassphrase()
EndFunction
Message Property _00E_MQ07a_sRChainNothingHappens Auto
Message Property _00E_MQ07a_sRChainNothingHappens Auto

View File

@ -167,6 +167,7 @@ EndFunction
Function StartDoorVision()
; TODO: Fix _00E_FS_NQ02_VisionRefs filled with NPC_ forms and doing nothing
_00E_PlayerFunctions.GetVisionControl().VisionEffectNoTimestop(_00E_FS_NQ02_VisionRefs, _00E_FS_NQ02_SC04_FreezeRefs)
FS_NQ02_SC04_Vision.ForceStart()
_00E_FS_NQ02_TaraREF.Enable()

View File

@ -386,7 +386,7 @@ Function RyneusTransforms()
Utility.Wait(2)
RyneusActor.Say(MQ11c_D12_RyneusTransformTopic02)
Wait(2)
if (_00E_MQ11c_RyneusPeacefulSolution.GetValueInt() == 0)
AtronachUnsummonDeathFXS.Play(RyneusActor)
Wait(3.6)
@ -396,25 +396,26 @@ Function RyneusTransforms()
EnchPurpleFXShader.Stop(RyneusActor)
_00E_MQ11c_FXRyneusParticleAttach.Stop(RyneusActor)
_00E_MQ11c_RyneusChestVFX.Stop(RyneusActor)
RyneusActor.KillEssential(RyneusActor)
RyneusActor.Disable()
MQ11c_RyneusSoundBoxREF.RyneusDead = true ; disable coughing
RyneusOorbaya = RyneusActor.PlaceActorAtMe(_30E_MQ11c_RyneusOorbaya, 1)
RyneusOorbaya.SetAlpha(0.0)
RyneusOorbaya.MoveTo(MQ11c_SC10_OorbayaSpawnMarker)
RyneusOorbaya.SetAlpha(0.90)
ElseIf (_00E_MQ11c_RyneusPeacefulSolution.GetValueInt() == 1)
Wait(3.6)
Game.ShakeCamera(afStrength = 1)
MQ11c_SC10_RyneusTransformOriginMarker.PushActorAway(RyneusActor, 4.0)
RyneusActor.KillEssential(RyneusActor)
EnchPurpleFXShader.Stop(RyneusActor)
RyneusActor.Disable()
_00E_MQ11c_FXRyneusParticleAttach.Stop(RyneusActor)
_00E_MQ11c_RyneusChestVFX.Stop(RyneusActor)
RyneusActor.Disable()
RyneusActor.PlaceAtMe(_00E_MQ11c_RyneusTransformExplosion, 1)
RyneusOorbaya = RyneusActor.PlaceActorAtMe(_30E_MQ11c_RyneusOorbayaInkarnation, 1)
RyneusOorbaya.SetAlpha(0.0)
RyneusOorbaya.MoveTo(MQ11c_SC10_OorbayaSpawnMarker)
RyneusOorbaya.SetAlpha(0.90)
EndIf
RyneusOorbaya.SetAlpha(0.0)
RyneusOorbaya.MoveTo(MQ11c_SC10_OorbayaSpawnMarker)
RyneusOorbaya.SetAlpha(0.90)
Debug.SendAnimationEvent(PlayerREF, "StaggerPlayer")
Wait(0.5)
@ -453,7 +454,7 @@ Function CrashDownEverything()
Wait(2.3)
QSTTG09NocturnalFloorRumble.Play(PlayerREF)
Game.ShakeCamera(afstrength = 0.5)
Debug.SetGodMode(True)
PlayerREF.SetGhost(True)
MQ11c_SC10_RockStartMarker01.Activate(MQ11c_SC10_RockStartMarker01)
_00E_MQ11c_RyneusTransformSoundM.Play(PlayerREF)
MQ11c_SC10_RockStartMarker02.Activate(MQ11c_SC10_RockStartMarker02)
@ -512,7 +513,7 @@ Function SetUpRealSilvergrove()
_00E_SilenceAbruptHighPriority.Add()
FadeToWhiteHoldImod.PopTo(FadeToWhiteBackImod)
(Alias_Player as _00E_MQ11c_PlayerAliasScript).UpdateWeatherTrackingState()
Debug.SetGodMode(False)
PlayerREF.SetGhost(false)
EndFunction
@ -649,7 +650,7 @@ Function PostTransformCleanup()
bPostTransformCleanupDone = True
Debug.SetGodMode(False)
PlayerREF.SetGhost(false)
MUSTavernSILENCE.Remove()
_00E_MQ11c_SilberhainRealInterior.Remove()

View File

@ -15,16 +15,23 @@ Event OnInit()
EndEvent
Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked)
float CurrentHealth = Self.GetActorValue("Health")
auto state Fighting
If (CurrentHealth < (Self.GetBaseActorValue("Health")*0.03))
PlayDeathSequence()
EndIf
Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked)
If (GetActorValue("Health") < BaseHealth * 0.03) && ! Dying
Dying = True
GotoState("Dying")
PlayDeathSequence()
EndIf
EndEvent
EndEvent
endstate
state Dying
; do nothing
endstate
;=====================================================================================
; FUNCTIONS
@ -32,9 +39,7 @@ EndEvent
Function PlayDeathSequence()
Dying = True
Self.SetGhost(True)
UnregisterForUpdate()
;; Gavrant: the code below is commented out because combatIdleStart breaks something in AI and the oorbaya stops making attacks in a fight
;Debug.SendAnimationEvent(Self, "combatIdleStart")
AtronachUnsummonDeathFXS.Play(Self)
@ -54,7 +59,7 @@ Function PlayDeathSequence()
utility.wait(0.5)
AtronachUnsummonDeathFXS.Stop(Self)
_00E_FXOorbayaTrailEffect2.Stop(Self)
Self.SetAlpha (0.0,True)
Self.SetAlpha(0.0, True)
Self.SetCriticalStage(Self.CritStage_DisintegrateEnd)
Wait(1.5)
Self.KillEssential(PlayerREF)

View File

@ -326,7 +326,7 @@ ObjectReference Function PickPlant(float x, float y, float z, float searchDistan
endif
endif
if ! bSKSE || (!newPlant.IsHarvested() || IgnoreHarvestedPlants.Find(plantForm) == -1)
if ! bSKSE || !newPlant.IsHarvested() || IgnoreHarvestedPlants == None || IgnoreHarvestedPlants.Find(plantForm) == -1
return newPlant; [USKP 2.0.1b]
endif
endif