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() int nItems = RefsInvolved.GetSize()
While iIndex < nItems While iIndex < nItems
Actor VisionREF = RefsInvolved.GetAt(iIndex) as Actor Actor VisionREF = RefsInvolved.GetAt(iIndex) as Actor
if VisionREF
if VisionREF.IsDisabled() if VisionREF.IsDisabled()
VisionREF.EnableNoWait() VisionREF.EnableNoWait()
EndIf EndIf
VisionRef.SetAlpha(0.5) VisionRef.SetAlpha(0.5)
MS04MemoryFXBody01VFX.Play(VisionREF) MS04MemoryFXBody01VFX.Play(VisionREF)
endif
iIndex += 1 iIndex += 1
EndWhile EndWhile
endif endif
@ -169,8 +171,10 @@ Function VisionEffectNoTimestopStop(Formlist RefsInvolved, Formlist ActorsToFree
Int iIndex = 0 Int iIndex = 0
While iIndex < nItems While iIndex < nItems
Actor VisionREF = RefsInvolved.GetAt(iIndex) as Actor Actor VisionREF = RefsInvolved.GetAt(iIndex) as Actor
if VisionREF
MS04MemoryFXBody01VFX.Stop(VisionREF) MS04MemoryFXBody01VFX.Stop(VisionREF)
VisionRef.SetAlpha(1) VisionRef.SetAlpha(1)
endif
iIndex += 1 iIndex += 1
EndWhile EndWhile
endif endif

View File

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

View File

@ -167,6 +167,7 @@ EndFunction
Function StartDoorVision() 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) _00E_PlayerFunctions.GetVisionControl().VisionEffectNoTimestop(_00E_FS_NQ02_VisionRefs, _00E_FS_NQ02_SC04_FreezeRefs)
FS_NQ02_SC04_Vision.ForceStart() FS_NQ02_SC04_Vision.ForceStart()
_00E_FS_NQ02_TaraREF.Enable() _00E_FS_NQ02_TaraREF.Enable()

View File

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

View File

@ -15,16 +15,23 @@ Event OnInit()
EndEvent EndEvent
auto state Fighting
Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked) Event OnHit(ObjectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked)
float CurrentHealth = Self.GetActorValue("Health") If (GetActorValue("Health") < BaseHealth * 0.03) && ! Dying
Dying = True
If (CurrentHealth < (Self.GetBaseActorValue("Health")*0.03)) GotoState("Dying")
PlayDeathSequence() PlayDeathSequence()
EndIf EndIf
EndEvent EndEvent
endstate
state Dying
; do nothing
endstate
;===================================================================================== ;=====================================================================================
; FUNCTIONS ; FUNCTIONS
@ -32,9 +39,7 @@ EndEvent
Function PlayDeathSequence() Function PlayDeathSequence()
Dying = True
Self.SetGhost(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 ;; 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") ;Debug.SendAnimationEvent(Self, "combatIdleStart")
AtronachUnsummonDeathFXS.Play(Self) AtronachUnsummonDeathFXS.Play(Self)

View File

@ -326,7 +326,7 @@ ObjectReference Function PickPlant(float x, float y, float z, float searchDistan
endif endif
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] return newPlant; [USKP 2.0.1b]
endif endif
endif endif