1
Fork 0

Compare commits

...

7 Commits

  1. BIN
      Enderal - Forgotten Stories.esm
  2. BIN
      scripts/_00E_VisionControl.pex
  3. BIN
      scripts/_00e_fs_chestopenpassphrase.pex
  4. BIN
      scripts/_00e_fs_nq02_functions.pex
  5. BIN
      scripts/_00e_mq11c_functions.pex
  6. BIN
      scripts/_00e_mq11c_oorbayabossfightscript.pex
  7. BIN
      scripts/crittermoth.pex
  8. 18
      source/scripts/_00E_VisionControl.psc
  9. 17
      source/scripts/_00e_fs_chestopenpassphrase.psc
  10. 1
      source/scripts/_00e_fs_nq02_functions.psc
  11. 23
      source/scripts/_00e_mq11c_functions.psc
  12. 25
      source/scripts/_00e_mq11c_oorbayabossfightscript.psc
  13. 2
      source/scripts/crittermoth.psc

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

@ -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

@ -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

@ -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()

@ -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()

@ -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)

@ -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

Loading…
Cancel
Save