Scriptname _00E_A2_StarlingdummySpiderSC extends ReferenceAlias ;===================================================================================== ; FUNCTIONS ;===================================================================================== Function Detonate() {Called from _00E_A2_StarlingdummyDetSC} Selfactor = self.GetActorReference() PlaceDebris() Selfactor.PlaceAtMe(_00E_A2_StarlingdummyDetExp, 1) Selfactor.PlaceAtMe(_00E_A2_StarlingdummyExplosioNoEffects, 1) PlaceGas() _00E_A2_StarlingdummySteamReleaseM.Play(Game.GetPlayer()) SelfActor.Disable() ClearAliases() Game.GetPlayer().DispelSpell(_00E_A2_StarlingdummySP) Utility.Wait(3) CleanUp() Utility.Wait(15) DeletePoisonGas() EndFunction Function PlaceDebris() ; they don't need to be cleaned up in this script, ; they'll get cleaned up in _00E_A2_StarlingDummySpiderCleanupSC OnUnload() SelfActor.PlaceAtMe(DwarvenScrapMetalNoValue, 1) SelfActor.PlaceAtMe(DwarvenScrapBentNoValue, 1) SelfActor.PlaceAtMe(DwarvenScrapBentNoValue, 1) SelfActor.PlaceAtMe(DwarvenScrapLever02NoValue, 1) SelfActor.PlaceAtMe(DwarvenScrapLeverNoValue, 1) EndFunction Function PlaceGas() PlaceMarker01 = SelfActor.PlaceAtMe(XMarker) PlaceMarker02 = SelfActor.PlaceAtMe(XMarker) PlaceMarker03 = SelfActor.PlaceAtMe(XMarker) PlaceMarker01.MoveTo(SelfActor, 0.0, 0.0, 200.0) PlaceMarker02.MoveTo(SelfActor, 100, 100, 200.0) PlaceMarker03.MoveTo(SelfActor, -100, -100, 200.0) PoisonGas01 = PlaceMarker01.PlaceAtMe(_00E_A2_Starlingdummy_PoisonGas, 1) PoisonLight = PlaceMarker01.PlaceAtMe(_00E_A2_StarlingdummyPoisonLight, 1) PoisonGas02 = PlaceMarker02.PlaceAtMe(_00E_A2_Starlingdummy_PoisonGas, 1) PoisonGas03 = PlaceMarker03.PlaceAtMe(_00E_A2_Starlingdummy_PoisonGas, 1) PoisonGas01.playAnimation("playAnim02") PoisonGas02.playAnimation("playAnim02") PoisonGas03.playAnimation("playAnim02") EndFunction Function CleanUp() PlaceMarker01.Delete() PlaceMarker02.Delete() PlaceMarker03.Delete() EndFunction Function DeletePoisonGas() PoisonGas01.playAnimation("playAnim01") PoisonGas02.playAnimation("playAnim01") PoisonGas03.playAnimation("playAnim01") Utility.Wait(2) PoisonGas01.Delete() PoisonGas02.Delete() PoisonGas03.Delete() PoisonLight.Disable(true) Utility.Wait(1.5) Poisonlight.Delete() EndFunction Function ClearAliases() Int iAliasIndex = VictimsArray.Length while iAliasIndex > 0 iAliasIndex -= 1 AliasToClear = VictimsArray[iAliasIndex] AliasToClear.Clear() EndWhile A2_Starlingdummy_SpiderAlias.Clear() EndFunction ;===================================================================================== ; PROPERTIES ;===================================================================================== Actor SelfActor ReferenceAlias AliasToClear ObjectReference PoisonGas01 ObjectReference PoisonGas02 ObjectReference PoisonGas03 ObjectReference PlaceMarker01 ObjectReference PlaceMarker02 ObjectReference PlaceMarker03 ObjectReference Poisonlight Spell Property _00E_A2_StarlingdummySP Auto Explosion Property _00E_A2_StarlingdummyDetExp Auto Explosion Property _00E_A2_StarlingdummyExplosioNoEffects Auto Sound Property _00E_A2_StarlingdummySteamReleaseM Auto Activator Property _00E_A2_Starlingdummy_PoisonGas Auto ReferenceAlias[] Property VictimsArray Auto ReferenceAlias Property A2_Starlingdummy_SpiderAlias Auto Static Property XMarker Auto Light Property _00E_A2_StarlingdummyPoisonLight Auto MiscObject Property DwarvenScrapMetalNoValue Auto MiscObject Property DwarvenScrapLever02NoValue Auto MiscObject Property DwarvenScrapLeverNoValue Auto MiscObject Property DwarvenScrapBentNoValue Auto