From 8c999a6fd6644b946ace23c4c620dd0bede855c8 Mon Sep 17 00:00:00 2001 From: Eddoursul Date: Fri, 19 Jan 2024 02:32:53 +0100 Subject: [PATCH] Oil traps ignite from lightning spells, fixed logical mistakes in TrapExplosiveGas, preventing ignition in some cases --- Skyrim.esm | Bin 191505132 -> 191505084 bytes scripts/trapexplosivegas.pex | Bin 5557 -> 5587 bytes source/scripts/trapexplosivegas.psc | 81 ++++++++++++---------------- 3 files changed, 34 insertions(+), 47 deletions(-) diff --git a/Skyrim.esm b/Skyrim.esm index fc67541968a2438f8e14a8619511d67da5ce34c2..00fd293da18c8858d10cf3616db3831d431ce078 100644 GIT binary patch delta 14367 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 G=>Gxsf^C2R delta 14403 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 pt)-^000n~x63E2JFzoj34jRoYGqWt> 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 P5PB~WaUbhgWdHvQX-8TJ diff --git a/source/scripts/trapexplosivegas.psc b/source/scripts/trapexplosivegas.psc index 00015cd2..7199d9d4 100644 --- a/source/scripts/trapexplosivegas.psc +++ b/source/scripts/trapexplosivegas.psc @@ -30,7 +30,7 @@ bool property checkActorMagic = TRUE auto keyword property flameKeyword Auto keyword property lightningKeyword auto -bool property lightningIgnites = FALSE Auto +bool property lightningIgnites = TRUE Auto {if this is true lightning should ignite this trap default == false} @@ -57,7 +57,7 @@ auto state waiting ElseIf( flExplodesGasTrapOnHit != NONE && flExplodesGasTrapOnHit.hasForm(akProjectile) ) ; debug.Trace(self + " is exploding due to " + akProjectile) GasExplode(akAggressor) - ElseIf akWeapon.HasKeyword(flameKeyword) + ElseIf akWeapon.HasKeyword(flameKeyword) || ( lightningIgnites && akWeapon.HasKeyword(lightningKeyword) ) ; debug.Trace(self + " is exploding due to " + akWeapon + " - hasKeyword") GasExplode(akAggressor) endif @@ -97,37 +97,34 @@ auto state waiting event onTriggerEnter(objectReference triggerRef) - if (triggerRef as Actor) || !storedObjRef || storedObjRef.getBaseObject() != triggerRef.getBaseObject() - if !(triggerRef as Actor) - storedObjRef = triggerRef - endIf -; debug.Trace(self + " is testing " + triggerRef + " due to onTriggerEnter") + if ! triggerRef + return + endif + + Actor triggerActor = triggerRef as Actor + + if !triggerActor if flExplodesGasTrapOnEnter.hasForm(triggerRef.GetBaseObject()) -; debug.Trace(self + " is exploding due to " + triggerRef) GasExplode(triggerRef) - ; Checking to see if the entering ref is an actor - elseif (triggerRef as Actor) - ;check actor equipped items if necessary - if checkActorEquippedItems - checkActorWeapons(triggerRef as actor) - elseif checkActorMagic - If (triggerRef as actor).hasMagicEffectWithKeyword(flameKeyword) -; debug.Trace(self + " is exploding due to " + triggerRef + " having flame effect") - GasExplode(triggerRef) - ElseIf lightningIgnites - if (triggerRef as actor).hasMagicEffectWithKeyword(lightningKeyword) -; debug.Trace(self + " is exploding due to " + triggerRef + " having lightning effect") - GasExplode(triggerRef) - endif - endif - + endif + return + endif + + if checkActorEquippedItems && checkActorWeapons(triggerActor) + return + endif + + if checkActorMagic + If triggerActor.hasMagicEffectWithKeyword(flameKeyword) + GasExplode(triggerRef) + ElseIf lightningIgnites + if triggerActor.hasMagicEffectWithKeyword(lightningKeyword) + GasExplode(triggerRef) endif endif endif endEvent - - EndState function GasExplode(objectReference causeActor) @@ -138,41 +135,31 @@ function GasExplode(objectReference causeActor) self.damageObject(5) endFunction -function checkActorWeapons(actor triggerActor) +bool function checkActorWeapons(actor triggerActor) ; Checking if Torch is equipped if triggerActor.GetEquippedItemType(0) == 11 || triggerActor.GetEquippedItemType(1) == 11 GasExplode(triggerActor) - ; Checking if the player has weapons drawn - ElseIf triggerActor.IsWeaponDrawn() ;This should be a function check later - ;if the player has a flamable spell equiped and drawn -; debug.Trace(self + " is testing " + (triggerActor).GetEquippedSpell(0) + " due to onTriggerEnter") -; debug.Trace(self + " is testing " + (triggerActor).GetEquippedSpell(1) + " due to onTriggerEnter") - ;USKP 2.0.1 - Make sure they have something equipped before checking it. - if triggerActor.GetEquippedSpell(0) && triggerActor.GetEquippedSpell(0).hasKeyword(flameKeyword) ;check left hand - GasExplode(triggerActor) - elseif triggerActor.GetEquippedSpell(1) && flExplodesGasTrapEquippedSpell.hasForm(triggerActor.GetEquippedSpell(1) as form) ;check right hand + return true + endif + If triggerActor.IsWeaponDrawn() + if IsIgnitingSpell(triggerActor.GetEquippedSpell(1)) || IsIgnitingSpell(triggerActor.GetEquippedSpell(0)) GasExplode(triggerActor) + return true endif endif + return false endFunction +bool function IsIgnitingSpell(Spell aSpell) + return aSpell && ( aSpell.hasKeyword(flameKeyword) || ( lightningIgnites && aSpell.hasKeyword(lightningKeyword) ) || flExplodesGasTrapEquippedSpell.hasForm(aSpell as form) ) +endfunction + event onReset() self.reset() self.clearDestruction() goToState("waiting") endEvent - event OnDestructionStageChanged(int aiOldStage, int aiCurrentStage) ; debug.Trace(self + " has received destruction event #" + aiCurrentStage) endEvent - - - - - - - - - -