TES4HEDR ?CNAMSeneX ProductionsSNAMA strange fellow by the name of Celed Pivot has been frequenting the Two Sisters Lodge in Skingrad, asking about any news of his vanished friends.MAST Oblivion.esmDATAGRUPJGLOB AGLOB"kEDID ScampFleedFNAMsFLTVGRUPJFACT AFACTH?FEDIDArcaneUniversityCOPY0000FULLArcane UniversityDATACNAM?FACT?oEDID YumeFactionXNAMnXNAModDATACNAM?FACTSEDIDSnEXASSFULL"Associated Sojourners of SkingradDATACNAM?RNAMMNAMMemberFNAMMemberRNAMMNAM(Guildmaster, and sole surviving member.FNAM(Guildmaster, and sole surviving member.FACTS)vEDIDSnEXKeeperFactionXNAMƪdXNAMXNAM)vdDATACNAM?FACT EDIDSnEXShadowFactionXNAMƪdXNAMXNAMoXNAMSXNAM)vdXNAM dDATACNAM?RNAMFACT7TEDIDSnEXBanditFactionXNAMTdDATACNAM?FACTAƪEDIDSnEXDisembodiedVoiceFactionXNAMƪdDATACNAM?GRUP SOUN ASOUNCL=EDIDSnEXSoundEffect1FNAMfx\npc\ghost\aware\SNDX 1SOUNJgEDIDSnEXStoneSlowFNAMFX\Traps\TRP_StoneSlow_LP.wavSNDX SOUNLEDIDSnEXGearsFastLPFNAMFX\Traps\TRP_GearsFast_LP.wavSNDX #SOUNREDIDSnEXVoicesinHeadFNAM#fx\ambient\amb_voicesinhead_lp.wavSNDX S(,SOUNdEDIDSnEXGreatHallFNAM8fx\ambient\questspecific\amb_darkbrotherhooddoor_lp.wavSNDX gSOUNDJ=EDIDSnEXSoundEffect2FNAMfx\npc\ghost\attack\SNDX SOUNMrEDIDSnEXAMBBreathCrystalFNAMfx\ambient\amb_breath.wavSNDX [SOUNLEDID SnEXChaseFNAM$fx\fiveblindmice\the_pursuit_30.wavSNDX ?@SOUNXvEDIDSnEXKeeperTaunt01FNAM(fx\fiveblindmice\snexkeeperbattle01.wavSNDX @SOUNXvEDIDSnEXKeeperTaunt02FNAM(fx\fiveblindmice\snexkeeperbattle02.wavSNDX @SOUNQvEDIDSnEXKeeperHissFNAM$fx\fiveblindmice\snexkeeperhiss.wavSNDX @SOUNR`EDIDSnEXKeeperMusicFNAM$fx\fiveblindmice\intensity_full.wavSNDX ?PSOUNd;{EDIDAMBEnchantmentBreakFNAM2fx\ambient\questspecific\amb_enchantmentbreak.wavSNDX SOUNeEDIDSnEXEnchantmentBreakFNAM2fx\ambient\questspecific\amb_enchantmentbreak.wavSNDX @SOUN]K=EDIDSnEXSoundEffect3FNAM.fx\ambient\questspecific\amb_femalescream.wavSNDX @iSOUNO-EDIDSnEXYumeMusicFNAM#fx\fiveblindmice\on_track_full.wavSNDX ?PSOUNP8EDIDSnEXYumeTaunt01FNAM"fx\fiveblindmice\yumecombat01.wavSNDX @SOUNP9EDIDSnEXYumeTaunt02FNAM"fx\fiveblindmice\yumecombat02.wavSNDX @SOUNP:EDIDSnEXYumeTaunt03FNAM"fx\fiveblindmice\yumecombat03.wavSNDX @SOUNP;EDIDSnEXYumeTaunt04FNAM"fx\fiveblindmice\yumecombat04.wavSNDX @SOUNz- EDIDSnEXTorrinMonologueFNAMHfx\fiveblindmice\snexfiveblindmice01_snexcintorrinmono01_00010c30_1.wavSNDX @SOUNQ^EDIDSnEXFallingMusicFNAM"fx\fiveblindmice\intensity_30.wavSNDX @SOUNSeEDIDSnEXEnterHallFNAM'fx\fiveblindmice\snexkeeperwelcome.wavSNDX @SOUNNeEDID SnEXNoticeFNAM%fx\fiveblindmice\keeperabbherant.wavSNDX @SOUNSeEDIDSnEXKeeperLaughFNAM%fx\fiveblindmice\snexkeeperlaugh.wavSNDX @SOUNWeEDID SnEXFacelessFNAM,fx\fiveblindmice\snexkeeperfacelesssong.wavSNDX @GRUP8SCPT ASCPTEDIDAncontarScriptSCHR`SCDA` o X; rn* 0 == rn*& rX/r 0 == X:r 50 < &&9 rnF  f 0 >f f X  -   X:r 20 == s 3 < &&! s 2 < Xr 1000 < &&f X4rrf f 20 + s s 1 +  s 2 ==^SCTXscn AncontarScript ; QUESTS: ; MS47 float timer short count begin OnDeath if getstagedone ms47 42 == 0 additem MS47ReverseInvisibilityScroll 1 elseif player.getitemcount MS47ReverseInvisibilityScroll == 0 && getstage MS47 < 50 setstage MS47 70 endif end begin gamemode if timer > 0 set timer to timer - getsecondspassed else if getstage ms47 == 20 && count < 3 if count < 2 && getdistance player < 1000 ; message "DEBUG: MS47 Ancotar speaking, count=%.0f", count set timer to sayto player GREETING set timer to timer + 20 ; 20 seconds between his speaking set count to count + 1 endif if count == 2 evaluatepackage endif endif endif endSLSDSCVRtimerSLSDSCVRcountSCROkSCROSCROSCROSCPT|WUEDIDAndragilScriptSCHRSCDA  s 1 ==rrs 2  s 2 ==  f 40 <f f X  +s 3Vr C)% X:r 10 >= X:r 100 < &&9 rnSCTXScriptName AndragilScript ;controls combat situation for quest TrainingBlock short combatvar float timer Begin Gamemode if ( Combatvar == 1 ) ; if ( Player.GetWeaponAnimType == 0 ) SetCombatStyle AndragilTraining startcombat Player set combatvar to 2 ; else ; SetCombatStyle ; set Combatvar to 5 ;if player has weapon equipped at the beginning, don't even start combat ; endif elseif ( Combatvar == 2 ) ; if ( Player.GetWeaponAnimType != 0 ) ; stopcombat Player ; set Combatvar to 5 ;flag for player having equipped weapon during combat; this resets the whole thing ; SetCombatStyle ; set timer to 0 ; endif if ( timer < 40 ) set timer to ( timer + GetSecondsPassed ) else stopcombat Player set Combatvar to 3 SetCombatStyle Startconversation player endif endif End Begin OnDeath if ( GetStage TrainingBlock >= 10 ) && ( GetStage TrainingBlock < 100 ) SetStage TrainingBlock 200 endif EndSLSD`-SCVR combatvarSLSD sSCVRtimerSCROYUSCROSCRO0SCPT MEDIDAngaTrigPressurePlate01SCRIPTSCHRlSCDAl^  s 0 == Xr 64 < n ns 1SCTXscn AngaTrigPressurePlate01SCRIPT ; Activates trap linked as Parent short activated begin gameMode if activated == 0 if getDistance player < 64 playGroup forward 1 AngaSecretWall02REF.playgroup forward 0 set activated to 1 endif endif end SLSDSCVR activatedSCROHSCROSCPTwKEDIDAngaWallSwitch01SCRIPTSCHRRSCDARB  s 0 == n ns 1SCTXscn AngaWallSwitch01SCRIPT short open begin onActivate if open == 0 playgroup forward 1 AngaSecretWall01REF.playgroup forward 0 set open to 1 endif endSLSD XSCVRopenSCROGSCPT5EDIDAntusOdiilScriptSCHRSCDA  s 0 ==^s 1  Xr 700 >  s 0 == Xr 100 <^s 1  s 1 == Xr 100 <^s 0SCTXScriptname AntusOdiilScript ;Handles simple 'pacing' movement during stage 10 of quest, while he waits for player short position short doonce ;Position is used to check distance to the two Xmarkers marking the edge of Antus' patrol ;Doonce used to initiate packages begin gamemode ;Give Antus a starting package, so he'll go to one of the points and start the patrol ;Needed when conversation stops him outside of range of either of the points ;All scripted conversations will set doonce to 0 again so this package runs if ( doonce == 0 ) EvaluatePackage set doonce to 1 endif ;Have Antus Evaluate AI Package when within range of first marker ;pause this scenario when the guys are talking if ( GetDistance player > 700 ) if ( position == 0 ) if ( GetDistance MS18AntusPatrolMarker1 < 100 ) EvaluatePackage set position to 1 endif elseif ( position == 1 ) if ( GetDistance MS18AntusPatrolMarker2 < 100 ) EvaluatePackage set position to 0 endif endif endif EndSLSDSCVR positionSLSDSCVRdoonceSCROSCRO5SCRO5SCPT&EDIDAnvilCastleGuardScriptSCHRmSCDAm Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rnFSCTX ScriptName AnvilCastleGuardScript ; the OnDeath script is on many guards in Castle Anvil Begin OnDeath Player If GetStage TG07Lex >= 10 && GetStage TG07Lex < 100 Set TG07Lex.TotalDead to TG07Lex.TotalDead + 1 SetStage TG07BloodPrice 70 EndIf End SCROSCRO4cSCRO SCPT;~EDIDAnvilCastleJailorScriptSCHR/SCDA/ Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rnF r rs 0 r rs 0v# rs 1 == XGr 1 == &&  f 0 <=f 64rrf f X  -SCTXScriptName AnvilCastleJailorScript Float KeepTime ; the OnDeath script is on many guards in Castle Anvil Begin OnDeath Player If GetStage TG07Lex >= 10 && GetStage TG07Lex < 100 Set TG07Lex.TotalDead to TG07Lex.TotalDead + 1 SetStage TG07BloodPrice 70 EndIf End Begin OnPackageEnd AnvilPrisonFollowPCDay Set NQDGuard.AnvilDoorOpen to 0 End Begin OnPackageEnd AnvilPrisonFollowPCNight Set NQDGuard.AnvilDoorOpen to 0 End Begin GameMode If NQDGuard.SayWarnings == 1 && GetInFaction Jailor == 1 If KeepTime <= 0 Set KeepTime to 6 SayTo Player NQDGuardWarning Else Set KeepTime to KeepTime - GetSecondsPassed EndIf EndIf End SLSD< SCVR KeepTimeSCROSCRO4cSCRO SCROSCROSCRO' SCRORSCRO2SCPT[bEDID&AnvilCastleSecretDoorLever01REFSCRIPTSCHR*SCDA* s 0 == X( 0 == && s 0 == rX( 0 == &&s 1" n ns 1 s 0 == rX( 0 == && n ns 02 X( 0 == s 1 == &&s 0SCTXyscriptName AnvilCastleSecretDoorLever01REFSCRIPT short open short busy begin onActivate if open == 0 && isAnimPlaying == 0 if busy == 0 && AnvilCastleSecretDoor01REF.isAnimPlaying == 0 set busy to 1 AnvilSecretBlack01.disable playgroup forward 1 AnvilCastleSecretDoor01REF.playgroup forward 1 set open to 1 endif else if busy == 0 && AnvilCastleSecretDoor01REF.isAnimPlaying == 0 playgroup backward 1 AnvilCastleSecretDoor01REF.playgroup backward 1 set open to 0 endif endif end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end SLSDnSCVRopenSLSDset opeSCVRbusySCROSCROSCPTs EDID#AnvilCastleSecretDoorLever02SCRIPTSCHR5SCDA5 s 0 == X( 0 == && s 0 == rX( 0 == &&s 1" n ns 1 s 0 == rX( 0 == &&s 1 n ns 02 X( 0 == s 1 == &&s 0SCTXscriptName AnvilCastleSecretDoorLever02SCRIPT short open short busy begin onActivate if open == 0 && isAnimPlaying == 0 if busy == 0 && AnvilCastleSecretDoorREF02.isAnimPlaying == 0 set busy to 1 CastleSecretBlack02.disable playgroup forward 1 AnvilCastleSecretDoorREF02.playgroup forward 1 set open to 1 endif else if busy == 0 && AnvilCastleSecretDoorREF02.isAnimPlaying == 0 set busy to 1 playgroup backward 1 AnvilCastleSecretDoorREF02.playgroup backward 1 set open to 0 endif endif end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end SLSDp forwaSCVRopenSLSDlaygrouSCVRbusySCROSCROSCPTscEDID#AnvilCastleSecretDoorLever03SCRIPTSCHR5SCDA5 s 0 == X( 0 == && s 0 == rX( 0 == &&s 1" n ns 1 s 0 == rX( 0 == &&s 1 n ns 02 X( 0 == s 1 == &&s 0SCTXscriptName AnvilCastleSecretDoorLever03SCRIPT short open short busy begin onActivate if open == 0 && isAnimPlaying == 0 if busy == 0 && AnvilCastleSecretDoorRef03.isAnimPlaying == 0 set busy to 1 CastleSecretBlack03.disable playgroup forward 1 AnvilCastleSecretDoorRef03.playgroup forward 1 set open to 1 endif else if busy == 0 && AnvilCastleSecretDoorRef03.isAnimPlaying == 0 set busy to 1 playgroup backward 1 AnvilCastleSecretDoorRef03.playgroup backward 1 set open to 0 endif endif end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end SLSDSCVRopenSLSDSCVRbusySCROSCRO<SCPTwdEDID#AnvilCastleSecretDoorLever04SCRIPTSCHR5SCDA5 s 0 == X( 0 == && s 0 == rX( 0 == &&s 1" n ns 1 s 0 == rX( 0 == &&s 1 n ns 02 X( 0 == s 1 == &&s 0SCTXscriptName AnvilCastleSecretDoorLever04SCRIPT short open short busy begin onActivate if open == 0 && isAnimPlaying == 0 if busy == 0 && AnvilCastleSecretDoorRef04.isAnimPlaying == 0 set busy to 1 CastleSecretBlack04.disable playgroup forward 1 AnvilCastleSecretDoorRef04.playgroup forward 1 set open to 1 endif else if busy == 0 && AnvilCastleSecretDoorRef04.isAnimPlaying == 0 set busy to 1 playgroup backward 1 AnvilCastleSecretDoorRef04.playgroup backward 1 set open to 0 endif endif end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end SLSDp forwaSCVRopenSLSDlaygrouSCVRbusySCROSCRO;SCPTEDIDAnvilLighthouseActivatorSCHRSCDA Xir 1 == rX# 0 =="! Xir 1 == G 12 <="!SCTXscn AnvilLighthouseActivator begin OnActivate if IsActionRef player == 1 if AnvilLighthouseFire.GetDisabled == 0 AnvilLighthouseFire.disable else AnvilLighthouseFire.enable endif elseif IsActionRef UlfgarFogEyeRef == 1 ; message "DEBUG: Ulfgar activating lighthouse bowl" ; turn on if evening, turn off if morning if gamehour <= 12 AnvilLighthouseFire.disable else AnvilLighthouseFire.enable endif endif end SCROvSCROSCROSCRO8SCPTCOEDIDAnvilMGPetImpScriptSCHR2SCDA2 #r %rSCTXScriptName AnvilMGPetImpScript begin ScriptEffectStart PlayMagicShaderVisuals creatureAnvilMGPetImp end begin ScriptEffectFinish StopMagicShaderVisuals creatureAnvilMGPetImp end SCROOSCPTcEDIDAnvilNQDScriptSCHRSCDASCTX~scn AnvilNQDScript short maenlornVAR short WilburVAR short NorbertVAR short AzzanVAR short RhanoVAR short LlensiVAR short CarahilVAR short FelenVAR short MarcVAR short AndrusVAR short MirabelleVAR short HaulsVAR short HeinrichVAR short PinarusVAR short NewheimVAR short ArvenaVAR short QuillVAR short ClesaVAR short HuurwenVAR short VigdisVAR short RufriusVARSLSDSCVR maenlornVARSLSDSCVR WilburVARSLSDSCVR NorbertVARSLSDSCVR AzzanVARSLSDSCVR RhanoVARSLSDSCVR LlensiVARSLSDSCVR CarahilVARSLSDSCVR FelenVARSLSD SCVRMarcVARSLSD SCVR AndrusVARSLSD SCVR MirabelleVARSLSD SCVR HaulsVARSLSD SCVR HeinrichVARSLSDSCVR PinarusVARSLSDSCVR NewheimVARSLSDSCVR ArvenaVARSLSDSCVR QuillVARSLSDSCVR ClesaVARSLSDSCVR HuurwenVARSLSDSCVR VigdisVARSLSDSCVR RufriusVARSCPT*EDIDAnvilPrisonDoorScriptSCHRESCDAE7 rs 0 X 0 == rs 1SCTXScriptName AnvilPrisonDoorScript Begin GameMode Set NQDGuard.AnvilDoorOpen to 0 If GetLocked == 0 Set NQDGuard.AnvilDoorOpen to 1 EndIf EndSCROSCPTEDIDArcaneUApprentice10ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXGScriptname ArcaneUApprentice10Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student10Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student10Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPT~EDIDArcaneUApprentice1ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1SCTXtScriptname ArcaneUApprentice1Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student1Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student1Var > 0 ) set MageConvSystem.clear to 1 endif EndSCROSCRO"SCROuSCPTEDIDArcaneUApprentice2ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTX@Scriptname ArcaneUApprentice2Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student2Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student2Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice3ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXDScriptname ArcaneUApprentice3Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student3Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student3Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice4ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXBScriptname ArcaneUApprentice4Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student4Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student4Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice5ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXDScriptname ArcaneUApprentice5Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student5Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student5Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice6ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXDScriptname ArcaneUApprentice6Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student6Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student6Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice7ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXDScriptname ArcaneUApprentice7Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student7Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student7Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice8ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXDScriptname ArcaneUApprentice8Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student8Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student8Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUApprentice9ScriptSCHRSCDAd rXIr 9 < rs 0 == rs 1 == rs 1 ) rs 0 > rs  1 Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXDScriptname ArcaneUApprentice9Script Begin Gamemode if ( Player.GetFactionRank MagesGuild < 9 ) return endif if ( MageConvSystem.ArchFollower == 0 ) if ( MageConvSystem.Student9Var == 1 ) set MageConvSystem.ArchFollower to 1 endif endif End Begin OnDeath if ( MageConvSystem.Student9Var > 0 ) set MageConvSystem.clear to 1 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO"SCROuSCRO2cSCRO SCPTEDIDArcaneUGateScriptSCHR SCDA  Xir 1 ==)% rXIr 1 < Xr 1 == ||;3No matter how hard you try, the gate will not move. ` X 1 ==  f 5 <f f X  +nf 0SCTXScriptName ArcaneUGateScript float timer Begin OnActivate if ( isActionref player == 1 ) if ( Player.GetFactionRank MagesGuild < 1 ) || ( GetPCExpelled MagesGuild == 1 ) Messagebox "No matter how hard you try, the gate will not move." else Activate endif else return endif End Begin Gamemode if ( GetOpenState == 1 ) if ( timer < 5 ) set timer to ( timer + GetSecondsPassed ) else SetOpenState 0 set timer to 0 endif endif End SLSD e[SCVRtimerSCROSCRO"SCPT1l EDIDArcaneUniversityTeleportSCRIPTSCHRRSCDARB f X f X#r#r SCTXscn ArcaneUniversityTeleportSCRIPT ref mySelf ref targetref begin onActivate set targetref to GetActionRef set mySelf to getSelf targetref.pms effectshockshield mySelf.pms effectshockshield activate end SLSDSCVRmySelfSLSD87SCVR targetrefSCRVSCRVSCRO^SCPTI 0EDIDArcaneUScholarScriptSCHR SCDA  s 0 == f Xs 1 Xr 50 <  s 1 ==\r  f 3 <f f X  +  rs 1 ==Vrr rs 2 ==Vrr rs 3 ==Vrr rs 4 ==Vrr rs 5 ==Vrr s 2]  G 12 >  G 15 <s 1 rs 0f 0 Yr ($ X:r 15 >= X:r 60 < &&r s r s 1 +9 r n2SCTXScriptName ArcaneUScholarScript ref self short doonce float timer Begin Gamemode ;Initialize reference variable if ( doonce == 0 ) set self to GetSelf set doonce to 1 endif ;When NPC is at the mark, pick a lecture based on lecturevar in quest script, and start him talking to himself if ( GetDistance ICArcaneULectureMark < 50 ) if ( doonce == 1 ) look ArcaneULectern if ( timer < 3 ) set timer to ( timer + GetSecondsPassed ) else ; stoplook if ( MageConvSystem.lecturevar == 1 ) StartConversation Self ArcaneULecture1 elseif ( MageConvSystem.lecturevar == 2 ) StartConversation Self ArcaneULecture2 elseif ( MageConvSystem.lecturevar == 3 ) StartConversation Self ArcaneULecture3 elseif ( MageConvSystem.lecturevar == 4 ) StartConversation Self ArcaneULecture4 elseif ( MageConvSystem.lecturevar == 5 ) StartConversation Self ArcaneULecture5 endif set doonce to 2 stoplook endif endif endif ;between lectures, set doonce to 1 so it'll run through conversation block again at next lecture ;reset conv variable in quest script so the conversation will update it if ( GameHour > 12 ) if ( GameHour < 15 ) set doonce to 1 set MageConvSystem.conv to 0 set timer to 0 endif endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SLSDB?>SCVRselfSLSDCRiDSCVRdoonceSLSDCRiDSCVRtimerSCRVSCROSCROSCROuSCRO"SCRO!SCRO SCROSCROSCRO8SCROSCRO2cSCRO SCPTu1EDIDARCAVEINTRAPSCRIPT01SCHR SCDA s 0 ==f 20 f 300 f  1.5 f 150s  0 n*s 1f 6nD z@$ s 1 == s 0 == && f 5 < &&s 1 f X f X  rn s 1 == f 0 <= &&f 0f 0s 2  f 0 >f f X  -"Fs 0n*SCTXscriptName ARCAVEINTRAPSCRIPT01 ; On activation rocks will come tumbling down and do some damage ; Damage stops after 6 seconds short triggered float timer short next ref mySelf ref myParent float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if triggered == 0 set fTrapDamage to 20 set fTrapPushBack to 300 set fLevelledDamage to 1.5 set fTrapMinVelocity to 150 set bTrapContinuous to 0 playgroup unequip 1 enableLinkedPathPoints set triggered to 1 set timer to 6 setDestroyed 1 triggerHitShader 4 endif end begin gameMode ;after 1 sec delay, activate parent (for daisy-chaining) if triggered == 1 && next == 0 && timer < 5 set next to 1 set myParent to getParentRef set mySelf to getSelf myParent.activate mySelf 1 endif if triggered == 1 && timer <= 0 set fTrapDamage to 0 set fTrapPushBack to 0 set triggered to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set triggered to 0 setDestroyed 0 enableLinkedPathPoints end SLSDSCVR triggeredSLSD = SCVRtimerSLSDSCVRnextSLSDSCVRmySelfSLSDSCVR myParentSLSDSCVR fTrapDamageSLSD SCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDfSCVRfTrapMinVelocitySLSD n*SCVRbTrapContinuousSCRVSCRVSCPTӆEDIDARCelingSpikesTrap01SCRIPTSCHRnSCDAn`  s 0 == f 100 f 1000f 20s 0s 1 SCTXescriptName ARCelingSpikesTrap01SCRIPT short init float fTrapDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode if init == 0 set fTrapDamage to 100 set fTrapPushBack to 1000 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set init to 1 else TrapUpdate endif end SLSD'SCVRinitSLSD'SCVR fTrapDamageSLSDf 1SCVRfTrapPushBackSLSD'SCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCPT EDIDARChainPlatform01SCRIPTSCHRSCDA  s 0 == f X f Xs 1 Xir 1 ==  s 0 ==Y) This gate is lowered remotely.  Xir 0 ==  s 0 == ns 1 ns 0s 1f 1k s 1 == f 0 <= &&s 0  rn  f 0 >f f X  -Fs 0SCTXscn ARChainPlatform01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short activated short lowered short next float timer ref mySelf ref myParent begin onActivate if activated == 0 set mySelf to getSelf set myParent to getParentRef set activated to 1 endif if isActionRef player == 1 if lowered == 0 message " This gate is lowered remotely." endif elseif isActionRef mySelf == 0 if lowered == 0 playgroup forward 0 set lowered to 1 else playgroup backward 0 set lowered to 0 endif set next to 1 set timer to 1 endif end begin gameMode ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set lowered to 0 endSLSDURESCVR activatedSLSDU`~SCVRloweredSLSDSCVRnextSLSDNSCVRtimerSLSD,,SCVRmySelfSLSD?SCVR myParentSCRVSCRVSCROSCPTXZEDIDARCrumbleWall01SCRIPTSCHR4SCDA4t3/ Xir 0 == s 0 == && Xir 0 == &&  rn ns 1f 2  s 0 == f X f Xs 1 s 1 == f 0 <= &&D z@s 2  f 0 >f f X  -SCTXAscn ARCrumbleWall01SCRIPT short init short activated float timer ref mySelf ref myParent begin onActivate if isActionRef player == 0 && activated == 0 && isActionRef mySelf == 0 myParent.activate mySelf 1 playgroup unequip 0 set activated to 1 set timer to 2 endif end begin gameMode if init == 0 set mySelf to getSelf set myParent to getParentRef set init to 1 endif if activated == 1 && timer <= 0 triggerHitShader 5 set activated to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSDSCVRinitSLSDSCVR activatedSLSDSCVRtimerSLSDsSCVRmySelfSLSDSCVR myParentSCRVSCRVSCROSCPTeEDIDARCrumbleWall02SCRIPTSCHRSCDA  s 0 == f X f Xs 13/ Xir 0 == s 1 == && Xir 0 == &&  rn ns 2Fs 1SCTXscn ARCrumbleWall02SCRIPT short activated ref mySelf ref myParent begin onActivate if activated == 0 set mySelf to getSelf set myParent to getParentRef set activated to 1 endif if isActionRef player == 0 && activated == 1 && isActionRef mySelf == 0 myParent.activate mySelf 1 playgroup unequip 0 set activated to 2 endif end begin onReset reset3DState set activated to 1 endSLSDx(SCVR activatedSLSDx(SCVRmySelfSLSDx(SCVR myParentSCRVSCRVSCROSCPTCEDIDArenaAggressionScriptSCHR#&SCDA& rs 2 == rs  3rs rs 1 + !n !n !n&r rs 1 ==r r r  rs 0 rs 1 !=M rs 1 == rs 2f 0f 0f 0 rs 0 == f Z  rs 1 == f Z  rs 2 == f Z  rs 3 == f Z  rs 4 == f Z f Z rs 5 == f Z f Z rs 6 == f Z rs 7 == f Z rs 8 == f Z rs 9 == f Z rs 10 == f Z rs 11 == f Z rs 12 == f Z rs 13 == f Z rs 14 == f Z rs 15 == f Z rs 16 == f Z f Z f Z rs 17 == f Z f Z f Z rs 18 == f Z f Z f Z rs 19 == f Z rs 20 == f Z rs 21 == f Z rs 22 == f Z  rs 23 == f Z! f Z" f Z# rs 24 == f Z! f Z" f Z# rs 25 == f Z! f Z" f Z# !ndr !ndr !ndr  s 1 ==rs 2SCTXScriptname ArenaAggressionScript short Attack short KickedOut short PorkChop float fQuestDelayTime ; ref variables set here for the combatants in the current fight ref combatant1 ref combatant2 ref combatant3 Begin GameMode ; stops combat if player disqualified if Arena.Disqualified == 2 Set Arena.Disqualified to 3 player.scaonactor ; stops all combat against player set ArenaAggression.KickedOut to ArenaAggression.KickedOut+1 combatant1.SetActorValue "Aggression" , 0 combatant1.StopCombat Player combatant2.SetActorValue "Aggression" , 0 combatant2.StopCombat Player combatant3.SetActorValue "Aggression" , 0 combatant3.StopCombat Player ArenaBoarRef.StopCombat combatant1.StopCombat ArenaBoarRef combatant2.StopCombat ArenaBoarRef combatant3.StopCombat ArenaBoarRef Playsound "AMBArenaCrowdBoo" endif ; resets combatants if Arena.CombatantReset == 1 combatant1.moveto OpponentMarkerRef ;combatant1.disable combatant2.moveto OpponentMarkerRef ;combatant2.disable combatant3.moveto OpponentMarkerRef ;combatant3.disable set Arena.CombatantReset to 0 endif ; This script does nothing until AttackPlayer == 1 if Arena.AttackPlayer != 1 return endif ;Begin block of code that determines when the combatants become aggressive if Arena.AttackPlayer == 1 Set Arena.AttackPlayer to 2 ; clear combatant refs set combatant1 to 0 set combatant2 to 0 set combatant3 to 0 if ( Arena.CombatantsKilled == 0 ) set combatant1 to Combatant0ARef elseif ( Arena.CombatantsKilled == 1 ) set combatant1 to Combatant0BRef elseif ( Arena.CombatantsKilled == 2 ) set combatant1 to Combatant0CRef elseif ( Arena.CombatantsKilled == 3 ) set combatant1 to Combatant1ARef elseif ( Arena.CombatantsKilled == 4 ) set combatant1 to Combatant1BRef set combatant2 to Combatant1CRef elseif ( Arena.CombatantsKilled == 5 ) set combatant1 to Combatant1BRef set combatant2 to Combatant1CRef elseif ( Arena.CombatantsKilled == 6 ) set combatant1 to Combatant1DRef elseif ( Arena.CombatantsKilled == 7 ) set combatant1 to Combatant2ARef elseif ( Arena.CombatantsKilled == 8 ) set combatant1 to Combatant2BRef elseif ( Arena.CombatantsKilled == 9 ) set combatant1 to Combatant2CRef elseif ( Arena.CombatantsKilled == 10 ) set combatant1 to Combatant3ARef elseif ( Arena.CombatantsKilled == 11 ) set combatant1 to Combatant3BRef elseif ( Arena.CombatantsKilled == 12 ) set combatant1 to Combatant3CRef elseif ( Arena.CombatantsKilled == 13 ) set combatant1 to Combatant4ARef elseif ( Arena.CombatantsKilled == 14 ) set combatant1 to Combatant4BRef elseif ( Arena.CombatantsKilled == 15 ) set combatant1 to Combatant4CRef elseif ( Arena.CombatantsKilled == 16 ) set combatant1 to Combatant5ARef set combatant2 to Combatant5BRef set combatant3 to Combatant5CRef elseif ( Arena.CombatantsKilled == 17 ) set combatant1 to Combatant5ARef set combatant2 to Combatant5BRef set combatant3 to Combatant5CRef elseif ( Arena.CombatantsKilled == 18 ) set combatant1 to Combatant5ARef set combatant2 to Combatant5BRef set combatant3 to Combatant5CRef elseif ( Arena.CombatantsKilled == 19 ) set combatant1 to Combatant5DRef elseif ( Arena.CombatantsKilled == 20 ) set combatant1 to Combatant5ERef elseif ( Arena.CombatantsKilled == 21 ) set combatant1 to Combatant6ARef elseif ( Arena.CombatantsKilled == 22 ) set combatant1 to Combatant6BRef elseif ( Arena.CombatantsKilled == 23 ) set combatant1 to Combatant6CRef set combatant2 to Combatant6DRef set combatant3 to Combatant6ERef elseif ( Arena.CombatantsKilled == 24 ) set combatant1 to Combatant6CRef set combatant2 to Combatant6DRef set combatant3 to Combatant6ERef elseif ( Arena.CombatantsKilled == 25 ) set combatant1 to Combatant6CRef set combatant2 to Combatant6DRef set combatant3 to Combatant6ERef endif ; make the combatants aggressive and have them attack the player combatant1.SetActorValue "Aggression" , 100 combatant1.StartCombat Player combatant2.SetActorValue "Aggression" , 100 combatant2.StartCombat Player combatant3.SetActorValue "Aggression" , 100 combatant3.StartCombat Player endif ;End block of code that determines when the combatants become aggressive If Porkchop == 1 ArenaBoarRef.StartCombat combatant3 set Porkchop to 2 endif EndSLSDSCVRAttackSLSDSCVR KickedOutSLSD|SCVR PorkChopSLSD|SCVRfQuestDelayTimeSLSD,}SCVR combatant1SLSDSCVR combatant2SLSDSCVR combatant3SCROSCRVSCRVSCRVSCROBhSCROSCROBSCROSCRO} SCRO[SCROjSCROkSCROfSCROhSCROiSCROgSCROeSCROdSCROcSCROaSCRObSCRO`SCRO\SCRO_SCRO^SCROpSCROlSCROmSCROoSCROnSCRO]SCROXSCROZSCROYSCROWSCPTE @EDIDArenaAnnouncerScriptSCHR SCDAx rs 0 == rs 0 == rs 0 == rs 0 ==($ rs 1 == rXr 400 <= &&3rnrn rs 1 rs 0 == rs 0 == rs 0 == rs 1 ==rf rf X  + rn rs 0 == rs 0 == rs 0 == rf 6.8 >3rnrn rs 1 rs 1 rf 0 rs 1 ==3rnrn&r rs  2 rs 1s 1  s 1 ==f f X  +  s 0 ==  f 12 >s 2f 0s 1  s 2 ==3rnrns 351 rs 1 == rs 0 == && rXIr 6 <= &&3rnrn&r  rs 1f 0SCTXScriptname ArenaAnnouncerScript short Boot short ChampFight short PlayTwo float Timer1 short FirstBreak float fQuestDelayTime short ChampVictory Begin GameMode ;this plays the announcer sound file for the appropriate city if Arena.GateDown == 0 if Arena.FightOver == 0 if Arena.Announce == 0 if Arena.CityAnnounced == 0 if Arena.ReadyMatch == 1 && ArenaMatchPlayerRef.GetDistance Player <= 400 ArenaMatchPlayerRef.Say Announcer 1 ArenaMouth 1 set Arena.CityAnnounced to 1 ;set fQuestDelayTime to .5 endif endif endif endif endif if Arena.GateDown == 0 If Arena.FightOver == 0 If Arena.Announce == 0 if Arena.CityAnnounced == 1 set Arena.CityTimer to ( Arena.CityTimer + GetSecondsPassed ) player.SetFactionRank Arenaplayer, 0 endif endif endif endif ;this unlocks the Blue Team gate after the announcer has said a few words about the fight -- Chorrol if Arena.GateDown == 0 If Arena.FightOver == 0 If Arena.Announce == 0 if Arena.CityTimer > 6.8 ArenaMatchPlayerRef.Say Announcer 1 ArenaMouth 1 set Arena.GateDownFight to 1 Set Arena.Announce to 1 set Arena.CityTimer to 0 endif endif endif endif if Arena.Disqualified == 1 ArenaMatchPlayerRef.Say Announcer 1 ArenaMouth 1 Playsound "AMBArenaCrowdBoo" set Arena.Disqualified to 2 set Arena.AnnounceWin to 1 set PlayTwo to 1 endif if PlayTwo == 1 set Timer1 to ( Timer1 + GetSecondsPassed ) endif if FirstBreak == 0 if Timer1 > 12 set PlayTwo to 2 set Timer1 to 0 set FirstBreak to 1 endif endif if PlayTwo == 2 ArenaMatchPlayerRef.Say Announcer 1 ArenaMouth 1 set PlayTwo to 3 endif If Arena.FightOver == 1 && Arena.AnnounceWin == 0 && player.GetFactionRank ArenaCombatants <= 6 ArenaMatchPlayerRef.Say Announcer 1 ArenaMouth 1 Playsound "AMBArenaCrowdCheerWin" Set Arena.AnnounceWin to 1 set fQuestDelayTime to 0 endif End SLSDSCVRBootSLSDSCVR ChampFightSLSDSCVRPlayTwoSLSD sgoSCVRTimer1SLSDSCVR FirstBreakSLSD sgoSCVRfQuestDelayTimeSLSDSCVR ChampVictorySCRO{ SCROSCROSCRORfSCROSfSCRO,SCROSCROSCROSCPTI& EDIDArenaArmsScriptSCHRSCDA Xir 1 == X. 1 ==YQArena combatants may not loot the weapons or shields from their fallen opponents!SCTXScriptname ArenaArmsScript Begin OnActivate if IsActionRef player == 1 if ( getdead == 1 ) MessageBox "Arena combatants may not loot the weapons or shields from their fallen opponents!" endif endif End SCROSCPTOG EDIDArenaBannerScriptSCHRSCDA Xir 1 ==The figures on this Arena poster are the very models of valor and skill. Anyone can gamble on a match, but it takes a true warrior to step into the Arena as a combatant....SCTXScriptname ArenaBannerScript Begin OnActivate if isActionRef player == 1 Messagebox "The figures on this Arena poster are the very models of valor and skill. Anyone can gamble on a match, but it takes a true warrior to step into the Arena as a combatant...." endif EndSCROSCPT" EDIDArenaBasinScript1SCHRSCDA  Xir 1 == rs 1 == rs# 0 ==rr&rUMYou wash the grime of battle from your body, and feel completely rejuvenated. rs# 1zrYou have already washed the taint of battle from your body. Return and refresh yourself again after another match. rs 0 ==jbYou have not yet bloodied yourself in the Arena. Return and refresh yourself after tasting battle.SCTXScriptname ArenaBasinScript1 Begin OnActivate if isActionRef player == 1 if Arena.FightOver == 1 if Arena.UseBasin == 0 Cast ArenaBasinSpell Player Playsound AMBArenaWashBasin MessageBox "You wash the grime of battle from your body, and feel completely rejuvenated." Set Arena.UseBasin to 1 else MessageBox "You have already washed the taint of battle from your body. Return and refresh yourself again after another match." endif elseif Arena.FightOver == 0 MessageBox "You have not yet bloodied yourself in the Arena. Return and refresh yourself after tasting battle." endif endif EndSCROSCROSCRO" SCROySCPT^H EDIDArenaBlueDoorICMonstersScriptSCHRSCDA  Xir 1 == rs 0 ==JBYou may not exit the Arena until you have slain all the creatures!rnd rs 2 ==s  rnSCTXScriptname ArenaBlueDoorICMonstersScript Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the Blue Team's door when an Arena match is in session and the player can't enter if ArenaICGrandChampion.FightOver == 0 MessageBox "You may not exit the Arena until you have slain all the creatures!" Lock 100 endif ;this unlocks the Blue Team's door after a fight has been won if ArenaICGrandCHampion.FightOver == 2 Unlock Activate player.SetFactionRank Arenaplayer, -1 endif endif End SCROSCROSCRO,SCPT8EDIDArenaBlueDoorOutsideICScriptSCHRSCDA  Xir 1 == rs 0 ==F>You may not exit the Arena until you have slain your opponent!rnd rs 1 ==s  rnSCTXScriptname ArenaBlueDoorOutsideICScript Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the Blue Team's door when an Arena match is in session and the player can't enter if ArenaIC.FightOver == 0 MessageBox "You may not exit the Arena until you have slain your opponent!" Lock 100 endif ;this unlocks the Blue Team's door after a fight has been won if ArenaIC.FightOver == 1 Unlock Activate player.SetFactionRank Arenaplayer, -1 endif endif End SCROSCRO|SCRO,SCPTIOEDIDArenaBlueDoorOutsideScriptSCHR!SCDA! Xir 1 == rs 1 >=s  rn rs 0 == rs 0 ==F>You may not exit the Arena until you have slain your opponent!rnd rs 1 ==s  rnSCTXScriptname ArenaBlueDoorOutsideScript Begin OnActivate if IsActionRef player == 1 ;this unlocks the Blue Team's door after a disqualification if Arena.Disqualified >= 1 Unlock Activate player.SetFactionRank Arenaplayer, -1 endif ;this gives a pop-up message on the Blue Team's door when an Arena match is in session and the player can't enter if Arena.FightOver == 0 If Arena.Disqualified == 0 MessageBox "You may not exit the Arena until you have slain your opponent!" Lock 100 endif endif ;this unlocks the Blue Team's door after a fight has been won if Arena.FightOver == 1 Unlock Activate player.SetFactionRank Arenaplayer, -1 endif endif End SCROSCROSCRO,SCPTOEDIDArenaBlueGateScriptSCHRSCDA  Xir 1 == s 0 == rs 0 ==  s 0 ==Y'The Blue Pit Dog is Announceds s 1s 1SCTX\Scriptname ArenaBlueGateScript ;Short GateOpen Short GateDown Short Announce Float Timer Begin OnActivate if IsActionRef player == 1 ;this unlocks the Blue Team gate when the player is authorized to fight a match if GateDown == 0 If Arena.FightOver == 0 If Announce == 0 ;Playsound "ArenaChorrolAnnouncePitDog" Message "The Blue Pit Dog is Announced" Unlock Activate set GateDown to 1 Set Announce to 1 endif endif endif endif endif End ;Begin GameMode ;this unlocks the Blue Team gate when the player is authorized to fight a match ;if GateDown == 0 ;If GetDistance Player <= 128 ;If Arena.FightOver == 0 ;If Announce == 0 ;Playsound "ArenaChorrolAnnouncePitDog" ;Message "The Blue Pit Dog is Announced" ;Unlock ;Activate Player ;set GateDown to 1 ;Set Announce to 1 ;endif ;endif ;endif ;endif ;if GateDown == 1 ;if timer > 30 ;Activate Player ;set GateDown to 0 ;set Timer to 0 ;else ;set timer to ( timer + GetSecondsPassed ) ;endif ;endif ;EndSLSDSCVR GateDownSLSDSCVR AnnounceSLSDSCVRTimerSCROSCROSCPTpEDIDArenaCombatantSCHR SCDA Xir 1 == X. 1 ==LDArena combatants may not loot the corpses of their fallen opponents!Y  s 0 == X. 1 ==rs rs 1 + rs 1s 1 rs 1 >=  s 1 >= s 20 <=&r s  1 ~ s 40 <=&r s  1 ~ s 50 <=&r s  1 ~ s 60 <=&r s  1 ~ s 70 <=&r s  1 ~ r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s  XMSCTXScriptname ArenaCombatant short doonce short randomcrowd Begin OnActivate if IsActionRef player == 1 if ( getdead == 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin Gamemode if ( doonce == 0 ) if getdead == 1 set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set Arena.FightOver to 1 set doonce to 1 endif endif if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent EndSLSDDArenaSCVRdoonceSLSD len oppSCVR randomcrowdSCROSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPTEDIDArenaCombatantBlueSCHR SCDA rs 0 == X. 1 == rs 1 rs 1 rs 1 rs 1 == rs 1 == &&3rnrn rs 2 rs 0 == rs 1 ==,( rX 50 >= rX 60 < && n rs 1 rs 0 == rs 1 ==,( rX 60 >= rX 70 < && n  rs 1 rs 0 == rs 1 ==,( rX 70 >= rX 80 < && n rs 1 rs 0 == rs 1 ==,( rX 80 >= rX 90 < && n rs 1 rs 0 == rs 1 ==,( rX 90 >= rX 99 < && n rs 1 rs 0 == rs 1 == rX 100 == n rs 1 rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r  s 1 ~ s 70 <=&r  s 1 ~ s XMSCTX Scriptname ArenaCombatantBlue short enabled short fightover short doonce short evaluate short disqualified short CombatantReset short aggressive short randomcrowd Begin GameMode if ( ArenaSpectator.doonce == 0 ) ;if ( getav health < 1 ) if getdead == 1 set ArenaSpectator.BlueDead to 1 set ArenaSpectator.FightOver to 1 set ArenaSpectator.doonce to 1 endif endif if ArenaSpectator.BlueDead == 1 && ArenaSpectator.ChorrolMatch == 1 ;Playsound "ArenaSpecWinYellow" ArenaGalleryMarkerRef.Say Announcer 1 ArenaMouth 1 set ArenaSpectator.BlueDead to 2 endif ; BetTeam 1 is Blue, BetTeam 2 is Yellow ;------controls luck affecting combatant health---- if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 1 if player.getav Luck >= 50 && player.getav Luck < 60 ModAV Health 5 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 1 if player.getav Luck >= 60 && player.getav Luck < 70 ModAV Health 10 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 1 if player.getav Luck >= 70 && player.getav Luck < 80 ModAV Health 15 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 1 if player.getav Luck >= 80 && player.getav Luck < 90 ModAV Health 20 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 1 if player.getav Luck >= 90 && player.getav Luck < 99 ModAV Health 25 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 1 if player.getav Luck == 100 ModAV Health 30 set ArenaSpectator.Lucky to 1 endif endif endif ;--------------------------- if ArenaSpectator.GateDown >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End Begin OnHit set randomcrowd to GetRandomPercent EndSLSD SCVRenabledSLSDrowdCheSCVR fightoverSLSDSCVRdoonceSLSD SCVR evaluateSLSDSCVR disqualifiedSLSDSCVRCombatantResetSLSDSCVR aggressiveSLSDSCVR randomcrowdSCROSCROxSCRORfSCROSfSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPT 9EDIDArenaCombatantMultiSCHRSCDA Xir 1 == X. 1 ==LDArena combatants may not loot the corpses of their fallen opponents!   s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 6 == rs 1s 1 r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XM rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~SCTXScriptname ArenaCombatantMulti short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin OnActivate if IsActionRef player == 1 if ( getdead == 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnDeath if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 6 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End Begin Gamemode if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End SLSD SCVRenabledSLSD rsSCVR fightoverSLSDs 1SCVRdoonceSLSDvSCVR evaluateSLSDks! Do SCVR disqualifiedSLSD" SCVRCombatantCountSLSD sSCVRAttackSLSDSCVR randomcrowdSCROSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPT EDIDArenaCombatantMulti2SCHRSCDA   s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 19 == rs 1s 1 Xir 1 == X. 1 ==LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XM rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~SCTXScriptname ArenaCombatantMulti_2 short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin OnDeath if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 19 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif End Begin OnActivate if IsActionRef player == 1 if ( getdead == 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End Begin Gamemode if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End SLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSD SCVR evaluateSLSDtSCVR disqualifiedSLSDXSCVRCombatantCountSLSDSCVRAttackSLSDSCVR randomcrowdSCROSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPT ,EDIDArenaCombatantMulti2bSCHRSCDA  s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 19 == rs 1s 1 rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~ Xir 1 == X 1 <LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XMSCTXScriptname ArenaCombatantMulti_2b short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin GameMode if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 19 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End Begin OnActivate if IsActionRef player == 1 if ( getav health < 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End SLSDsSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSDSCVR evaluateSLSDSCVR disqualifiedSLSDSCVRCombatantCountSLSDSCVRAttackSLSDSCVR randomcrowdSCROSCROSCRO1H SCRO2H SCRO3H SCROSCROSCPT ,EDIDArenaCombatantMulti2cSCHRNSCDAN  s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 19 == rs 1s 1  s 0 == X. 1 ==rs rs 1 + rs 1s 1 rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~ Xir 1 == X 1 <LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XMSCTXvScriptname ArenaCombatantMulti_2c short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin GameMode if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 19 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif if ( doonce == 0 ) if getdead == 1 set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set Arena.FightOver to 1 set doonce to 1 endif endif if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End Begin OnActivate if IsActionRef player == 1 if ( getav health < 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End SLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSDtSCVR evaluateSLSDSCVR disqualifiedSLSDSCVRCombatantCountSLSDSCVRAttackSLSDSCVR randomcrowdSCROSCROSCRO1H SCRO2H SCRO3H SCROSCROSCPT1 EDIDArenaCombatantMulti3SCHRSCDA   s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 26 == rs 1s 1 Xir 1 == X. 1 ==LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... rXCr s XM rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~SCTXScriptname ArenaCombatantMulti_3 short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin OnDeath if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 26 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif End Begin OnActivate if IsActionRef player == 1 if ( getdead == 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif if player.GetInCell ArenaMatchCell set randomcrowd to GetRandomPercent endif End Begin Gamemode if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End SLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSDSCVR evaluateSLSDSCVR disqualifiedSLSDSCVRCombatantCountSLSDSCVRAttackSLSDSCVR randomcrowdSCROSCROSCROF SCROSCRO1H SCRO2H SCRO3H SCROSCPT ,EDIDArenaCombatantMulti3bSCHRSCDA   s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 26 == rs 1s 1 Xir 1 == X 1 <LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XM rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~SCTXScriptname ArenaCombatantMulti_3b short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin OnDeath if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 26 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif End Begin OnActivate if IsActionRef player == 1 if ( getav health < 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End Begin Gamemode if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End SLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSD@hSCVR evaluateSLSDtfSCVR disqualifiedSLSDSCVRCombatantCountSLSDSCVRAttackSLSDSCVR randomcrowdSCROSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPT ,EDIDArenaCombatantMulti3cSCHRSCDA   s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 26 == rs 1s 1 Xir 1 == X 1 <LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XM rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~SCTXScriptname ArenaCombatantMulti_3c short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin OnDeath if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 26 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif End Begin OnActivate if IsActionRef player == 1 if ( getav health < 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End Begin Gamemode if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End SLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSDSCVR evaluateSLSDtSCVR disqualifiedSLSDSCVRCombatantCountSLSDSCVRAttackSLSDSCVR randomcrowdSCROSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPT ,EDIDArenaCombatantMultibSCHRSCDA   s 0 == X. 1 ==rs rs 1 +s 1  s 0 == rs 6 == rs 1s 1 Xir 1 == X 1 <LDArena combatants may not loot the corpses of their fallen opponents! r rs 2 >=PvnYou have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further... s XM rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r s 1 ~ s 70 <=&r s 1 ~SCTXScriptname ArenaCombatantMultib short enabled short fightover ;short combatantskilled short doonce short evaluate short disqualified short CombatantCount short Attack short randomcrowd Begin OnDeath if ( doonce == 0 ) if ( getdead == 1 ) set Arena.CombatantsKilled to Arena.CombatantsKilled+1 set doonce to 1 endif endif if CombatantCount == 0 if ( Arena.CombatantsKilled == 6 ) set Arena.FightOver to 1 set CombatantCount to 1 endif endif End Begin OnActivate if IsActionRef player == 1 if ( getav health < 1 ) MessageBox "Arena combatants may not loot the corpses of their fallen opponents!" endif endif End Begin OnHit Player if Arena.Disqualified >= 2 StopCombat Player resethealth Messagebox "You have been disqualified, and must return to Owyn in the Bloodworks! Do not disgrace yourself any further..." endif set randomcrowd to GetRandomPercent End Begin Gamemode if Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif EndSLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSDSCVR evaluateSLSDSCVR disqualifiedSLSDSCVRCombatantCountSLSD SCVRAttackSLSD 0 ==SCVR randomcrowdSCROSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPTEDIDArenaCombatantYellowSCHR SCDA rs 0 == X. 1 == rs 1 rs 1 rs 1 rs 1 == rs 1 == &&3rnrn rs 2 rs 0 == rs 2 ==,( rX 50 >= rX 60 < && n rs 1 rs 0 == rs 2 ==,( rX 60 >= rX 70 < && n  rs 1 rs 0 == rs 2 ==,( rX 70 >= rX 80 < && n rs 1 rs 0 == rs 2 ==,( rX 80 >= rX 90 < && n rs 1 rs 0 == rs 2 ==,( rX 90 >= rX 99 < && n rs 1 rs 0 == rs 2 == rX 100 == n rs 1 rs 1 >=  s 1 >= s 20 <=&r s 1 ~ s 40 <=&r s 1 ~ s 50 <=&r s 1 ~ s 60 <=&r  s 1 ~ s 70 <=&r  s 1 ~ s XMSCTX Scriptname ArenaCombatantYellow short enabled short fightover short doonce short evaluate short disqualified short CombatantReset short aggressive short randomcrowd Begin GameMode if ( ArenaSpectator.doonce == 0 ) if getdead == 1 set ArenaSpectator.YellowDead to 1 set ArenaSpectator.FightOver to 1 set ArenaSpectator.doonce to 1 endif endif if ArenaSpectator.YellowDead == 1 && ArenaSpectator.ChorrolMatch == 1 ArenaGalleryMarkerRef.Say Announcer 1 ArenaMouth 1 set ArenaSpectator.YellowDead to 2 endif ; BetTeam 1 is Blue, BetTeam 2 is Yellow ;------controls luck affecting combatant health---- if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 2 if player.getav Luck >= 50 && player.getav Luck < 60 ModAV Health 5 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 2 if player.getav Luck >= 60 && player.getav Luck < 70 ModAV Health 10 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 2 if player.getav Luck >= 70 && player.getav Luck < 80 ModAV Health 15 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 2 if player.getav Luck >= 80 && player.getav Luck < 90 ModAV Health 20 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 2 if player.getav Luck >= 90 && player.getav Luck < 99 ModAV Health 25 set ArenaSpectator.Lucky to 1 endif endif endif if ArenaSpectator.Lucky == 0 if ArenaSpectator.BetTeam == 2 if player.getav Luck == 100 ModAV Health 30 set ArenaSpectator.Lucky to 1 endif endif endif ;--------------------------- if ArenaSpectator.GateDown >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 20 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 40 ) Playsound "AMBArenaCrowdReactCheer" set randomcrowd to -1 elseif ( randomcrowd <= 50 ) Playsound "AMBArenaCrowdReactOh" set randomcrowd to -1 elseif ( randomcrowd <= 60 ) Playsound "AMBArenaCrowdReactChant" set randomcrowd to -1 elseif ( randomcrowd <= 70 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 endif endif endif End Begin OnHit set randomcrowd to GetRandomPercent End SLSDSCVRenabledSLSDSCVR fightoverSLSDSCVRdoonceSLSDSCVR evaluateSLSDSCVR disqualifiedSLSDSCVRCombatantResetSLSDSCVR aggressiveSLSDSCVR randomcrowdSCROSCROxSCRORfSCROSfSCROSCROSCRO1H SCRO2H SCRO3H SCROSCPTcpEDIDArenaDoorBlockScriptSCHR[SCDA[K Xir 1 == rrrSCTXScriptname ArenaDoorBlockScript Begin OnActivate if IsActionRef player == 1 ;Unlock Activate Player OwynICArenaRef.MoveToMarker ICArenaOwynStand YsabelRef.MoveTo YsabelStool player.SCAOnactor ;Lock 100 endif EndSCROrvSCRO|SCROSCRO*SCROySCPTEDIDArenaExteriorDoorScriptSCHRSCDA Xir 1 == rs 0 ==You must bet on a match in order to enter the Arena. Speak with the Arena Gatekeeper between 9:00 a.m. and 9:00 p.m. to gain entrance.  rs 1 ==  rs 0 == SCTX5Scriptname ArenaExteriorDoorScript Short GateOpen Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the exterior Arena door when the is unauthorized to enter If ArenaSpectator.ReadyMatch == 0 MessageBox "You must bet on a match in order to enter the Arena. Speak with the Arena Gatekeeper between 9:00 a.m. and 9:00 p.m. to gain entrance. " endif If ArenaSpectator.ReadyMatch == 1 Activate endif elseif ArenaSpectator.DoorLock == 0 ; NPCs activate the door normally Activate endif End SLSD7 SCVR GateOpenSCROSCROxSCPTC EDIDArenaFanScriptSCHRSCDASCTX-Scriptname ArenaFanScript short FanGreet SLSDSCVR FanGreetSCPTEDIDArenaGrandChampionMatchScriptSCHR !SCDA  s 0 ==%! s 1 == rXr 400 <= &&3rnrn rns 1  s 1 ==f f X  +  s 0 ==  f 17 >3rnrn&r f 0s 1  s 1 ==f f X  +  s 0 ==  f 12 >3rnrnf 0s 1  s 1 ==f f X  +  s 0 ==  f 12 >3rnrn&r f 0s  1  s 1 ==f f X  +  s 0 ==  f 8 >3rnrnf  0s  1  s 1 ==f f X  + s 0 ==  f 15 >ss r rs 1f  0s  1  s 1 ==rS rn !n(s 2 s 2 == s 0 == X:r 100 == rXr 500 <= !nn nds 1  s 1 ==  s 0 ==3rnrn&r s 1  s 1 ==f f X  +  s 0 == f 14.7 >3rnrnf 0s 1  s 1 ==f f X  +  s 0 ==  f 12 >3rnrnf 0s 1s 1f 0SCTXScriptname ArenaGrandChampionMatchScript short ChallengeAgronak short ArenaName short ReadyMatch short Announce1 float Timer1 short Announce2 float Timer2 short Announce3 float Timer3 short Announce4 float Timer4 short GateDown short AttackPlayer short GrandChampKilled short FightOver short AnnounceWin1 float WinTimer1 short AnnounceWin2 float WinTimer2 short AnnounceWin3 short AcceptMisc short FightOver short Suicide short FirstBreak float FirstTimer float fQuestDelayTime short FanGreet short FanHang short FanFollow short FanHold short GrayRestrain Begin GameMode ;The following are the Arena names and corresponding variables ;ArenaName 1 = The Spellslinger ;ArenaName 2 = The Butcher ;ArenaName 3 = Shadowstep ;ArenaName 4 = The Black Arrow ;ArenaName 5 = Skullcrusher ;ArenaName 6 = The Divine Avenger ;ArenaName 7 = The Messenger of Death ;ArenaName 8 = The Crimson Blade ;ArenaName 9 = Man o' War ;ArenaName 10 = Sir Slaughter ;ArenaName 11 = The Tamriel Terror ;ArenaName 12 = Dragonheart ;ArenaName 13 = Lady Luck ;ArenaName 14 = The Iron Maiden ;this plays the announcer Intro sound file for the Grand Champion match if Announce1 == 0 if ChallengeAgronak == 1 && ICArenaPlayerMarkerRef.GetDistance Player <= 400 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 player.SetFactionRank Arenaplayer, 0 ;set fQuestDelayTime to .5 set Announce1 to 1 endif endif endif if Announce1 == 1 set Timer1 to ( Timer1 + GetSecondsPassed ) endif if FirstBreak == 0 if Timer1 > 17 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 Playsound "AMBArenaCrowdCheerWin" set Timer1 to 0 set FirstBreak to 1 endif endif endif if FirstBreak == 1 set FirstTimer to ( FirstTimer + GetSecondsPassed ) endif ;this plays the announcer sound file for the Champion of the appropriate city if Announce2 == 0 if FirstTimer > 12 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 set FirstTimer to 0 set Announce2 to 1 endif endif endif if Announce2 == 1 set Timer2 to ( Timer2 + GetSecondsPassed ) endif ;this plays the appropriate Arena name sound file if Announce3 == 0 if Timer2 > 12 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 Playsound "AMBArenaCrowdBoo" set Timer2 to 0 set Announce3 to 1 endif endif endif if Announce3 == 1 set Timer3 to ( Timer3 + GetSecondsPassed ) endif if Announce4 == 0 if Timer3 > 8 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 set Timer3 to 0 set Announce4 to 1 endif endif if Announce4 == 1 set Timer4 to ( Timer4 + GetSecondsPassed ) endif if GateDown == 0 if Timer4 > 15 ICArenaPlayerGate.Unlock ICArenaOpponentGate.Unlock ICArenaPlayerGate.Activate Player ICArenaOpponentGate.Activate Player set AttackPlayer to 1 set Timer4 to 0 set GateDown to 1 endif endif if AttackPlayer == 1 AgronakGroMalogRef.StartCombat Player AgronakGroMalogRef.Moddisposition Player -100 AgronakGroMalogRef.SetAV Aggression 40 Set AttackPlayer to 2 endif if AttackPlayer == 2 if Suicide == 0 if GetStage MS52 == 100 if AgronakGroMalogRef.GetDistance Player <=500 AgronakGroMalogRef.StopCombat Player AgronakGroMalogRef.SetAV Aggression 0 AgronakGroMalogRef.SetRestrained 1 AgronakGroMalogRef.SetAV Health 100 set Suicide to 1 endif endif endif endif If GrandChampKilled == 1 If AnnounceWin1 == 0 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 Playsound "AMBArenaCrowdCheerWin" Set AnnounceWin1 to 1 endif endif if AnnounceWin1 == 1 set WinTimer1 to ( WinTimer1 + GetSecondsPassed ) endif if AnnounceWin2 == 0 if WinTimer1 > 14.7 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 ;Playsound "AMBArenaCrowdCheerWin" set WinTimer1 to 0 set AnnounceWin2 to 1 endif endif endif if AnnounceWin2 == 1 set WinTimer2 to ( WinTimer2 + GetSecondsPassed ) endif if AnnounceWin3 == 0 if WinTimer2 > 12 ICArenaPlayerMarkerRef.Say ICAnnouncer 1 ArenaMouth 1 set WinTimer2 to 0 set AnnounceWin3 to 1 set FightOver to 1 set fQuestDelayTime to 0 endif endif EndSLSD BSCVRChallengeAgronakSLSD BSPriSCVR ArenaNameSLSD%EDIDSCVR ReadyMatchSLSDSCVR Announce1SLSD4SCVRTimer1SLSD%EDIDSCVR Announce2SLSD%EDIDSCVRTimer2SLSD SCVR Announce3SLSD SCVRTimer3SLSD SCVR Announce4SLSD (SCVRTimer4SLSD ͬSCVR GateDownSLSDSCVR AttackPlayerSLSDmSCVRGrandChampKilledSLSD FSCVR FightOverSLSD?䤹SCVR AnnounceWin1SLSDLSCVR WinTimer1SLSDSCVR AnnounceWin2SLSDSCVR WinTimer2SLSD oSCVR AnnounceWin3SLSDSCVR AcceptMiscSLSDSCVR FightOverSLSDSCVRSuicideSLSDSCVR FirstBreakSLSDSCVR FirstTimerSLSDSCVRfQuestDelayTimeSLSDswimbowSCVR FanGreetSLSDSCVRFanHangSLSDTECSCVR FanFollowSLSD??SCVRFanHoldSLSD!SCVR GrayRestrainSCRObzSCROSCRO`zSCROazSCROSCRO^SCROSfSCRO,SCROSCROSCRO֎SCPT.EDIDArenaGrayPrinceScriptSCHRrSCDAr( s 0 == rs 1 == rs 1 == X. 1 == rs 1 rs 1 rs 1s 1"  X 20 > rs 1 >= &&  s 1 >= s 10 <=&r s 1 ~ s 30 <=&r s 1 ~ -r rXCr s XMSCTXScriptname ArenaGrayPrinceScript short enabled short fightover short doonce short evaluate short disqualified short CombatantReset short aggressive short randomcrowd Begin GameMode if ( doonce == 0 ) if ArenaIC.ChallengeAgronak == 1 if ArenaIC.ReadyMatch == 1 if ( getdead == 1 ) set ArenaIC.GrandChampKilled to 1 set ArenaIC.FightOver to 1 set Arena.FightOver to 1 set doonce to 1 endif endif endif endif if getav health > 20 && Arena.AttackPlayer >= 1 if ( randomcrowd >= 1 ) if ( randomcrowd <= 10 ) Playsound "AMBArenaCrowdBoo" set randomcrowd to -1 elseif ( randomcrowd <= 30 ) Playsound "AMBArenaCrowdCheerWin" set randomcrowd to -1 ;elseif ( randomcrowd <= 50 ) ;Playsound "AMBArenaCrowdCheerWin" ;set randomcrowd to -1 ;elseif ( randomcrowd <= 70 ) ;Playsound "AMBArenaCrowdCheerWin" ;set randomcrowd to -1 ;elseif ( randomcrowd <= 100 ) ;Playsound "AMBArenaCrowdCheerWin" ;set randomcrowd to -1 endif endif endif End Begin OnHit Player if player.getincell ICArena set randomcrowd to GetRandomPercent endif End SLSDSCVRenabledSLSDSCVR fightoverSLSD!+EDIDSCVRdoonceSLSDSCVR evaluateSLSDSCVR disqualifiedSLSD1 SCVRCombatantResetSLSD|@)?SCVR aggressiveSLSDm?ÿSCVR randomcrowdSCRO|SCROSCROSCROSCROSCROgxSCPTd8q EDIDArenaHopeful1ScriptSCHRSCDAv  s 0 == Xr 500 <=s 1  s 1 == Xr 500 >s 0  s 0 == rXr 1 == rXr 400 <= rX 90 <f f X  +s 1 s 1 == f 60 > rXr 400 <=  s 0 == n|tBy watching the Arena hopefuls spar, you've picked up a few tips! Your Hand To Hand skill has increased by 5 points.s 2f 0s 1  s 1 == rXr 400 >s 0f 0s 0SCTXScriptname ArenaHopeful1Script short Hopeful1Practice short Skill float SkillTimer short Points short doonce Begin GameMode if Hopeful1Practice == 0 if GetDistance HopefulTrainMarker1 <= 500 set Hopeful1Practice to 1 endif endif if Hopeful1Practice == 1 if GetDistance HopefulTrainMarker1 > 500 set Hopeful1Practice to 0 endif endif if Skill == 0 if ArenaHopeful1Ref.GetIsCurrentPackage HopefulTrain1Package == 1 if ArenaHopeful1Ref.GetDistance Player <= 400 if player.getav HandToHand < 90 set SkillTimer to ( SkillTimer + GetSecondsPassed ) set Points to 1 endif endif endif endif if Points == 1 if SkillTimer > 60 if ArenaHopeful1Ref.GetDistance Player <= 400 if doonce == 0 ModPCSkill HandToHand 5 Messagebox "By watching the Arena hopefuls spar, you've picked up a few tips! Your Hand To Hand skill has increased by 5 points." set Skill to 2 set SkillTimer to 0 set doonce to 1 endif endif endif endif if Points == 1 if ArenaHopeful1Ref.GetDistance Player > 400 set Skill to 0 set SkillTimer to 0 set Points to 0 endif endif End SLSD  SCVRHopeful1PracticeSLSD SCVRSkillSLSD< SCVR SkillTimerSLSD sSCVRPointsSLSDSCVRdoonceSCROBq SCRO@q SCROKq SCROSCPTN9q EDIDArenaHopeful2ScriptSCHRSCDA  s 0 == Xr 500 <=s 1  s 1 == Xr 500 >s 0SCTXBScriptname ArenaHopeful2Script short Hopeful2Practice Begin GameMode if Hopeful2Practice == 0 if GetDistance HopefulTrainMarker2 <= 500 set Hopeful2Practice to 1 endif endif if Hopeful2Practice == 1 if GetDistance HopefulTrainMarker2 > 500 set Hopeful2Practice to 0 endif endif End SLSDSCVRHopeful2PracticeSCROCq SCPTEDIDArenaICGrandChampFightsSCHR SCDA  s 1 == s G <=s 0 s 0 == s 1 == && rXr 400 <=3r nr ns 1 s 1 ==  s 0 ==f f X  +  f 14 >3r nr nf  0 r ns  1 s 1 == s 0 ==f f X  + f 10.5 >ss r r&r f  0s  1s  1  s 1 != A s 1 ==f 0f 0f 0s  2  s 1 == f Z   s 2 == f Z f Z   s 3 == f Z f Z f Z  s 4 == f Z  s 5 == f Z f Z  s 6 == f Z f Z f Z  s 7 == f Z  s 8 == f Z f Z  s 9 == f Z f Z f Z s 10 == f Z s 11 == f Z f Z s 12 == f Z f Z f Z s 13 == f Z s 14 == f Z f Z s 15 == f Z f Z f Z s 16 == f Z s 17 == f Z f Z s 18 == f Z f Z f Z  !ndr !ndr !ndrSCTX&Scriptname ArenaICGrandChampFights short crazyidea short ReadyMatch short OneWeek float MatchTimer short Reset short FightOver short FightType short CityAnnounce float Timer1 short FightAnnounce float Timer2 short GateDown short AttackPlayer short KillCount short Victory float fQuestDelayTime short killed ; combatant ref variables ref combatant1 ref combatant2 ref combatant3 Begin GameMode if Victory == 1 if OneWeek <= gamedayspassed set Victory to 0 endif endif ;-------------------------------------------------------------------------------------------- ;Creature Level Guide ; 1 -- Rat, Goblin, Goblin Acolyte, Dog ; 4 -- Goblin Skirmisher, Wolf ; 5 -- Boar ; 6 -- Troll ; 8 -- Goblin Berserker ; 10 -- Mountain Lion ; 11 -- Spriggan ; 12 -- Minotaur ; 13 -- Goblin Shaman ; 14 -- Bear ; 15 -- Land Dreugh ; 16 -- Ogre ; 18 -- Minotaur Lord ;this plays the announcer Intro sound file for the Imperial City Arena if CityAnnounce == 0 && ReadyMatch == 1 if ICMonsterFightPlayerRef.GetDistance Player <= 400 ICMonsterFightPlayerRef.Say ICMonsterAnnounce 1 ArenaMouth 1 set CityAnnounce to 1 ;set fQuestDelayTime to .5 endif endif if CityAnnounce == 1 if FightAnnounce == 0 set Timer1 to ( Timer1 + GetSecondsPassed ) ;this plays the sound file for the fight if Timer1 > 14 ICMonsterFightPlayerRef.Say ICMonsterAnnounce 1 ArenaMouth 1 set Timer1 to 0 player.SetFactionRank Arenaplayer, 0 set FightAnnounce to 1 endif endif endif if FightAnnounce == 1 if GateDown == 0 set Timer2 to ( Timer2 + GetSecondsPassed ) ;this lowers the gates for the player and animals if Timer2 > 10.5 ArenaICMonsterGateRef.Unlock ArenaICPlayerGateRef.Unlock ArenaICMonsterGateRef.Activate Player ArenaICPlayerGateRef.Activate Player Playsound "AMBArenaCrowdCheerWin" set Timer2 to 0 set GateDown to 1 set AttackPlayer to 1 endif endif endif ; EVERYTHING BELOW THIS only runs when AttackPlayer == 1 if AttackPlayer != 1 return endif if AttackPlayer == 1 ; clear combatant refs set combatant1 to 0 set combatant2 to 0 set combatant3 to 0 Set AttackPlayer to 2 if FightType == 1 set combatant1 to ICBoar5Ref elseif FightType == 2 set combatant1 to ICWolf4Ref set combatant2 to ICBoar5Ref elseif FightType == 3 set combatant1 to ICWolf4Ref set combatant2 to ICWolf4Ref2 set combatant3 to ICGobSkirm4Ref elseif FightType == 4 set combatant1 to ICGobBer8Ref elseif FightType == 5 set combatant1 to ICTroll6Ref set combatant2 to ICTroll6Ref2 elseif FightType == 6 set combatant1 to ICGobBer8Ref set combatant2 to ICGobBer8Ref2 set combatant3 to ICTroll6Ref elseif FightType == 7 set combatant1 to ICMLion10Ref elseif FightType == 8 set combatant1 to ICMLion10Ref set combatant2 to ICMLion10Ref2 elseif FightType == 9 set combatant1 to ICMLion10Ref set combatant2 to ICMLion10Ref2 set combatant3 to ICSprig11Ref elseif FightType == 10 set combatant1 to ICBear14Ref elseif FightType == 11 set combatant1 to ICMin12Ref set combatant2 to ICMin12Ref2 elseif FightType == 12 set combatant1 to ICMin12Ref set combatant2 to ICMin12Ref2 set combatant3 to ICBear14Ref elseif FightType == 13 set combatant1 to ICOgre16Ref elseif FightType == 14 set combatant1 to ICOgre16Ref set combatant2 to ICOgre16Ref2 elseif FightType == 15 set combatant1 to ICOgre16Ref set combatant2 to ICOgre16Ref2 set combatant3 to ICDreugh15Ref elseif FightType == 16 set combatant1 to ICMinLord18Ref elseif FightType == 17 set combatant1 to ICMinLord18Ref set combatant2 to ICMinLord18Ref2 elseif FightType == 18 set combatant1 to ICMinLord18Ref set combatant2 to ICMinLord18Ref2 set combatant3 to ICMinLord18Ref3 endif combatant1.setav aggression 100 combatant1.startcombat player combatant2.setav aggression 100 combatant2.startcombat player combatant3.setav aggression 100 combatant3.startcombat player endif EndSLSD3SCVR crazyideaSLSDSCVR ReadyMatchSLSDa\ChorrSCVROneWeekSLSDSCVR MatchTimerSLSDSCVRResetSLSDa\ChorrSCVR FightOverSLSD%EDIDSCVR FightTypeSLSD%EDIDSCVR CityAnnounceSLSD taSCVRTimer1SLSD 4SCVRFightAnnounceSLSD HEDRSCVRTimer2SLSD %EDIDSCVR GateDownSLSD %EDIDSCVR AttackPlayerSLSDHEDRSCVR KillCountSLSD%EDIDSCVRVictorySLSD%EDIDSCVRfQuestDelayTimeSLSDHEDRSCVRkilledSLSD%EDIDSCVR combatant1SLSD%EDIDSCVR combatant2SLSDsneakboSCVR combatant3SCROSCROSCROSCROSCRVSCRVSCRVSCRO9SCRO< SCROSfSCRO,SCROSCROSCRO6SCRO<SCROSCROSCROSCROBSCROCSCROSCROJSCRO1SCROSCROSCROPSCROSCROZSCROSCROSCRO{SCRO|SCPT"EDIDArenaICMonsterFightsSCHRSCDASCTXFScriptname ArenaICMonsterFights Begin GameMode EndSCPT-EDIDArenaICRedRoomDoorScriptSCHRSCDA Xir 1 == rs 0 ==yOnly authorized combatants may enter the Red Room. You must first speak to the Arena Blademaster and arrange for a match.rndSCTXScriptname ArenaICRedRoomDoorScript Short WearingArmor Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the Red Room door when the player isn't authorized to enter if ArenaIC.ReadyMatch == 0 MessageBox "Only authorized combatants may enter the Red Room. You must first speak to the Arena Blademaster and arrange for a match." Lock 100 endif endif End SLSD"*8SCVR WearingArmorSCROSCRO|SCPTEDIDArenaOutsideGateScriptSCHRSCDASCTX<scriptname ArenaOutsideGateScript Begin OnActivate EndSCPTEDIDArenaRaimentScriptSCHRTSCDAT r rs 1  r rs 0 rs 0SCTXScriptname ArenaRaimentScript Begin OnEquip Player set ICArenaMatchGateRef.WearingArmor to 1 End Begin OnUnequip Player set ICArenaMatchGateRef.WearingArmor to 0 set ICArenaRedRoomGateRef.WearingArmor to 0 EndSCROSCROpvSCROySCPTDOEDIDArenaRedRoomDoorScriptSCHR{SCDA{k  Xir 1 == rs 0 ==yOnly authorized combatants may enter the Red Room. You must first speak to the Arena Blademaster and arrange for a match.rnd rs 1 ==  s 0 ==g_You must equip your Arena Battle Raiment before you will be allowed entrance into the Red Room.rndSCTXScriptname ArenaRedRoomDoorScript Float Timer Short WearingArmor Short GateOpen Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the Red Room door when the player isn't authorized to enter if Arena.ReadyMatch == 0 MessageBox "Only authorized combatants may enter the Red Room. You must first speak to the Arena Blademaster and arrange for a match." Lock 100 endif ;this gives a pop-up message on the Red Room door when the player is authorized to enter, but isn't wearing a Battle Raiment if Arena.ReadyMatch == 1 if WearingArmor == 0 MessageBox "You must equip your Arena Battle Raiment before you will be allowed entrance into the Red Room." Lock 100 endif endif endif EndSLSD&9 SCVRTimerSLSD being SCVR WearingArmorSLSDSCVR GateOpenSCROSCROSCPT JEDID ArenaScriptSCHR 3(SCDA3%  s 0 ==  s 1 ==  s 0 ==&" rs 0 == rXCr 1 == &&s  1 s 1 == s 0 ==  f 12 >s r s r s 1f  0s 1f f X  +SCTXScriptname ArenaScript short ReadyMatch short FightOver short CombatantsKilled short Reset short AnnounceWin short GateDownFight short GateDown short Announce short FirstWin short Disqualified Float OpenTimer Float Timer short ChorrolMatch short Enabled short DisableCombatants float CityTimer short CityAnnounced short ChallengeTrickster short CombatantReset short AttackPlayer short DeadDude short UseBasin short Champ float fQuestDelayTime ref combatant1 ref combatant2 ref combatant3 Begin GameMode ;Sets the Disqualified flag on the player if he takes off the Battle Raiment if ( Disqualified == 0 ) If GateDown == 1 If FightOver == 0 If ICArenaMatchGateRef.WearingArmor == 0 && ( Player.GetInCell ArenaMatchCell == 1 ) set Disqualified to 1 endif endif endif endif ; Opens the Arena gates for player and opponents if GateDownFight == 1 if GateDown == 0 if OpenTimer > 12 GoodGuyGateRef.Unlock GoodGuyGateRef.Activate OwynICArenaRef BadGuyGateRef.Unlock BadGuyGateRef.Activate OwynICArenaRef set GateDown to 1 set OpenTimer to 0 set AttackPlayer to 1 else set OpenTimer to ( OpenTimer + GetSecondsPassed ) endif endif endif EndSLSDD SCVR ReadyMatchSLSD SCVR FightOverSLSD  SCVRCombatantsKilledSLSD SCVRResetSLSD SCVR AnnounceWinSLSD SCVRGateDownFightSLSD!+SCVR GateDownSLSDSCVR AnnounceSLSD SCVR FirstWinSLSD  SCVR DisqualifiedSLSD @ SCVR OpenTimerSLSD  SCVRTimerSLSD mbatantSCVR ChorrolMatchSLSDSCVREnabledSLSD  SCVRDisableCombatantsSLSDSCVR CityTimerSLSD@ SCVRCityAnnouncedSLSDSCVRChallengeTricksterSLSDSCVRCombatantResetSLSD@ SCVR AttackPlayerSLSD SCVR DeadDudeSLSD# SCVR UseBasinSLSD' SCVRChampSLSD(SCVRfQuestDelayTimeSLSD$DIDSCVR combatant1SLSD%DIDSCVR combatant2SLSD&SCVR combatant3SCRO~ SCRO SCRV$SCRV%SCRV&SCROpvSCROSCROF SCROrvSCPT*EDIDArenaSpecInsideDoorScriptSCHRSCDA Xir 1 == rs 1 ==<4You may not leave the Arena until the match is over! rs 0 ==  SCTX"Scriptname ArenaSpecInsideDoorScript Begin OnActivate if IsActionRef player == 1 If ArenaSpectator.DoorLock == 1 MessageBox "You may not leave the Arena until the match is over!" elseif ArenaSpectator.DoorLock == 0 Activate endif else Activate endif EndSCROSCROxSCPT\EDIDArenaSpectatorCombatantsScriptSCHRSCDA rs 1 == rs 0 == rs 1 == rf 12.5 >s rs rrr rs 1 rf 0SCTXScriptname ArenaSpectatorCombatantsScript Begin GameMode ; Opens the Arena gates for both the Yellow Team and Blue Team combatants if ArenaSpectator.GateDownFight == 1 if ArenaSpectator.GateDown == 0 if ArenaSpectator.Announce == 1 if ArenaSpectator.OpenTimer > 12.5 ;8.5 ArenaPlayerGateRef.Unlock ArenaPlayerGateRef.Activate Player YellowGateRef.Unlock YellowGateRef.Activate Player ArenaYellowComRef.StartCombat ArenaBlueComRef ArenaBlueComRef.StartCombat ArenaYellowComRef set ArenaSpectator.GateDown to 1 set ArenaSpectator.OpenTimer to 0 endif endif endif endif EndSCROsSCROYsSCRO٬SCROجSCROxSCROSCPTEDIDArenaSpectatorScriptSCHR SCDA  s 0 ==  s 0 ==""s 1  s 1 ==  s 1 ==  s 0 ==s 1 s 0 == s 0 ==  s 0 ==  s 0 ==%! rXr 400 <= s 1 == &&s 13rnrnns  1  s 0 ==  s 0 ==  s 0 ==  s 1 ==f f X  + s 0 == s 0 ==  s 0 ==  f 8 >  s 1 ==3rnrnns 1s 1f 0  s 1 ==f f X  +  s 1 == s 0 == s 1 == f 13 >s rs rrr&r s 1f 0 s 1 == s 1 == &&&r 3rnrnns 2 s 1 == s 1 == &&&r 3rnrnns 2SCTX Scriptname ArenaSpectatorScript short BetTeam short BetAmount short ReadyToRumble short Enabled short GateDown short FightOver short Announce short CityAnnounced short ChorrolMatch short SkingradMatch short CheydinhalMatch short ImperialCityMatch short LeyawiinMatch short AnvilMatch short BrumaMatch short BravilMatch float CityTimer short GateDownFight float OpenTimer short YellowDead short BlueDead short CombatantReset Short DisableCombatants Short ReadyMatch Short Reset Short DoOnce Float fQuestDelayTime short Lucky short DoorLock Begin GameMode if DisableCombatants == 0 if ( ReadyMatch == 0 ) ArenaYellowComRef.Disable ArenaBlueComRef.Disable set DisableCombatants to 1 endif endif if ( ReadyMatch == 1 ) if GateDown == 1 if ReadyToRumble == 0 set ReadyToRumble to 1 endif endif endif ;this plays the announcer sound file for the appropriate city if GateDown == 0 If FightOver == 0 If Announce == 0 If CityAnnounced == 0 If ArenaGalleryMarkerRef.GetDistance Player <= 400 && ChorrolMatch == 1 Set DoorLock to 1 ArenaGalleryMarkerRef.Say Announcer 1 ArenaMouth 1 1 set CityAnnounced to 1 endif endif endif endif endif if GateDown == 0 If FightOver == 0 If Announce == 0 if CityAnnounced == 1 set CityTimer to ( CityTimer + GetSecondsPassed ) endif endif endif endif ;Plays another announcer message about the fight if GateDown == 0 If FightOver == 0 If Announce == 0 if CityTimer > 8 If ChorrolMatch == 1 ArenaGalleryMarkerRef.Say Announcer 1 ArenaMouth 1 1 set GateDownFight to 1 Set Announce to 1 set CityTimer to 0 endif endif endif endif endif If Announce == 1 set OpenTimer to ( OpenTimer + GetSecondsPassed ) endif ; Opens the Arena gates for both the Yellow Team and Blue Team combatants if GateDownFight == 1 if GateDown == 0 if Announce == 1 if OpenTimer > 13 ;8.5 ArenaPlayerGateRef.Unlock ArenaPlayerGateRef.Activate ArenaBlueComRef YellowGateRef.Unlock YellowGateRef.Activate ArenaBlueComRef ArenaYellowComRef.StartCombat ArenaBlueComRef ArenaBlueComRef.StartCombat ArenaYellowComRef Playsound "AMBArenaCrowdCheerWin" set GateDown to 1 set OpenTimer to 0 endif endif endif endif if BlueDead == 1 && ChorrolMatch == 1 Playsound "AMBArenaCrowdCheerWin" ArenaGalleryMarkerRef.Say Announcer 1 ArenaMouth 1 1 set BlueDead to 2 endif if YellowDead == 1 && ChorrolMatch == 1 Playsound "AMBArenaCrowdCheerWin" ArenaGalleryMarkerRef.Say Announcer 1 ArenaMouth 1 1 set YellowDead to 2 endif End SLSDiorDoorSCVRBetTeamSLSDiorDoorSCVR BetAmountSLSDntSCVRReadyToRumbleSLSDSCVREnabledSLSDSCVR GateDownSLSDSCVR FightOverSLSDSCVR AnnounceSLSD SCVRCityAnnouncedSLSD SCVR ChorrolMatchSLSD SCVRSkingradMatchSLSD SCVRCheydinhalMatchSLSD C7 SCVRImperialCityMatchSLSDjČSCVRLeyawiinMatchSLSDSCVR AnvilMatchSLSD SCVR BrumaMatchSLSDSCVR BravilMatchSLSD: SCVR CityTimerSLSDSCVRGateDownFightSLSDSCVR OpenTimerSLSD+SCVR YellowDeadSLSD+SCVR BlueDeadSLSDSCVRCombatantResetSLSDC$SCVRDisableCombatantsSLSDSCVR ReadyMatchSLSDCSCVRResetSLSDC SCVRDoOnceSLSD SCVRfQuestDelayTimeSLSDSCVRLuckySLSDSCVR DoorLockSCRO٬SCROجSCROSCROsSCROYsSCROSCRORfSCROSfSCROSCPTˊEDID ArenatestSCHRSCDASCTX<Scriptname Arenatest Begin GameMode ;this is just a test to get the Chorrol arena guys fighting ; COMMENTED OUT BECAUSE REFS HAVE BEEN DELETED ;if (ChorrolArena01ref.GetCurrentAIPackage != 5) ; ChorrolArena02ref.Startcombat ChorrolArena01ref ; ChorrolArena01ref.Startcombat ChorrolArena02ref ;endif EndSCPTb* EDIDArenaTrapSpike01SCRIPTSCHRmSCDAm_  s 0 ==f 10 f 128 f 128s 0s 1 SCTXscn ArenaTrapSpike01SCRIPT ; Self-activated, no trigger required short activated float fTrapDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode if activated == 0 ; set up the damage values set fTrapDamage to 10 set fTrapPushBack to 128 set fTrapMinVelocity to 128 set bTrapContinuous to 0 set activated to 1 else trapUpdate endif endSLSDSCVR activatedSLSDSCVR fTrapDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCPTtw EDIDArenaWeaponScriptSCHR{SCDA{k Xir 1 ==G?You may not scavenge your fallen opponents' weapons or shields!SCTXScriptname ArenaWeaponScript Begin OnActivate if IsActionRef player == 1 Messagebox "You may not scavenge your fallen opponents' weapons or shields!" endif EndSCROSCPTEDIDArenaYellowDoorOutsideScriptSCHRSCDA Xir 1 ==bZThis is the door to the Yellow Team's Red Room. You are not authorized to enter this area.SCTXScriptname ArenaYellowDoorOutsideScript Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the Yellow combatants' door MessageBox "This is the door to the Yellow Team's Red Room. You are not authorized to enter this area." endif End SCROSCPTEDIDArenaYellowDoorScriptSCHRSCDA Xir 1 ==zrThis is the door to the Yellow Team's practice area. It has been locked from the other side and cannnot be opened.SCTXScriptname ArenaYellowDoorScript Begin OnActivate if IsActionRef player == 1 ;this gives a pop-up message on the Yellow combatants' door MessageBox "This is the door to the Yellow Team's practice area. It has been locked from the other side and cannnot be opened." endif End SCROSCPTlEDIDAREvilStonePulsar01SCRIPTSCHRSCDA! Xr 600 < s 0 == && ns 1f 8 f 0 <= s 1 == && nf 8  f 0 >f f X  -SCTXscn AREvilStonePulsar01SCRIPT ; this is just a pulsating red stone, made for the dreamworld quest ; it isn't a trap, just decorative ; will light up when the player gets whithin range short activated float timer begin gameMode if getDistance player < 600 && activated == 0 playgroup forward 0 set activated to 1 set timer to 8 endif if timer <= 0 && activated == 1 playgroup forward 0 set timer to 8 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSD CNAMESCVR activatedSLSD CNAMESCVRtimerSCROSCPT0EDIDARFloorSMASHER01SCRIPTSCHR%SCDA%b3/ Xir 0 == Xir 0 == && f 0 <= && ns 1f 7  s 0 == f X f Xs 1 s 1 == f 5 <= &&s 0  rn  f 0 >f f X  -SCTXscn ARFloorSMASHER01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short next float timer ref mySelf ref myParent begin onActivate if isActionRef mySelf == 0 && isActionRef player == 0 && timer <= 0 playgroup forward 0 set next to 1 set timer to 7 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef set init to 1 endif ; daisy-chain activation if next == 1 && timer <= 5 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSDSCVRinitSLSDSCVRnextSLSDSCVRtimerSLSDSCVRmySelfSLSDSCVR myParentSCRVSCRVSCROSCPTFEDIDARGasEmitter01ScriptSCHRSCDA  s 0 ==s 6 XM 3 / + f s f 0 <= s 0 > && n f sf f X  -SCTXscriptName ARGasEmitter01Script float timer short delay begin gameMode ; just occasionally repeat the gas spurts if delay == 0 ; random seed, so each emitter isn't spouting at exactly the same time set delay to 6 + ( getRandomPercent / 3 ) set timer to delay endif if ( timer <= 0 ) && ( delay > 0 ) ; time to spurt playgroup forward 1 set timer to delay endif set timer to timer - getSecondsPassed endSLSDSCVRtimerSLSDSCVRdelaySCPT@EDIDARGate01SCRIPTSCHR%SCDA% Xir 1 ==  s 0 ==Y( This gate is opened remotely.  Xir 0 == s 0 == &&  s 0 == ns 1* ns 0+s 1f 1s 1  s 0 == f X f X+s 1 s 1 == f 0 <= &&s 0  rn  f 0 >f f X  - X( 0 == s 1 == &&s 0-Fs 0s 0s 0+SCTXscn ARGate01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short open short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 if open == 0 message " This gate is opened remotely." endif elseif isActionRef mySelf == 0 && busy == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints else playgroup backward 0 set open to 0 disableLinkedPathPoints endif set next to 1 set timer to 1 set busy to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints endSLSD0 ==Y(SCVRinitSLSD  XiSCVRopenSLSD1*SCVRnextSLSD 1SCVRbusySLSDrnSCVRtimerSLSD s 1 SCVRmySelfSLSDoints SCVR myParentSCRVSCRVSCROSCPTK EDIDARGateAUTOCLOSE01SCRIPTSCHRSCDA& f X f X+ Xir 1 ==  s 0 ==Y) This gate is opened elsewhere.  Xir 0 ==  s 0 == ns 1* ns 0+s 1f 4 s 1 == f 3 <= &&s 0  rn s 1 == f 0 <= &&s 0 n+  f 0 >f f X  -SCTX@scn ARGateAUTOCLOSE01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay ; automatically closes after 4 sec delay short open short next float timer ref mySelf ref myParent begin onLoad ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints end begin onActivate if isActionRef player == 1 if open == 0 message " This gate is opened elsewhere." endif elseif isActionRef mySelf == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints else playgroup backward 0 set open to 0 disableLinkedPathPoints endif set next to 1 set timer to 4 endif end begin gameMode ; daisy-chain activation if next == 1 && timer <= 3 set next to 0 myParent.activate mySelf 1 endif if open == 1 && timer <= 0 set open to 0 playgroup backward 0 disableLinkedPathPoints endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSDX4SCVRopenSLSD-SCVRnextSLSDSCVRtimerSLSD2SCVRmySelfSLSDĿSCVR myParentSCRVSCRVSCROSCPT\EDIDARGateDelay01SCRIPTSCHRtSCDAt Xir 1 ==Y) This gate is opened elsewhere.  s 0 ==f 3s 1 ns 0+  s 0 ==+s 1 s 1 == f 0 <= && ns 0s 1*  f 0 >f f X  -Fs 0+SCTXscn ARGateDelay01SCRIPT short init short activated short open float timer begin onActivate if isActionRef player == 1 message " This gate is opened elsewhere." else if open == 0 set timer to 3 set activated to 1 else playgroup backward 1 set open to 0 disableLinkedPathPoints endif endif end begin gameMode if init == 0 ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif if activated == 1 && timer <= 0 playgroup forward 1 set activated to 0 set open to 1 enableLinkedPathPoints endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set open to 0 disableLinkedPathPoints endSLSDay01SCRSCVRinitSLSDbusy'.SCVR activatedSLSDif timeSCVRopenSLSDendif SCVRtimerSCROSCPT# EDIDARGatePREOPEN01SCRIPTSCHR! SCDA! Xir 1 ==  s 1 ==Y( This gate is opened remotely.  Xir 0 == s 0 == &&  s 0 == ns 1+ ns 0*s 1f 1s  1  s 0 == f X f Xs  1 s 1 == f 0 <= &&s 0  rn  f 0 >f f X  - X( 0 == s 1 == &&s  0-F*s 0s  0s 0SCTXescn ARGatePREOPEN01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short closed short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 if closed == 1 message " This gate is opened remotely." endif elseif isActionRef mySelf == 0 && busy == 0 if closed == 0 playgroup forward 0 set closed to 1 disableLinkedPathPoints else playgroup backward 0 set closed to 0 enableLinkedPathPoints endif set next to 1 set timer to 1 set busy to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end begin onReset reset3DState enableLinkedPathPoints set closed to 0 set busy to 0 set next to 0 end SLSD SCVRinitSLSDSCVRclosedSLSDSCVRnextSLSD SCVRbusySLSDSCVRtimerSLSDSCVRmySelfSLSDSCVR myParentSCRVSCRVSCROSCPTEEDIDArielleJurardScriptSCHRSCDA X:r 30 ==  s 0 ==s 1 X:r 40 ==  s 0 ==Qns 1SCTXIScriptName ArielleJurardScript short startconv short ignoreset Begin Gamemode if ( GetStage MG04Restore == 30 ) if ( startconv == 0 ) set startconv to 1 endif endif if ( GetStage MG04Restore == 40 ) if ( ignoreset == 0 ) setignorefriendlyhits 1 set ignoreset to 1 endif endif EndSLSDSCVR startconvSLSD== SCVR ignoresetSCRO+SCPTYkEDID!ARLesserWelkyndStoneStaticScriptSCHRSCDASCTXscriptName ARLesserWelkyndStoneStaticScript ; This welkyd stone type is not take-able until the player opens its cage. ; The cage's script is reponsible for disabling these objects and enabling the real welkynd stones begin onActivate end SCPT@@YEDIDArmandChristopheScriptSCHRSCDA%! s 0 == s 1 == && f 0 == &&\r\rf rX3r4rrs 1d s 1 == f 0 <= &&\r\rf rX3r4rrs 2d s 2 == f 0 <= &&\r\rf rX3r4rrs 3d s 3 == f 0 <= &&]\r\rf rX3r4rrs 4d s 4 == f 0 <= &&\r\rf rX3r 4rr s 5d s 5 == f 0 <= &&\r\rf rX3r 4rr s 6dd s 6 == f 0 <= &&]\rf rX3r 4rr s 7d s 7 == f 0 <= &&\r\rf rX3r 4rr s 8d s 8 == f 0 <= &&9 r n s 99]] s 0 > s 99 < &&f f X  - X:r 30 == Xr 256 <r X:r 80 == Xr 256 <rSCTX ScriptName ArmandChristopheScript Short ArmandStartSpeech Short LineSaid Float InfoLength Begin GameMode If LineSaid == 0 && ArmandStartSpeech == 1 && InfoLength == 0 AmuseiRef.Look ArmandChristopheRef MethredhelRef.Look ArmandChristopheRef Set InfoLength to ArmandChristopheRef.Say TG01Armand1 ArmandChristopheRef.SayTo Player TG01Armand1 Set LineSaid to 1 ArmandChristopheRef.PickIdle ElseIf LineSaid == 1 && InfoLength <= 0 AmuseiRef.Look MethredhelRef MethredhelRef.Look AmuseiRef Set InfoLength to ArmandChristopheRef.Say TG01Armand2 ArmandChristopheRef.SayTo AmuseiRef TG01Armand2 Set LineSaid to 2 ArmandChristopheRef.PickIdle ElseIf LineSaid == 2 && InfoLength <= 0 ArmandChristopheRef.Look AmuseiRef MethredhelRef.Look AmuseiRef Set InfoLength to AmuseiRef.Say TG01AmuseiComplain AmuseiRef.SayTo ArmandChristopheRef TG01AmuseiComplain Set LineSaid to 3 AmuseiRef.PickIdle ElseIf LineSaid == 3 && InfoLength <= 0 ArmandChristopheRef.StopLook AmuseiRef.Look MethredhelRef MethredhelRef.Look ArmandChristopheRef Set InfoLength to ArmandChristopheRef.Say TG01Armand3 ArmandChristopheRef.SayTo MethredhelRef TG01Armand3 Set LineSaid to 4 ArmandChristopheRef.PickIdle ElseIf LineSaid == 4 && InfoLength <= 0 AmuseiRef.Look ArmandChristopheRef MethredhelRef.Look Player Set InfoLength to ArmandChristopheRef.Say TG01Armand4 ArmandChristopheRef.SayTo Player TG01Armand4 Set LineSaid to 5 ArmandChristopheRef.PickIdle ElseIf LineSaid == 5 && InfoLength <= 0 AmuseiRef.Look MethredhelRef ArmandChristopheRef.Look MethredhelRef Set InfoLength to MethredhelRef.Say TG01MethredhelBrag MethredhelRef.SayTo ArmandChristopheRef TG01MethredhelBrag Set LineSaid to 6 MethredhelRef.PickIdle AmuseiRef.PickIdle ElseIf LineSaid == 6 && InfoLength <= 0 ArmandChristopheRef.StopLook AmuseiRef.Look MethredhelRef Set InfoLength to ArmandChristopheRef.Say TG01Armand5 ArmandChristopheRef.SayTo AmuseiRef TG01Armand5 Set LineSaid to 7 ArmandChristopheRef.PickIdle ElseIf LineSaid == 7 && InfoLength <= 0 AmuseiRef.Look Player MethredhelRef.Look Player Set InfoLength to ArmandChristopheRef.Say TG01Armand6 ArmandChristopheRef.SayTo Player TG01Armand6 Set LineSaid to 8 ArmandChristopheRef.PickIdle ElseIf LineSaid == 8 && InfoLength <= 0 SetStage TG01BestThief 10 Set LineSaid to 99 AmuseiRef.StopLook MethredhelRef.StopLook EndIf If LineSaid > 0 && LineSaid < 99 Set InfoLength to InfoLength - GetSecondsPassed EndIf If GetStage TG02Taxes == 30 If GetDistance Player < 256 AddScriptPackage ArmandGreetPC EndIF EndIf If GetStage TG03Elven == 80 If GetDistance Player < 256 AddScriptPackage ArmandGreetPC EndIF EndIf EndSLSDSCVRArmandStartSpeechSLSDSCVR LineSaidSLSDSCVR InfoLengthSCRO4SCROBVSCRORSCRO8SCROSCRO7SCRO!SCRO6SCRO5SCRO!SCRO4SCRO3SCROUSCROmHSCROqSCRONSCPTw EDIDARPitStairs01SCRIPTSCHR\SCDA\  Xir 1 == s 0 == &&Y)The stairs are raised remotely.,( Xir 0 == s 0 == && s 0 == && ns 1f 1s 1*,( Xir 0 == s 2 == && s 0 == && ns 0f 1s 1+  s 0 == f X f X+s 1 s 1 == f 0 <= && f X f X  rns 2 X( 0 == s 1 == &&s 0  f 0 >f f X  -"Fs 0s 0+SCTXscn ARPitStairs01SCRIPT ; on activation stairs go up, parent activated 1 sec later short init short busy short raised float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 && raised == 0 message "The stairs are raised remotely." elseif isActionRef player == 0 && raised == 0 && busy == 0 playgroup forward 0 set raised to 1 set timer to 1 set busy to 1 enableLinkedPathPoints elseif isActionRef player == 0 && raised == 2 && busy == 0 playgroup backward 0 set raised to 0 set timer to 1 set busy to 1 disableLinkedPathPoints endif end begin gameMode if init == 0 ; set up parent ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif if raised == 1 && timer <= 0 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set raised to 2 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set raised to 0 set busy to 0 disableLinkedPathPoints endSLSD?E ESCVRinitSLSD??SCVRbusySLSD??SCVRraisedSLSD?SCVRtimerSLSD0SCVRmySelfSLSDSCVR myParentSCRVSCRVSCROSCPTKx EDIDARPitStairs03SCRIPTSCHRSCDA  Xir 1 == s 0 == &&Y* The stairs are lowered remotely.  Xir 0 == s 0 == && ns 1f 1+  s 0 == f X f Xs 1 s 1 == f 0 <= &&  rns 2  f 0 >f f X  -Fs 0*SCTX0scn ARPitStairs03SCRIPT ; on activation stairs go down, parent activated 1 sec later short init short lowered float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 && lowered == 0 message "The stairs are lowered remotely." elseif isActionRef player == 0 && lowered == 0 playgroup forward 0 set lowered to 1 set timer to 1 disableLinkedPathPoints endif end begin gameMode if init == 0 ; set up parent ref vars set mySelf to getSelf set myParent to getParentRef set init to 1 endif if lowered == 1 && timer <= 0 myParent.activate mySelf 1 set lowered to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set lowered to 0 enableLinkedPathPoints endSLSDSCVRinitSLSDSCVRloweredSLSDSCVRtimerSLSDSCVRmySelfSLSDor. UnSCVR myParentSCRVSCRVSCROSCPTVEDIDARSecretWall01SCRIPTSCHRSCDA3 / Xir 0 == Xir 0 == && s 0 == &&  s 0 == ns 1* ns 0+s 1s 1f 1  s 0 == f X f X+s 1 s 1 == f 0 <= &&s 0  rn X( 0 == s 1 == &&s 0  f 0 >f f X  --Fs 0s 0s 0+SCTXscn ARSecretWall01SCRIPT short init short open short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 0 && isActionRef mySelf == 0 && busy == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints else playgroup backward 1 set open to 0 disableLinkedPathPoints endif set next to 1 set busy to 1 set timer to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints endSLSDSCVRinitSLSDSCVRopenSLSDSCVRnextSLSD3 /SCVRbusySLSD  SCVRtimerSLSD0+SCVRmySelfSLSD 0 ==SCVR myParentSCRVSCRVSCROSCPTar2EDIDARSecretWallFAST01SCRIPTSCHRSCDA3 / Xir 0 == Xir 0 == && s 0 == &&  s 0 == ns 1* ns 0+s 1s 1f 1  s 0 == f X f X+s 1 s 1 == f 0 <= &&s 0  rn X( 0 == s 1 == &&s 0  f 0 >f f X  --Fs 0s 0s 0+SCTXscn ARSecretWallFAST01SCRIPT short init short busy short open short next float timer ref mySelf ref myParent begin onActivate if isActionRef player == 0 && isActionRef myself == 0 && busy == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints else playgroup backward 1 set open to 0 disableLinkedPathPoints endif set next to 1 set busy to 1 set timer to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints end SLSDSCVRinitSLSD 1 ==SCVRbusySLSD-SCVRopenSLSDSCVRnextSLSD`SCVRtimerSLSDaSCVRmySelfSLSDaSCVR myParentSCRVSCRVSCROSCPTsrEDIDARSwingBlade01ScriptSCHRxSCDAxj s 0 == f XM  f 80 >f 1  f 60 >f 2  f 40 >f 3  f 0 >=f 4s 1 f 0 <= s 1 == &&s 2f 3 f 0 <= s 2 == &&  s 0 == ns 1 ns 0f 3f f X  -SCTX scriptName ARSwingBlade01Script float timer short delay short swingState short start begin gameMode ; swing the blade if start == 0 ; random seed, so each blade doesn't start swinging at the same time set timer to getRandomPercent if timer > 80 set timer to 1 elseif timer > 60 set timer to 2 elseif timer > 40 set timer to 3 elseif timer >= 0 set timer to 4 endif set start to 1 endif if ( timer <= 0 ) && ( start == 1 ) set start to 2 set timer to 3 endif if ( timer <= 0 ) && ( start == 2 ) if swingState == 0 playgroup forward 1 set swingState to 1 else playgroup backward 1 set swingState to 0 endif set timer to 3 endif set timer to timer - getSecondsPassed endSLSDSCVRtimerSLSDSCVRdelaySLSDSCVR swingStateSLSDSCVRstartSCPTEDIDARSwitch01SCRIPTSCHR SCDA  s 0 == f X f X  r n ns 1 r XCr 1 ==rrrrrrr r2 X( 0 == s 1 == &&s 0SCTXascn ARSwitch01SCRIPT short busy ref target ref mySelf begin onActivate if busy == 0 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 playgroup forward 0 set busy to 1 endif If Player.GetInCell SkingradCastleDungeon == 1 AnvilPrisonDoorRef.Lock BravilPrisonDoorRef.Lock BrumaPrisonDoorRef.Lock CheydinhalPrisonDoorRef.Lock ChorrolPrisonDoorRef.Lock ICPrisonDoorRef.Lock LeyawiinPrisonDoorRef.Lock SkingradPrisonDoorRef.Lock EndIf end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif endSLSDSCVRbusySLSDSCVRtargetSLSDSCVRmySelfSCRVSCROŽSCRO̝SCROSCROSCRO7 SCRO5RSCRO sSCROSCRVSCROSCROРSCPTDRx EDIDARTallWallAnim01SCRIPTSCHRSCDA3/ Xir 0 == Xir 0 == && s 0 == &&  s 0 == ns 1*s 1f 1s 1  s 0 == f X f X+s 1 s 1 == f 0 <= &&s 0  rn  f 0 >f f X  - X( 0 == s 1 == &&s 0-Fs 0s 0s 0+SCTXscn ARTallWallAnim01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short open short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 0 && isActionRef mySelf == 0 && busy == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints endif set next to 1 set timer to 1 set busy to 1 endif end begin gameMode if init == 0 ; set up parent ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked path nodes disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints end SLSDSCVRinitSLSD SCVRopenSLSDSCVRnextSLSDSCVRbusySLSDSCVRtimerSLSDSCVRmySelfSLSD\SCVR myParentSCRVSCRVSCROSCPT@y EDIDARTallWallCarvingAnim01SCRIPTSCHRSCDA& f X f X+  Xir 1 == s 0 == &&  s 0 == n  rns 1*s 1s 1%! s 1 == f 0 <= && s 1 == &&s 0 ns 2  f 0 >f f X  -'# X( 0 == s 1 == && s 2 == &&s 09 rnPSCTXscn ARTallWallCarvingAnim01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short open short next short busy float timer ref mySelf ref myParent begin onLoad ; set up parent ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked path nodes disableLinkedPathPoints end begin onActivate if isActionRef UmbacanoRef == 1 && busy == 0 if open == 0 ; animate to "show carving" playgroup forward 0 ; activate sliding steps myParent.activate mySelf 1 set open to 1 enableLinkedPathPoints endif set next to 1 ; set timer to 3 set busy to 1 endif end begin gameMode ; daisy-chain activation if next == 1 && timer <=0 && open == 1 set next to 0 playgroup backward 0 set open to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 && open == 2 set busy to 0 setstage ms27 80 endif end SLSDȰSCVRopenSLSDURESCVRnextSLSDURESCVRbusySLSDURESCVRtimerSLSDSCVRmySelfSLSD SCVR myParentSCRVSCRVSCROESCROSCPT qEDIDARTrapBridgeBlade01SCRIPTSCHR SCDA  s 0 == Xir 0 == &&f 20 f 500 f  1.5f 20s 0 ns 1f 10Q   s 1 == f 9 <= f 0 > &&f 0f 0 f 4 <= s 0 == && ns 1 s 0 == f 8 <= && f  X f  X  rns 1  f 0 <=f 20 f 500 nf 10s 0f f X  -Fs 0SCTXgscn ARTrapBridgeBlade01SCRIPT ; Dropping blade for use on AR Pit Bridge sections. ; Set activated to 1 to start, it will continue dropping/lifting with 5 second intervals short activated short reset short nextTrap float timer ref target ref mySelf float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if activated == 0 && isActionRef player == 0 ; set up the damage values set fTrapDamage to 20 set fTrapPushBack to 500 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 playgroup forward 0 set activated to 1 set timer to 10 endif end begin gameMode Activate if activated == 1 ; after first second of the sequence, the blade will stop dealing damage ; this is so the PC has a chance to jump over it if timer <= 9 && fTrapDamage > 0 set fTrapDamage to 0 set fTrapPushBack to 0 endif ; halfway through cycle, bring blade back up if timer <= 4 && reset == 0 playgroup backward 0 set reset to 1 endif ;set the next trap going if its linked as a parent if nextTrap == 0 && timer <= 8 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set nextTrap to 1 endif ;end of cycle, reset and bring blade down if timer <= 0 set fTrapDamage to 20 set fTrapPushBack to 500 playgroup forward 0 set timer to 10 set reset to 0 endif set timer to timer - getSecondsPassed endif end begin onReset reset3DState set activated to 0 end SLSDSCVR activatedSLSDSCVRresetSLSDSCVR nextTrapSLSDSCVRtimerSLSD SCVRtargetSLSD SCVRmySelfSLSDSCVR fTrapDamageSLSD SCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCRV SCRV SCROSCPTEDID ARTrapBridgeBladeRANDOM01SCRIPTSCHR1 SCDA1#  s 0 ==f 1 XM 3 / +f 20 f 1000 f  1.5f 20s 0s  1s 1 f 5 <= s 0 == && ns 1  f 0 <= nf 11s 0  f 0 >f f X  - SCTXscn ARTrapBridgeBladeRANDOM01SCRIPT ; Dropping blade for use on AR Pit Bridge sections. ; Self-activated, starts at random time short start short reset float timer float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode if start == 0 set timer to 1 + ( getRandomPercent / 3 ) ; set up the damage values set fTrapDamage to 20 set fTrapPushBack to 1000 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set start to 1 set reset to 1 endif ; halfway through the delay period, bring the blade back up if timer <= 5 && reset == 0 playgroup backward 0 set reset to 1 endif if timer <= 0 playgroup forward 0 set timer to 11 set reset to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif trapUpdate end SLSD SCVRstartSLSD_SCVRresetSLSDSCVRtimerSLSDSCVR fTrapDamageSLSD _ SCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCPT EDIDARTrapBridgeCrumble01SCRIPTSCHRSCDA  s 0 == f X f Xs 13/ Xir 0 == s 0 == && Xir 0 == &&  rn nD z@s 1+Fs 0SCTXscn ARTrapBridgeCrumble01SCRIPT short init short activated ref mySelf ref myParent begin onActivate if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef set init to 1 endif if isActionRef player == 0 && activated == 0 && isActionRef mySelf == 0 myParent.activate mySelf 1 playgroup unequip 0 triggerHitShader 4 set activated to 1 disableLinkedPathPoints endif end begin onReset reset3DState set activated to 0 endSLSD NAMESCVRinitSLSD NAMESCVR activatedSLSD NAMESCVRmySelfSLSD NAMESCVR myParentSCRVSCRVSCROSCPTEDIDARTrapChannelSpikes01SCRIPTSCHRSCDA  s 0 == Xir 0 == &&f 20 f 1200 f 1.5f 20s 0s 2 Xir 0 ==s 0 s 2 == f 0 <= &&s 3f 9 n s 3 == f 0 <= && nf 10s 2  s 4 == n<s 0  f 0 >f f X  -Fs 0SCTXscn ARTrapChannelSpikes01SCRIPT ; Flies down the channel, pause, return, pause, and continue the cycle short activated float timer short counter float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if activated == 0 && isActionRef player == 0 ; set up the damage values set fTrapDamage to 20 set fTrapPushBack to 1200 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set activated to 2 elseif isActionRef player == 0 set activated to 0 endif end begin gameMode if activated == 2 && timer <= 0 ; fly down the channel set activated to 3 set timer to 9 ; set counter to counter + 1 playgroup forward 0 elseif activated == 3 && timer <= 0 ; return to starting position playgroup backward 0 set timer to 10 set activated to 2 ; after five journeys stop ; if counter == 5 ; set counter to 0 ; set activated to 0 ; endif elseif activated == 4 ; return to starting position, reset everything playgroup backward 60 set activated to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set activated to 0 end SLSDrusDATSCVR activatedSLSDSCVRtimerSLSDSCVRcounterSLSDSCVR fTrapDamageSLSDelocitySCVRfLevelledDamageSLSD SCVRfTrapPushBackSLSDf SCVRfTrapMinVelocitySLSDsSCVRbTrapContinuousSCROSCPT EDIDARTrapEvilStone01SCRIPTSCHRSCDAf,( Xir 0 == f 0 <= && s 0 == && nf 8s 1s 1T s 1 == f 5 <= && f X f X  rns 0 rXP 5 <=s 1$ rXP 6 >= rXP 10 <= &&s 2%! rXP 11 >= rXP 15 <= &&s 3%! rXP 16 >= rXP 20 <= &&s 4 rXP 21 >=s 5$ f 4 <= s 1 == && s 0 > &&  Xr 700 <  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rr  s 5 ==rrs 0  f 0 >f f X  -SCTXscn ARTrapEvilStone01SCRIPT ; when activated will shoot fireball at player after 3 sec float timer short ready ref mySelf ref myParent short next short SpellRank begin onActivate if isActionRef player == 0 && timer <= 0 && ready == 0 playgroup forward 1 set timer to 8 set ready to 1 set next to 1 endif end begin gameMode ; daisy-chain if next == 1 && timer <= 5 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set next to 0 endif ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 5 set SpellRank to 1 elseif ( player.GetLevel >= 6 ) && ( player.GetLevel <= 10 ) set SpellRank to 2 elseif ( player.GetLevel >= 11 ) && ( player.GetLevel <= 15 ) set SpellRank to 3 elseif ( player.GetLevel >= 16 ) && (player.GetLevel <= 20) set SpellRank to 4 elseif ( player.GetLevel >= 21 ) set SpellRank to 5 endif if timer <= 4 && ready == 1 && SpellRank > 0 ; check to make sure player is still in range if getDistance player < 700 ;Debug message ;message "Rank %.0f Freezy Spell", SpellRank, 10 if SpellRank == 1 cast StandardFrostDamageTarget1Novice player elseif SpellRank == 2 cast StandardFrostDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardFrostDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardFrostDamageTarget4Expert player elseif SpellRank == 5 cast StandardFrostDamageTarget5Master player endif endif set ready to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSDhockDamSCVRtimerSLSD 0 ==SCVRreadySLSD 1SCVRmySelfSLSD XSCVR myParentSLSDP 7 SCVRnextSLSD%!SCVR SpellRankSCRVSCRVSCROSCRO SCRO SCRO SCRO SCRO SCPT #8 EDIDARTrapEvilStone02SCRIPTSCHRSCDAZ  Xir 0 == f 0 <= && nf 8s 1s 1T s 1 == f 5 <= && f X f X  rns 0 rXP 5 <=s 1$ rXP 6 >= rXP 10 <= &&s 2%! rXP 11 >= rXP 15 <= &&s 3%! rXP 16 >= rXP 20 <= &&s 4 rXP 21 >=s 5$ f 4 <= s 1 == && s 0 > &&  Xr 700 <  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rr  s 5 ==rrs 0  f 0 >f f X  -SCTX~scn ARTrapEvilStone02SCRIPT ; when activated will shoot shockbolt at player after 3 sec float timer short ready ref mySelf ref myParent short next short SpellRank begin onActivate if isActionRef player == 0 && timer <= 0 playgroup forward 1 set timer to 8 set ready to 1 set next to 1 endif end begin gameMode ; daisy-chain if next == 1 && timer <= 5 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set next to 0 endif ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 5 set SpellRank to 1 elseif ( player.GetLevel >= 6 ) && ( player.GetLevel <= 10 ) set SpellRank to 2 elseif ( player.GetLevel >= 11 ) && ( player.GetLevel <= 15 ) set SpellRank to 3 elseif ( player.GetLevel >= 16 ) && (player.GetLevel <= 20) set SpellRank to 4 elseif ( player.GetLevel >= 21 ) set SpellRank to 5 endif if timer <= 4 && ready == 1 && SpellRank > 0 ; check to make sure player is still in range if getDistance player < 700 ;Debug message ;message "Rank %.0f Zappy Spell", SpellRank, 10 if SpellRank == 1 cast StandardShockDamageTarget1Novice player elseif SpellRank == 2 cast StandardShockDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardShockDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardShockDamageTarget4Expert player elseif SpellRank == 5 cast StandardShockDamageTarget5Master player endif endif set ready to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSD 4 <= SCVRtimerSLSDs 2 =SCVRreadySLSDrrSCVRmySelfSLSDURESCVR myParentSLSDURESCVRnextSLSDURESCVR SpellRankSCRVSCRVSCROSCRO SCRO SCRO SCRO SCRO SCPTB EDID ARTrapEvilStoneAUTOFIRE01SCRIPTSCHRSCDA\ Xir 0 ==  s 0 ==s 1f 0s 0p s 0 == s 0 == &&! Xr 700 < f 0 <= && ns 1f 8 rXP 5 <=s 1$ rXP 6 >= rXP 10 <= &&s 2%! rXP 11 >= rXP 15 <= &&s 3%! rXP 16 >= rXP 20 <= &&s 4 rXP 21 >=s 5$ f 4 <= s 1 == && s 0 > &&  Xr 700 <  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rr  s 5 ==rrs 0s 0  f 0 >f f X  -Fs 0SCTXscn ARTrapEvilStoneAUTOFIRE01SCRIPT ; come within range and this thing will shoot a fireball at you (range is 700) float timer short ready short disabled short SpellRank begin onActivate if isActionRef player == 0 if disabled == 0 set disabled to 1 set timer to 0 else set disabled to 0 endif endif end begin gameMode if SpellRank == 0 && disabled == 0 if getDistance player < 700 && timer <= 0 playgroup forward 0 set ready to 1 set timer to 8 ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 5 set SpellRank to 1 elseif ( player.GetLevel >= 6 ) && ( player.GetLevel <= 10 ) set SpellRank to 2 elseif ( player.GetLevel >= 11 ) && ( player.GetLevel <= 15 ) set SpellRank to 3 elseif ( player.GetLevel >= 16 ) && (player.GetLevel <= 20) set SpellRank to 4 elseif ( player.GetLevel >= 21 ) set SpellRank to 5 endif endif endif if timer <= 4 && ready == 1 && SpellRank > 0 ; check to make sure player is still in range if getDistance player < 700 ;Debug message ;message "Rank %.0f Freezy Spell", SpellRank, 10 if SpellRank == 1 cast StandardFrostDamageTarget1Novice player elseif SpellRank == 2 cast StandardFrostDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardFrostDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardFrostDamageTarget4Expert player elseif SpellRank == 5 cast StandardFrostDamageTarget5Master player endif set ready to 0 set spellrank to 0 endif endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set SpellRank to 0 end SLSDPESCVRtimerSLSDPESCVRreadySLSD 0 ==SCVR disabledSLSDs 0SCVR SpellRankSCROSCRO SCRO SCRO SCRO SCRO SCPTB $8 EDID ARTrapEvilStoneAUTOFIRE02SCRIPTSCHRSCDA\ Xir 0 ==  s 0 ==s 1f 0s 0p s 0 == s 0 == &&! Xr 700 < f 0 <= && ns 1f 8 rXP 5 <=s 1$ rXP 6 >= rXP 10 <= &&s 2%! rXP 11 >= rXP 15 <= &&s 3%! rXP 16 >= rXP 20 <= &&s 4 rXP 21 >=s 5$ f 4 <= s 1 == && s 0 > &&  Xr 700 <  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rr  s 5 ==rrs 0s 0  f 0 >f f X  -Fs 0SCTXscn ARTrapEvilStoneAUTOFIRE02SCRIPT ; come within range and this thing will shoot a shockbolt at you (range is 700) float timer short ready short disabled short SpellRank begin onActivate if isActionRef player == 0 if disabled == 0 set disabled to 1 set timer to 0 else set disabled to 0 endif endif end begin gameMode if SpellRank == 0 && disabled == 0 if getDistance player < 700 && timer <= 0 playgroup forward 0 set ready to 1 set timer to 8 ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 5 set SpellRank to 1 elseif ( player.GetLevel >= 6 ) && ( player.GetLevel <= 10 ) set SpellRank to 2 elseif ( player.GetLevel >= 11 ) && ( player.GetLevel <= 15 ) set SpellRank to 3 elseif ( player.GetLevel >= 16 ) && (player.GetLevel <= 20) set SpellRank to 4 elseif ( player.GetLevel >= 21 ) set SpellRank to 5 endif endif endif if timer <= 4 && ready == 1 && SpellRank > 0 ; check to make sure player is still in range if getDistance player < 700 ;Debug message ;message "Rank %.0f Zappy Spell", SpellRank, 10 if SpellRank == 1 cast StandardShockDamageTarget1Novice player elseif SpellRank == 2 cast StandardShockDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardShockDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardShockDamageTarget4Expert player elseif SpellRank == 5 cast StandardShockDamageTarget5Master player endif set ready to 0 set spellrank to 0 endif endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set SpellRank to 0 end SLSDTarSCVRtimerSLSDSCVRreadySLSDSCVR disabledSLSDSCVR SpellRankSCROSCRO SCRO SCRO SCRO SCRO SCPTM NZEDID#ARTrapEvilStoneAUTOFIREFAR01SCRIPTSCHRSCDA\ Xir 0 ==  s 0 ==s 1f 0s 0q s 0 == s 0 == &&" Xr 1400 < f 0 <= && ns 1f 8 rXP 5 <=s 1$ rXP 6 >= rXP 10 <= &&s 2%! rXP 11 >= rXP 15 <= &&s 3%! rXP 16 >= rXP 20 <= &&s 4 rXP 21 >=s 5$ f 4 <= s 1 == && s 0 > &&  Xr 700 <  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rr  s 5 ==rrs 0s 0  f 0 >f f X  -Fs 0SCTXscn ARTrapEvilStoneAUTOFIREFAR01SCRIPT ; come within range and this thing will shoot a fireball at you (range is 1400) float timer short ready short disabled short SpellRank begin onActivate if isActionRef player == 0 if disabled == 0 set disabled to 1 set timer to 0 else set disabled to 0 endif endif end begin gameMode if SpellRank == 0 && disabled == 0 if getDistance player < 1400 && timer <= 0 playgroup forward 0 set ready to 1 set timer to 8 ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 5 set SpellRank to 1 elseif ( player.GetLevel >= 6 ) && ( player.GetLevel <= 10 ) set SpellRank to 2 elseif ( player.GetLevel >= 11 ) && ( player.GetLevel <= 15 ) set SpellRank to 3 elseif ( player.GetLevel >= 16 ) && (player.GetLevel <= 20) set SpellRank to 4 elseif ( player.GetLevel >= 21 ) set SpellRank to 5 endif endif endif if timer <= 4 && ready == 1 && SpellRank > 0 ; check to make sure player is still in range if getDistance player < 700 ;Debug message ;message "Rank %.0f Freezy Spell", SpellRank, 10 if SpellRank == 1 cast StandardFrostDamageTarget1Novice player elseif SpellRank == 2 cast StandardFrostDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardFrostDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardFrostDamageTarget4Expert player elseif SpellRank == 5 cast StandardFrostDamageTarget5Master player endif set ready to 0 set spellrank to 0 endif endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set SpellRank to 0 end SLSDf timerSCVRtimerSLSDndif SCVRreadySLSDrenticeSCVR disabledSLSDSCVR SpellRankSCROSCRO SCRO SCRO SCRO SCRO SCPTL %8 EDID#ARTrapEvilStoneAUTOFIREFAR02SCRIPTSCHRSCDA\ Xir 0 ==  s 0 ==s 1f 0s 0q s 0 == s 0 == &&" Xr 1400 < f 0 <= && ns 1f 8 rXP 5 <=s 1$ rXP 6 >= rXP 10 <= &&s 2%! rXP 11 >= rXP 15 <= &&s 3%! rXP 16 >= rXP 20 <= &&s 4 rXP 21 >=s 5$ f 4 <= s 1 == && s 0 > &&  Xr 700 <  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rr  s 5 ==rrs 0s 0  f 0 >f f X  -Fs 0SCTXscn ARTrapEvilStoneAUTOFIREFAR02SCRIPT ; come within range and this thing will shoot a fireball at you (range is 1400) float timer short ready short disabled short SpellRank begin onActivate if isActionRef player == 0 if disabled == 0 set disabled to 1 set timer to 0 else set disabled to 0 endif endif end begin gameMode if SpellRank == 0 && disabled == 0 if getDistance player < 1400 && timer <= 0 playgroup forward 0 set ready to 1 set timer to 8 ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 5 set SpellRank to 1 elseif ( player.GetLevel >= 6 ) && ( player.GetLevel <= 10 ) set SpellRank to 2 elseif ( player.GetLevel >= 11 ) && ( player.GetLevel <= 15 ) set SpellRank to 3 elseif ( player.GetLevel >= 16 ) && (player.GetLevel <= 20) set SpellRank to 4 elseif ( player.GetLevel >= 21 ) set SpellRank to 5 endif endif endif if timer <= 4 && ready == 1 && SpellRank > 0 ; check to make sure player is still in range if getDistance player < 700 ;Debug message ;message "Rank %.0f Zappy Spell", SpellRank, 10 if SpellRank == 1 cast StandardShockDamageTarget1Novice player elseif SpellRank == 2 cast StandardShockDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardShockDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardShockDamageTarget4Expert player elseif SpellRank == 5 cast StandardShockDamageTarget5Master player endif set ready to 0 set spellrank to 0 endif endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set SpellRank to 0 end SLSDsSCVRtimerSLSDr 1SCVRreadySLSD  SCVR disabledSLSDSCVR SpellRankSCROSCRO SCRO SCRO SCRO SCRO SCPT EDID"ARTrapEvilStoneAUTOFIREFireSCRIPTSCHRSCDA\ Xir 0 ==  s 0 ==s 1f 0s 0& s 0 == s 0 == &&! Xr 700 < f 0 <= && ns 1f 8 rXP 7 <=s 1$ rXP 8 >= rXP 13 <= &&s 2%! rXP 14 >= rXP 20 <= &&s 3 rXP 21 >=s 4 s 1 == f 5 <= && f X f X  rns 0  f 4 <= s 1 == &&  Xr 700 f f X  -Fs 0SCTXscn ARTrapEvilStoneAUTOFIRE_FireSCRIPT ; come within range and this thing will shoot a fireball at you (range is 700) float timer short ready short disabled ref mySelf ref myParent short next short SpellRank begin onActivate if isActionRef player == 0 if disabled == 0 set disabled to 1 set timer to 0 else set disabled to 0 endif endif end begin gameMode if SpellRank == 0 && disabled == 0 if getDistance player < 700 && timer <= 0 playgroup forward 0 set ready to 1 set timer to 8 endif ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 7 set SpellRank to 1 elseif ( player.GetLevel >= 8 ) && ( player.GetLevel <= 13 ) set SpellRank to 2 elseif ( player.GetLevel >= 14 ) && ( player.GetLevel <= 20 ) set SpellRank to 3 elseif ( player.GetLevel >= 21 ) set SpellRank to 4 endif ; daisy-chain if next == 1 && timer <= 5 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set next to 0 endif if timer <= 4 && ready == 1 ; check to make sure player is still in range if getDistance player < 700 ;Debug message message "Rank %.0f Fireball", SpellRank, 10 if SpellRank == 1 cast StandardFireDamageTarget1Novice player elseif SpellRank == 2 cast StandardFireDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardFireDamageArea3Journeyman player elseif SpellRank == 4 cast StandardFireDamageArea4Expert player endif endif set ready to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif endif end begin onReset reset3DState set SpellRank to 0 endSLSDSCVRtimerSLSD SCVRreadySLSDSCVR disabledSLSDSCVRmySelfSLSD SCVR myParentSLSD SCVRnextSLSDSCVR SpellRankSCRVSCRVSCROSCROߗ SCRO SCRO SCRO SCPTe EDIDARTrapEvilStoneFAST01SCRIPTSCHR[SCDA[f,( Xir 0 == f 0 <= && s 0 == && nf 8s 1s 1 s 1 == f 8 <= && f X f X  rns 0 rXP 7 <=s 1$ rXP 8 >= rXP 13 <= &&s 2%! rXP 14 >= rXP 20 <= &&s 3 rXP 21 >=s 4  f 4 <= s 1 == &&  s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rrs 0  f 0 >f f X  -SCTXyscn ARTrapEvilStoneFAST01SCRIPT ; when activated will shoot fireball at player after 3 sec float timer short ready ref mySelf ref myParent short next short SpellRank begin onActivate if isActionRef player == 0 && timer <= 0 && ready == 0 playgroup forward 1 set timer to 8 set ready to 1 set next to 1 endif end begin gameMode ; daisy-chain if next == 1 && timer <= 8 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set next to 0 endif ;This section will choose the trap spell based on the PC's level (hopefully) if player.GetLevel <= 7 set SpellRank to 1 elseif ( player.GetLevel >= 8 ) && ( player.GetLevel <= 13 ) set SpellRank to 2 elseif ( player.GetLevel >= 14 ) && ( player.GetLevel <= 20 ) set SpellRank to 3 elseif ( player.GetLevel >= 21 ) set SpellRank to 4 endif if timer <= 4 && ready == 1 ;Debug message ;message "Rank %.0f Fireball", SpellRank, 10 if SpellRank == 1 cast StandardFrostDamageTarget1Novice player elseif SpellRank == 2 cast StandardFrostDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardFrostDamageTarget3Journeyman player elseif SpellRank == 4 cast StandardFrostDamageTarget4Expert player endif set ready to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSDSCVRtimerSLSDSCVRreadySLSDSCVRmySelfSLSDSCVR myParentSLSDSCVRnextSLSDSCVR SpellRankSCRVSCRVSCROSCRO SCRO SCRO SCRO SCPTg EDIDARTrapEvilStoneFireSCRIPTSCHRqSCDAqZ  Xir 0 == f 0 <= && nf 8s 1s 1 rXP 7 <=s 1$ rXP 8 >= rXP 13 <= &&s 2%! rXP 14 >= rXP 20 <= &&s 3 rXP 21 >=s 4 s 1 == f 5 <= && f X f X  rns 0  f 4 <= s 1 == &&YRank %Of Fireballs   s 1 ==rr  s 2 ==rr  s 3 ==rr  s 4 ==rrs 0  f 0 >f f X  -SCTXgscn ARTrapEvilStoneFireSCRIPT ; when activated will shoot fireball at player after 3 sec float timer short ready ref mySelf ref myParent short next short SpellRank begin onActivate if isActionRef player == 0 && timer <= 0 playgroup forward 1 set timer to 8 set ready to 1 set next to 1 endif end begin gameMode ;This section will choose the trap spell based on the PC's level... hopefully if player.GetLevel <= 7 set SpellRank to 1 elseif ( player.GetLevel >= 8 ) && ( player.GetLevel <= 13 ) set SpellRank to 2 elseif ( player.GetLevel >= 14 ) && ( player.GetLevel <= 20 ) set SpellRank to 3 elseif ( player.GetLevel >= 21 ) set SpellRank to 4 endif ; daisy-chain if next == 1 && timer <= 5 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set next to 0 endif if timer <= 4 && ready == 1 ;Debug message message "Rank %Of Fireball", SpellRank, 10 if SpellRank == 1 cast StandardFireDamageTarget1Novice player elseif SpellRank == 2 cast StandardFireDamageTarget2Apprentice player elseif SpellRank == 3 cast StandardFireDamageArea3Journeyman player elseif SpellRank == 4 cast StandardFireDamageArea4Expert player endif set ready to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSDURESCVRtimerSLSDURESCVRreadySLSDURESCVRmySelfSLSDURESCVR myParentSLSDURESCVRnextSLSDURESCVR SpellRankSCRVSCRVSCROSCROߗ SCRO SCRO SCRO SCPTuEDIDARTrapGasCloud01SCRIPTSCHRmSCDAm_  s 0 ==f 2f 0 f 0.125f 0s 1s 1SCTXscn ARTrapGasCloud01SCRIPT ; Self-activated, no trigger required short init float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode if init == 0 ; set up the damage values set fTrapDamage to 2 set fTrapPushBack to 0 set fLevelledDamage to 0.125 set fTrapMinVelocity to 0 set bTrapContinuous to 1 set init to 1 endif end SLSD??SCVRinitSLSD~SCVR fTrapDamageSLSDdSCVRfLevelledDamageSLSDX( YSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCPT$ EDIDARTrapGasEmitter01SCRIPTSCHR SCDA  s 0 == f X f Xs  1' # Xir 0 == Xir 0 == &&s  2f 10f 0 f  0.125f 20s 1f 8s 1 n s 1 == f 7 <= &&s 0  rn f 0 <= s 2 == && nf 10  f 0 >f f X  -SCTXscn ARTrapGasEmitter01SCRIPT ; spurt gas on activation short init float timer short next ref mySelf ref myParent float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if init == 0 set mySelf to getSelf set myParent to getParentRef set init to 1 endif if isActionRef player == 0 && isActionRef mySelf == 0 set init to 2 ; set up the damage values set fTrapDamage to 10 set fTrapPushBack to 0 set fLevelledDamage to 0.125 set fTrapMinVelocity to 20 set bTrapContinuous to 1 set timer to 8 set next to 1 playgroup forward 1 endif end begin gameMode ;daisy-chain if next == 1 && timer <= 7 set next to 0 myParent.activate mySelf 1 endif if timer <= 0 && init == 2 playgroup forward 1 set timer to 10 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSD SCVRinitSLSDSCVRtimerSLSDSCVRnextSLSDSCVRmySelfSLSDeset toSCVR myParentSLSD 0 sSCVR fTrapDamageSLSD r to tiSCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCRVSCRVSCROSCPTyEDIDARTrapGasEmitterRANDOM01SCRIPTSCHRSCDA  s 0 ==f 6 XM 3 / +f 2 f 0.125f 0f 10s 1s 1  f 0 <= nf 11f f X  -  f 7 < SCTXscn ARTrapGasEmitterRANDOM01SCRIPT ; self-activated, randomly spurts gas float timer short started float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode if started == 0 ; "random" seed, so each emitter isn't spouting at exactly the same time set timer to 6 + ( getRandomPercent / 3 ) ; set up the damage values set fTrapDamage to 2 set fLevelledDamage to 0.125 set fTrapPushBack to 0 set fTrapMinVelocity to 10 set bTrapContinuous to 1 set started to 1 endif if ( timer <= 0 ) ; time to spurt playgroup forward 1 set timer to 11 endif set timer to timer - getSecondsPassed if timer < 7 trapUpdate endif end SLSDSCSCVRtimerSLSDrapDamaSCVRstartedSLSDSCVR fTrapDamageSLSDSCVRfLevelledDamageSLSD SCVRfTrapPushBackSLSDhSCVRfTrapMinVelocitySLSDendif SCVRbTrapContinuousSCPT^HEDIDARTrapGasGrate01SCRIPTSCHR SCDA  s 0 == f X f Xs  1'# Xir 0 == Xir 0 == &&f 5f  0f 0f 0s 1f 24s 1 n s 1 == f 23 <= && f X f X  rns 0 f 0 <= s 1 == &&f 0s  0f f X  -SCTXscn ARTrapGasGrate01SCRIPT ; spurt gas on activation float timer short next short activated ref mySelf ref myParent float fTrapDamage float fTrapPushBack float fTrapMinVelocity float fLevelledDamage short bTrapContinuous begin onActivate if activated == 0 set myParent to getParentRef set mySelf to getSelf set activated to 1 endif if isActionRef player == 0 && isActionRef mySelf == 0 ; set up the damage values set fTrapDamage to 5 set fLevelledDamage to 0 set fTrapPushBack to 0 set fTrapMinVelocity to 0 set bTrapContinuous to 1 set timer to 24 set next to 1 playgroup forward 1 endif end begin gameMode ;daisy-chain if next == 1 && timer <= 23 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 set next to 0 endif ;reset for next time if timer <= 0 && activated == 1 set fTrapDamage to 0 set activated to 0 endif set timer to timer - getSecondsPassed endSLSDSCVRtimerSLSDSCVRnextSLSD SCVR activatedSLSDSCVRmySelfSLSDSCVR myParentSLSD SCVR fTrapDamageSLSDTSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSD YÑ ESCVRfLevelledDamageSLSDSCVRbTrapContinuousSCRVSCRVSCROSCPTkEDIDARTrapLongSpikes01SCRIPTSCHRmSCDAm_  s 0 ==f 15 f 1.5f 0f 20s 0s 1SCTXscn ARTrapLongSpikes01SCRIPT ; Self-activated, no trigger required short init float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode if init == 0 ; set up the damage values set fTrapDamage to 15 set fLevelledDamage to 1.5 set fTrapPushBack to 0 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set init to 1 endif endSLSDSCVRinitSLSDSCVR fTrapDamageSLSDSCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCPTsEDIDARTrapSpikePit01SCRIPTSCHRSCDAE  Xir 0 == f 0 <= && nf 10  s 0 ==f 20 f 1.5 f 200f 20s 0s 1  f 0 >f f X  -SCTXscn ARTrapSpikePit01SCRIPT ; Self-activated, no trigger required short init float timer float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if isActionRef player == 0 && timer <= 0 playgroup forward 0 set timer to 10 endif end begin gameMode if init == 0 ; set up the damage values set fTrapDamage to 20 set fLevelledDamage to 1.5 set fTrapPushBack to 200 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set init to 1 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSDSCVRinitSLSDSCVRtimerSLSDSCVR fTrapDamageSLSD SCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCROSCPT+ EDIDARTrapSwingBladeFAST01SCRIPTSCHR SCDA s 0 ==f 2s 1 nf 20 f 1000 f  1.5f  20s  0s 1  s 1 == s 0 == f 2 <= && ns 1 s 1 == f 0 <= && ns 0f 4 s 0 == f 7 <= && f X f X  rns 1f f X  - Fs 0SCTXscn ARTrapSwingBladeFAST01SCRIPT ; start swinging on activation float timer short swingState short activated short nextTrap ref target ref mySelf float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if activated == 0 set timer to 2 set swingState to 1 playgroup forward 0 set fTrapDamage to 20 set fTrapPushBack to 1000 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set activated to 1 endif end begin gameMode if activated == 1 ; swing the blade if swingState == 0 && timer <= 2 playgroup forward 0 set swingState to 1 elseif swingState == 1 && timer <= 0 playgroup backward 0 set swingState to 0 set timer to 4 endif ; set the next trap going if its linked as a parent if nextTrap == 0 && timer <= 7 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set nextTrap to 1 endif set timer to timer - getSecondsPassed trapUpdate endif end begin onReset reset3DState set activated to 0 end SLSDSCVRtimerSLSDSCVR swingStateSLSD/SCVR activatedSLSDSCVR nextTrapSLSDf 2SCVRtargetSLSD0f SCVRmySelfSLSD SCVR fTrapDamageSLSD = && SCVRfLevelledDamageSLSD0 == fSCVRfTrapPushBackSLSD f SCVRfTrapMinVelocitySLSD ,#SCVRbTrapContinuousSCRVSCRVSCPTl~EDIDARTrapSwingBladeONCE01SCRIPTSCHR SCDA s 0 ==f 2s 1 nf 20 f 1000 f  1.5f  20s  0s 1  s 1 == s 0 == f 2 <= && ns 1 s 1 == f 0 <= && ns 0s 0 s 0 == f 7 <= && f X f X  rns 1f f X  -SCTXdscn ARTrapSwingBladeONCE01SCRIPT ; start swinging on activation float timer short swingState short activated short nextTrap ref target ref mySelf float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if activated == 0 set timer to 2 set swingState to 1 playgroup forward 0 set fTrapDamage to 20 set fTrapPushBack to 1000 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set activated to 1 endif end begin gameMode if activated == 1 ; swing the blade if swingState == 0 && timer <= 2 playgroup forward 0 set swingState to 1 elseif swingState == 1 && timer <= 0 playgroup backward 0 set swingState to 0 set activated to 0 endif ; set the next trap going if its linked as a parent if nextTrap == 0 && timer <= 7 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set nextTrap to 1 endif set timer to timer - getSecondsPassed endif end SLSDSCVRtimerSLSD SCVR swingStateSLSD  SCVR activatedSLSD 20SCVR nextTrapSLSD sSCVRtargetSLSD sSCVRmySelfSLSDs 0 =SCVR fTrapDamageSLSD 1SCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSD SCVRfTrapMinVelocitySLSD SCVRbTrapContinuousSCRVSCRVSCPT.mEDIDARTrapSwingBladeRANDOM01SCRIPTSCHR SCDA s 0 == f XM  f 80 >f 1  f 60 >f 2  f 40 >f 3  f 0 >=f 4s 1 f 0 <= s 1 == && f 100 f 1000 f  1.5f 20s 0s 2f 3 f 0 <= s 2 == &&  s 0 == ns 1 ns 0f 3f f X  - SCTX|scn ARTrapSwingBladeRANDOM01SCRIPT ; self-activated, will pick a random interval and just start swinging float timer short delay short swingState short start float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin gameMode ; swing the blade if start == 0 ; random seed, so each blade doesn't start swinging at the same time set timer to getRandomPercent if timer > 80 set timer to 1 elseif timer > 60 set timer to 2 elseif timer > 40 set timer to 3 elseif timer >= 0 set timer to 4 endif set start to 1 endif if ( timer <= 0 ) && ( start == 1 ) set fTrapDamage to 100 set fTrapPushBack to 1000 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set start to 2 set timer to 3 endif if ( timer <= 0 ) && ( start == 2 ) if swingState == 0 playgroup forward 1 set swingState to 1 else playgroup backward 1 set swingState to 0 endif set timer to 3 endif set timer to timer - getSecondsPassed trapUpdate end SLSDSCVRtimerSLSDSCVRdelaySLSDSCVR swingStateSLSD fSCVRstartSLSD fSCVR fTrapDamageSLSD sSCVRfLevelledDamageSLSD 20SCVRfTrapPushBackSLSD 0 ==SCVRfTrapMinVelocitySLSD 0SCVRbTrapContinuousSCPT% EDIDARTrapSwingBladeSLOW01SCRIPTSCHR SCDA s 0 ==f 2s 1 nf 20 f 1000 f  1.5f  20s  0s 1  s 1 == s 0 == f 4 <= && ns 1 s 1 == f 0 <= && ns 0f 8 s 0 == f 2 <= && f X f X  rns 1f f X  - Fs 0SCTXscn ARTrapSwingBladeSLOW01SCRIPT ; start swinging on activation float timer short swingState short activated short nextTrap ref target ref mySelf float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if activated == 0 set timer to 2 set swingState to 1 playgroup forward 0 set fTrapDamage to 20 set fTrapPushBack to 1000 set fLevelledDamage to 1.5 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set activated to 1 endif end begin gameMode if activated == 1 ; swing the blade if swingState == 0 && timer <= 4 playgroup forward 0 set swingState to 1 elseif swingState == 1 && timer <= 0 playgroup backward 0 set swingState to 0 set timer to 8 endif ; set the next trap going if its linked as a parent if nextTrap == 0 && timer <= 2 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set nextTrap to 1 endif set timer to timer - getSecondsPassed trapUpdate endif end begin onReset reset3DState set activated to 0 end SLSDSCVRtimerSLSDSCVR swingStateSLSDT(SCVR activatedSLSDSCVR nextTrapSLSDSCVRtargetSLSDSCVRmySelfSLSDSCVR fTrapDamageSLSD SCVRfLevelledDamageSLSD  SCVRfTrapPushBackSLSD fSCVRfTrapMinVelocitySLSD s 1SCVRbTrapContinuousSCRVSCRVSCPT5DEDIDARTrapWallCorner01SCRIPTSCHR#SCDA#)  s 0 == f X f Xs 1 Xir 1 ==  s 1 ==Y(This wall is lowered remotely.  Xir 0 ==  s 0 == nD z@s 1 ns 0s 1 f 0.4 s 1 == f 0 <= &&  rn  s 1 ==s 2f 8s 0 s 2 == f 0 <= && ns 0s 0  f 0 >f f X  -SCTX=scn ARTrapWallCorner01SCRIPT short activated short open short next float timer ref mySelf ref myParent begin onActivate ; prevents self re-activation if there's no parent linked if activated == 0 set mySelf to getSelf set myParent to getParentRef set activated to 1 endif ; if player clicks on me give him a clue if isActionRef player == 1 if open == 1 message "This wall is lowered remotely." endif elseif isActionRef mySelf == 0 if open == 0 playgroup forward 0 triggerHitShader 2 set open to 1 else playgroup backward 1 set open to 0 endif set next to 1 set timer to 0.4 endif end begin gameMode ; daisy-chain activation if next == 1 && timer <=0 myParent.activate mySelf 1 if open == 1 set next to 2 set timer to 8 else set next to 0 endif endif ; time's up, lower myself if next == 2 && timer <= 0 playgroup backward 0 set open to 0 set next to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSDURESCVR activatedSLSDURESCVRopenSLSDSCVRnextSLSDSCVRtimerSLSDSCVRmySelfSLSDSCVR myParentSCRVSCRVSCROSCPTf f X  -SCTXuscn ARTrapWallDeactivate01SCRIPT float timer short activated ref myParent ref mySelf begin onActivate if activated == 0 set activated to 1 set myParent to getParentRef set mySelf to getSelf endif if isActionRef player == 1 && activated == 2 playgroup backward 0 myParent.activate mySelf 1 set activated to 3 elseif activated == 1 playgroup forward 0 set activated to 2 set timer to 15 endif end begin gameMode if activated == 2 && timer <= 0 playgroup backward 0 set activated to 1 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSDSCVRtimerSLSDSCVR activatedSLSD%SCVR myParentSLSD SCVRmySelfSCRVSCRVSCROSCPT"oEDIDARTrigPressurePlate01SCRIPTSCHRSCDA}  s 0 == Xr 64 < f X f X  rns 1 nFs 0SCTXscn ARTrigPressurePlate01SCRIPT ; Activates trap linked as Parent short activated ref target ref mySelf begin gameMode if activated == 0 if getDistance player < 64 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set activated to 1 playgroup forward 0 endif endif end begin onReset reset3DState set activated to 0 endSLSDSCVR activatedSLSDSCVRtargetSLSDSCVRmySelfSCRVSCRVSCROSCPTEDID!ARTrigPressurePlateRESET01SCRIPTSCHRSCDA  s 0 == Xr 60 < f X f X  rns 1f 5 nY s 1 == f 0 <= &&s 0  f 0 >f f X  -Fs 0SCTXTscn ARTrigPressurePlateRESET01SCRIPT ; Activates trap linked as Parent short activated float timer ref target ref mySelf begin gameMode if activated == 0 if getDistance player < 60 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set activated to 1 set timer to 5 playgroup forward 0 endif endif end begin gameMode if activated == 1 && timer <= 0 set activated to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set activated to 0 end SLSD0r:4SCVR activatedSLSDModifieSCVRtimerSLSDifier:4SCVRtargetSLSDSCVRmySelfSCRVSCRVSCROSCPT~ EDIDARWelkyndCage01SCRIPTSCHRASCDAA  Xir 1 == s 0 == &&Y'This cage is raised remotely.  Xir 0 == s 0 == &&s 1f 1 n s 1 == f 0 <= && f X f X  rns 2  f 0 >f f X  -SCTX0scn ARWelkyndCage01SCRIPT short raised float timer ref myParent ref mySelf begin onActivate if isActionRef player == 1 && raised == 0 message "This cage is raised remotely." elseif isActionRef player == 0 && raised == 0 set raised to 1 set timer to 1 playgroup forward 0 endif end begin gameMode if raised == 1 && timer <= 0 set myParent to getParentRef set mySelf to getSelf myParent.activate mySelf 1 set raised to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSD8$ SCVRraisedSLSDSCVRtimerSLSDSCVR myParentSLSD<$SCVRmySelfSCRVSCRVSCROSCPTXEDIDAryarieScriptSCHR|SCDA|n  s 0 ==  G 0 == s XM  s 0 > G 22 ==s 0SCTXScriptname AryarieScript short randomvar Begin Gamemode if ( randomvar == 0 ) if ( GameHour == 0 ) set randomvar to GetRandomPercent endif elseif ( randomvar > 0 ) if ( GameHour == 22 ) set randomvar to 0 endif endif EndSLSDfau SCVR randomvarSCRO8SCPTq EDIDAstiaInventiusScriptSCHRFSCDAF8 Xr 210 <=!"SCTXscriptName AstiaInventiusScript begin GameMode if (getDistance AnvilAstiaInventiusPaintMarker <= 210) AnvilDocksPaintingRef.enable Else AnvilDocksPaintingRef.disable Endif End SCRO, SCRO+ SCPT2RJEDIDAtronachFlameScriptSCHR2SCDA2 #r %rSCTXscn AtronachFlameScript begin ScriptEffectStart PlayMagicShaderVisuals effectAtronachFlame end begin ScriptEffectFinish StopMagicShaderVisuals effectAtronachFlame end SCROQJSCPT$wEDIDAtronachFrostHealSCRIPTSCHR2SCDA2 $r &rSCTXscn AtronachFrostHealSCRIPT begin ScriptEffectStart pme frsh ; frost shield effect end begin ScriptEffectFinish sme frsh ; frost shield effect end SCRO|SCPT0EDIDAtronachFrostScriptSCHR2SCDA2 #r %rSCTXscn AtronachFrostScript begin ScriptEffectStart PlayMagicShaderVisuals effectAtronachFrost end begin ScriptEffectFinish StopMagicShaderVisuals effectAtronachFrost endSCROuSCPT.nEDIDAtronachStormScriptSCHR2SCDA2 #r %rSCTXscn AtronachStormScript begin ScriptEffectStart PlayMagicShaderVisuals effectShockDamage end begin ScriptEffectFinish StopMagicShaderVisuals effectShockDamage end SCROd SCPTT! EDIDAurunceiaScriptSCHRmSCDAm Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rn(SCTXScriptName AurunceiaScript Begin OnDeath Player If GetStage TG04Mistake >= 10 && GetStage TG04Mistake < 100 Set TG04Mistake.TotalDead to TG04Mistake.TotalDead + 1 SetStage TG04BloodPrice 40 EndIf EndSCROSCRO]SCRO SCPTCEDIDAutoCloseDoorLockSCHRSCDA_  s 1 ==  f 0 >f f X  - rs 0<  Xir 0 ==f 5s 1SCTXScriptName AutoCloseDoorLock float doorTimer short closeDoor Begin GameMode if closeDoor == 1 if doorTimer > 0 set doorTimer to doorTimer - getSecondsPassed else ;close the door Activate Lock set closeDoor to 0 endif endif End Begin OnActivate Activate if IsActionRef Player == 0 set doorTimer to 5 set closeDoor to 1 endif End SLSDSCVR doorTimerSLSD૽SCVR closeDoorSCROSCPTթEDIDAutoClosingDoorSCHRSCDAY  s 1 ==  f 0 >f f X  - s 0<  Xir 0 ==f 5s 1SCTXScriptname AutoClosingDoor float doorTimer short closeDoor Begin GameMode if closeDoor == 1 if doorTimer > 0 set doorTimer to doorTimer - getSecondsPassed else ;close the door Activate ; Lock set closeDoor to 0 endif endif End Begin OnActivate Activate if IsActionRef Player == 0 set doorTimer to 5 set closeDoor to 1 endif EndSLSDINSCVR doorTimerSLSDSCVR closeDoorSCROSCPT`EDIDAutoCSecretDoor01SCRIPTSCHRSCDA+  s 0 == Xr 150 < nD z@s 1*  s 1 == Xr 1500 > ns 0+SCTXscn AutoCSecretDoor01SCRIPT short state begin onLoad disableLinkedPathPoints end begin gameMode if ( state == 0 ) if ( GetDistance Player < 150) playgroup Forward, 1 triggerHitShader 3 set state to 1 enableLinkedPathPoints endif endif if ( state == 1 ) if ( GetDistance Player > 1500) playgroup Backward, 1 set state to 0 disableLinkedPathPoints endif endif endSLSDURESCVRstateSCROSCPTbEDID AyleidWellSCHRSCDA Xir 1 == X s ==)!A drained well recharges slowly. %You draw power from the well.rr n s Xq  s 0 ==s 10s 1 X( 0 == X s != && n n* X s != nSCTX;ScriptName AyleidWell short DayofLastUse short doonce Begin OnActivate if isActionRef player == 1 if GetDayofWeek == DayofLastUse MessageBox "A drained well recharges slowly. " else MessageBox "You draw power from the well." Player.Cast AyleidPower Player playgroup forward 0 Set DayofLastUse to GetDayofWeek endif endif end begin gamemode if doonce == 0 ;days are numbered 0-6 - prevents first visit on 0 day and being told you've used it today set DayofLastUse to 10 set doonce to 1 endif if isAnimPlaying == 0 && GetDayofWeek != DayofLastUse playgroup Backward 0 ; just to kick-off the looping sound playgroup specialidle 0 endif end begin onLoad if GetDayofWeek != DayofLastUse playgroup Backward 0 ; just to kick-off the looping sound endif endSLSDkSCVR DayofLastUseSLSDSCVRdoonceSCROSCROبSCPT!UEDIDBaenlinScriptSCHRSCDAr  s 0 == rXCr 1 == rXr 3 ==Vrrs 1SCTXScriptname BaenlinScript short Greet Begin GameMode if Greet == 0 if player.GetInCell BrumaBaenlinsHouse == 1 if BaenlinRef.GetDetectionLevel Player == 3 BaenlinRef.StartConversation player, Greeting set Greet to 1 endif endif endif End SLSD~SCVRGreetSCROSCROSCROzSCROSCPT*EDIDBaeralornScriptSCHRmSCDAm Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rnFSCTXScriptName BaeralornScript Begin OnDeath Player If GetStage TG07Lex >= 10 && GetStage TG07Lex < 100 Set TG07Lex.TotalDead to TG07Lex.TotalDead + 1 SetStage TG07BloodPrice 70 EndIf EndSCROSCRO4cSCRO SCPT|UEDIDBagduGroMolobscriptSCHRSCDASCTXscriptname BagduGroMolobscript short doonce Begin Gamemode ;GetAttacked doesn't work; when it does, this will warn player that Weynon Priory is under attack, and ;will simulate the magical summoning of armor and weapons of a Mythic Dawn agent ;If ( GetAttacked == 1 ) && ( GetStageDone MQ04Weynon 20 == 0 ) ;SetStage MQ04Weynon 20 ;endif ;If ( GetAttacked == 1 ) && ( doonce == 0 ) ; additem steelhelmet 1 ; additem steelcuirass 1 ; additem steelmace 1 ; set doonce to 1 ;endif endSLSD7SCVRdoonceSCPT4 EDIDBanditRobberSCRIPTSCHR*SCDA* !nG 0SCTXbscn BanditRobberSCRIPT begin OnLoad forceav aggression 0 set HighwaymanGotMoney to 0 end SCROoP SCPTϒEDIDBanditSentryFemaleScriptSCHRSCDA,( Xr 3 == s 0 == && s 0 == &&Vrs 1s 0  X r 0 == s 0 == &&s 0s 0s 1 X. 1 == rnSCTX/ScriptName BanditSentryFemaleScript ;Bandit Dungeons Behavior short SentryChallenge short DoOnce short ChallengeOnce Begin GameMode If ( GetDetectionLevel player == 3 ) && ( SentryChallenge == 0 ) && ( ChallengeOnce == 0 ) startconversation player ;AddScriptPackage BanditSentryChallenge Set ChallengeOnce to 1 Set DoOnce to 0 endif if ( GetInSameCell player == 0 ) && ( DoOnce == 0 ) set SentryChallenge to 0 Set ChallengeOnce to 0 set DoOnce to 1 endif if GetDead == 1 player.SetFactionRank BanditFaction -1 endif endSLSD1SCVRSentryChallengeSLSD1SCVRDoOnceSLSDOSCVRChallengeOnceSCROSCROwSCPTuВEDIDBanditSentryMaleScriptSCHRSCDA,( Xr 3 == s 0 == && s 0 == &&Vrs 1s 0  X r 0 == s 0 == &&s 0s 0s 1 X. 1 == rnSCTXScriptName BanditSentryMaleScript ;Bandit Dungeons Behavior short SentryChallenge short DoOnce short ChallengeOnce short BanditSentryDialog ; 0 = sentry greeting off; 1 = sentry greeting on Begin GameMode If ( GetDetectionLevel player == 3 ) && ( SentryChallenge == 0 ) && ( ChallengeOnce == 0 ) startconversation player ;AddScriptPackage BanditSentryChallenge Set ChallengeOnce to 1 Set DoOnce to 0 endif if ( GetInSameCell player == 0 ) && ( DoOnce == 0 ) set SentryChallenge to 0 Set ChallengeOnce to 0 set DoOnce to 1 endif if GetDead == 1 player.SetFactionRank BanditFaction -1 endif endSLSDSCVRSentryChallengeSLSD1 SCVRDoOnceSLSDOnceSCVRChallengeOnceSLSDFemSCVRBanditSentryDialogSCROSCROwSCPT)EDIDBanishmentScriptSCHR6SCDA6nnSCTXvScriptName BanishmentScript Begin ScriptEffectStart SetGhost 1 End Begin ScriptEffectFinish SetGhost 0 EndSCPTm>EDIDBarthelGernandScriptSCHRSCDA r9 rn r9 rn 5rs X:r s s 1 +9rsSCTXVscn BarthelGernandScript ; QUESTS: ; MS46 short lastStage ; this package ends when the player leaves Crestbridge camp after finishing MS46 begin OnPackageStart MS46WalkToCropsford setstage ms46fin, 1 end ; this package ends when he first reaches Cropsford begin OnPackageChange MS46WalkToCropsford ; set up new camp at Cropsford setstage ms46fin, 2 end ; this package runs once per week until Cropsford is complete built begin OnPackageChange MS46CropsfordCountdown set lastStage to getstage ms46FIN set lastStage to lastStage + 1 setstage ms46FIN, lastStage end SLSDSCVR lastStageSCRO?SCRO\SCRO?SCPT+EDID BaurusScriptSCHRaSCDAa /r Xr 200 <9 r nL r n .r  X:r 38 <9 r n& r9 r nC r9 r nU r]> X8r 1 ==s Xs X Z !=s 0HD X Z != rX! 0 == && X:r 40 > && X8r 1 == &&3r$ X Z != XCr 1 == &&3r r X8r 1 ==  s 4 <=4 rrn s s 1 +s rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srs X8r 1 ==)% X:r 32 == Xr 300 < &&Vr  s 1 == r s 1 == r f 0 <= && s r s   s 0 ==r f  X3 rn  s 1 ==r f  X4 rrn  s 2 ==r f  X4 rrn  s 3 ==r f  X4 rrn  s 4 ==r f  X4 rrn  s 5 ==r f  X4 rrn X:r 19 ==! Xr 250 < s 0 == &&4rrs 1($ X:r 18 >= X:r 22 < &&%! Xr 200 < rX 3 < &&nrnd`SCTX1scn BaurusScript ; MQ01 ; MQ05 short target ; temp var used for chargen short chargenOver ; set to 1 when chargen is finished so we know to skip last section of script short sayPlayer ; set to 1 when Baurus first speaks to player short temp short warncount ; counts number of times player hits ; goes down over time begin OnPackageDone MQ05BaurusGoToSewerLowerHall if getdistance MQ05BaurusWaitLowerHall < 200 setstage MQ05 76 endif end begin OnPackageDone CGBaurusToMarker9 ; close the door at the top of the stairs CGPrisonEntranceDoor.SetOpenState 0 end begin onPackageDone CGBaurusSearchAmbushBRoom if getstage charactergen < 38 setstage charactergen 38 endif end begin OnPackageDone CGBaurusToMarkerJ1 setstage characterGen 67 end begin OnPackageDone CGBaurusToDeadEmperor setstage CharacterGen 85 end begin OnPackageChange MQ14CheerPlayer stoplook end begin OnHit if getquestrunning charactergen == 1 ; Baurus can't die during charactergen set temp to GetBaseActorValue health forceav health, temp endif end begin OnStartCombat if getcombattarget != player set warncount to 0 endif if getcombattarget != player && glenroyref.isincombat == 0 && getstage charactergen > 40 && getquestrunning charactergen == 1 Say Attack endif if getcombattarget != player && getincell ImperialSewersElvenGardens == 1 Say MQ00Voice endif end begin OnHit player if getquestrunning charactergen == 1 if warncount <= 4 stopcombat player.scaonActor endif SayTo player CharGenBaurus 1 set warnCount to warnCount + 1 ; make sure disposition of anybody never goes below 30 ; Baurus set temp to BaurusRef.getdisposition player if temp < 30 set temp to 30 - temp BaurusRef.moddisposition player temp endif ; Renote set temp to RenoteRef.getdisposition player if temp < 30 set temp to 30 - temp RenoteRef.moddisposition player temp endif ; Emperor set temp to UrielSeptimRef.getdisposition player if temp < 30 set temp to 30 - temp UrielSeptimRef.moddisposition player temp endif ; Glenroy set temp to GlenroyRef.getdisposition player if temp < 30 set temp to 30 - temp GlenroyRef.moddisposition player temp endif endif end begin gamemode if getquestrunning MQ05 == 1 if getstage MQ05 == 32 && getdistance player < 300 startconversation player endif endif ; rest of this script is Chargen stuff; ignore once we've finished if chargenOver == 1 return endif ; talk when it is time if CharacterGen.speaker == 1 && CharacterGen.convTimer <= 0 set target to CharacterGen.target if target == 0 set CharacterGen.convTimer to Say CharGenMain 1 elseif target == 1 set CharacterGen.convTimer to SayTo BaurusRef, CharGenMain 1 elseif target == 2 set CharacterGen.convTimer to SayTo RenoteRef, CharGenMain 1 elseif target == 3 set CharacterGen.convTimer to SayTo GlenroyRef, CharGenMain 1 elseif target == 4 set CharacterGen.convTimer to SayTo UrielSeptimRef, CharGenMain 1 elseif target == 5 set CharacterGen.convTimer to SayTo player, CharGenMain 1 endif endif if getstage charactergen == 19 if getdistance player < 250 && sayPlayer == 0 sayTo player CharGenVoice set sayPlayer to 1 endif endif if getstage charactergen >= 18 && getstage charactergen < 22 if getdistance CGPlayerStartMarker < 200 && CGPlayerCellDoor.getOpenState < 3 CGPlayerCellDoor.setopenstate 0 CGPlayerCellDoor.lock 100 enableplayercontrols endif endif end SLSD SCVRtargetSLSD SCVR chargenOverSLSD SCVR sayPlayerSLSDSCVRtempSLSDSCVR warncountSCROC+SCROSCRO*SCRO*SCRO*SCRO*SCRODSCRO+SCRO+SCRO'SCROF+SCRO|SCROnFSCROSCROSCRO SCROSCROSCROSCRO%sSCRO+SCROJSCRO*SCPT:~EDIDBeatriceGeneScriptSCHRmSCDAm Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rnFSCTXScriptName BeatriceGeneScript Begin OnDeath Player If GetStage TG07Lex >= 10 && GetStage TG07Lex < 100 Set TG07Lex.TotalDead to TG07Lex.TotalDead + 1 SetStage TG07BloodPrice 70 EndIf End SCROSCRO4cSCRO SCPTw EDIDBedDiseaseSCRIPTSCHRSCDA5  Xir 1 == s XM? s 80 > X 1 == &&rs 0s 0SCTXXscn BedDiseaseSCRIPT short diseasechance begin OnActivate Activate if IsActionRef player == 1 set diseasechance to getrandompercent endif end begin menumode if diseasechance > 80 && isPCSleeping == 1 player.addspell DisYellowTick set diseasechance to 0 endif end begin gamemode set diseasechance to 0 endSLSDSCVRdiseasechanceSCROSCRO SCPTqYEDID BeefTestSCHRSCDASCTX*Scriptname BeefTest begin gamemode end SCPTEDID BeggarScriptSCHRHSCDAH 8 X:r 20 ==rs rs 1 +SCTXScriptName BeggarScript ;This script updates a variable in TandilweScript if a beggar is killed during quest TrainingSpeechcraft Begin OnDeath if ( GetStage TrainingSpeechcraft == 20 ) set TandilweRef.BeggarKilled to ( TandilweRef.BeggarKilled + 1 ) endif End SCRO;SCROTSCPTGEDID BejeenScriptSCHRSCDA  s 0 == X; rn2 0 == X:r 30 >= rX. 1 ==9 rn$s 1SCTX7Scriptname BejeenScript ;DANocturnal short doOnce Begin GameMode if ( doOnce == 0 ) if ( getstagedone DANocturnal 50 == 0 ) if ( getstage DANocturnal >= 30 ) if ( bejeenref.getdead == 1 ) setstage DANocturnal 36 set doOnce to 1 endif endif endif endif End GamemodeSLSDSCVRdoOnceSCROFSCROYSCPTFwEDIDBellTowerScriptSCHRFSCDAF8 X r 1 ==  s 0 ==s 1 X r 0 ==  s 1 ==s 0  s 1 ==f f X  - f 5 ~ <=s 0f 0I s 1 == s 0 == &&  G 23.98 >= G 0.02 <= ||rs 1 G 0.98 >= G 1.02 <= &&rs 1 G 1.98 >= G 2.02 <= &&rs 1 G 2.98 >= G 3.02 <= &&rs 1 G 3.98 >= G 4.02 <= &&rs 1 G 4.98 >= G 5.02 <= &&rs 1 G 5.98 >= G 6.02 <= &&rs 1 G 6.98 >= G 7.02 <= &&rs 1 G 7.98 >= G 8.02 <= &&rs 1 G 8.98 >= G 9.02 <= &&rs 1  G 9.98 >= G 10.02 <= &&rs 1! G 10.98 >= G 11.02 <= &&rs 1! G 11.98 >= G 12.02 <= &&rs 1! G 12.98 >= G 13.02 <= &&rs 1! G 13.98 >= G 14.02 <= &&rs 1! G 14.98 >= G 15.02 <= &&rs 1! G 15.98 >= G 16.02 <= &&rs 1! G 16.98 >= G 17.02 <= &&rs 1! G 17.98 >= G 18.02 <= &&rs 1! G 18.98 >= G 19.02 <= &&rs 1! G 19.98 >= G 20.02 <= &&rs 1! G 20.98 >= G 21.02 <= &&rs 1! G 21.98 >= G 22.02 <= &&rs 1! G 22.98 >= G 23.02 <= &&rs 1SCTX scn BellTowerScript float timer short playernear short soundplaying Begin GameMode If ( GetInSameCell player == 1 ) if ( playernear == 0 ) set playernear to 1 endif elseif ( GetInSameCell player == 0 ) if ( playernear == 1 ) set playernear to 0 endif endif if ( soundplaying == 1 ) set timer to ( timer - GetSecondsPassed ) if ( timer <= -5 ) set soundplaying to 0 set timer to 0 endif endif if ( playernear == 1 ) && ( soundplaying == 0 ) if ( GameHour >= 23.98 ) || ( GameHour <= 0.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 0.98 ) && ( GameHour <= 1.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 1.98 ) && ( GameHour <= 2.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 2.98 ) && ( GameHour <= 3.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 3.98 ) && ( GameHour <= 4.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 4.98 ) && ( GameHour <= 5.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 5.98 ) && ( GameHour <= 6.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 6.98 ) && ( GameHour <= 7.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 7.98 ) && ( GameHour <= 8.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 8.98 ) && ( GameHour <= 9.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 9.98 ) && ( GameHour <= 10.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 10.98 ) && ( GameHour <= 11.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 11.98 ) && ( GameHour <= 12.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 12.98 ) && ( GameHour <= 13.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 13.98 ) && ( GameHour <= 14.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 14.98 ) && ( GameHour <= 15.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 15.98 ) && ( GameHour <= 16.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 16.98 ) && ( GameHour <= 17.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 17.98 ) && ( GameHour <= 18.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 18.98 ) && ( GameHour <= 19.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 19.98 ) && ( GameHour <= 20.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 20.98 ) && ( GameHour <= 21.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 21.98 ) && ( GameHour <= 22.02 ) PlaySound3d AMBBellTower set soundplaying to 1 elseif ( GameHour >= 22.98 ) && ( GameHour <= 23.02 ) PlaySound3d AMBBellTower set soundplaying to 1 endif endif EndSLSD#DATASCVRtimerSLSDlltowerSCVR playernearSLSD#DATASCVR soundplayingSCROSCRO8SCROcSCPTĺEDIDBerichInianScriptSCHRSCDAQn / X:r 40 ==9 rn-P Xr 1 == rs 1 ==s rs 2SCTXwScriptName BerichInianScript short doonce begin OnLoad setignorefriendlyhits 1 end Begin OnDeath if ( GetStage MS49 == 40 ) SetStage MS49 45 endif End Begin Gamemode if ( GetIsCurrentPackage MS49BerichUnlockTrapDoor == 1 ) if ( MS49.berichunlock == 1 ) KvatchGuardHouseTrapDoor.unlock set MS49.berichunlock to 2 endif endif EndSLSDetIsCurSCVRdoonceSCROSCROrSCROƺSCPTr6EDIDbernadettepenelesscriptSCHR=SCDA= r rs 1vn rf Zrrs rs 1 + rs rs >=9 rnd  X:r 9 <7r rs 1 ==rs rs 1 + rs 1 rs rs >= rs 19 rn3SCTX?scriptname BernadettePenelesScript ; QUESTS: ; MS38 short glarthirWarned begin ondeath glarthirref set ms38.murderBP to 1 GlarthirRef.modcrimegold 5000 set ms38.arrestguard to DionneRef DionneRef.addscriptpackage ms38GuardArrestGlarthir set ms38.deadcount to ms38.deadcount + 1 if ms38.deadcount >= ms38.killcount ; everyone on the list has been killed setstage ms38 100 endif return ; don't want to run normal onDeath block if Glarthir was the one who killed her end begin ondeath ; if the quest hasn't started yet, kill it permanently if getstage ms38 < 9 stopquest ms38 elseif ms38.killBP == 1 set ms38.deadcount to ms38.deadcount + 1 set MS38.playerKillBP to 1 if ms38.deadcount >= ms38.killcount set ms38.allDead to 1 endif setstage ms38, 51 endif end SLSDrs SCVRglarthirWarnedSCROȔSCRO)SCROSCRO6SCPTw,EDIDBlackBrugoScriptSCHRCSCDAC 3 X; rnP 0 ==9 rnPSCTXgscn BlackBrugoScript begin OnDeath if getstagedone MS92 80 == 0 SetStage MS92 80 endif end SCROmYSCPTaf f X  -SCTXscn BlackRock01SCRIPT short open short next short busy float timer ref mySelf ref myParent begin onActivate if busy == 0 if open == 0 set mySelf to GetSelf mySelf.PME REHE mySelf.PMS effectRestore set open to 1 set next to 1 set timer to 2 endif set busy to 1 endif end begin gameMode if next == 1 && timer <= 0 set myParent to getParentRef BlackRockForceDoorREF.activate mySelf 0 myParent.disable playsound AMBArrowKeySuccess set next to 0 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSDtALSCVRopenSLSDSCVRnextSLSDSCVRbusySLSDK SCVRtimerSLSDK SCVRmySelfSLSDK SCVR myParentSCRVSCROMMSCRVSCROSCRObSCRO E SCPT=MEDIDBlackRockSwitch01aSCRIPTSCHRSCDA  s 0 ==  s 0 == f X n$r#rs 1s 1f 2 ns 0s 1 f 0.5s 1 s 1 == f 0 <= && f X  rn"&rs 0 X( 0 == s 1 == &&s 0  f 0 >f f X  -)Fs 0s 0s 0SCTXscn BlackRockSwitch01aSCRIPT ; disables parent ref short open short next short busy float timer ref myParent ref mySelf begin onActivate if busy == 0 if open == 0 set mySelf to GetSelf playgroup forward 1 mySelf.pme REHE mySelf.pms effectRestore set open to 1 set next to 1 set timer to 2 else playgroup backward 1 set open to 0 set next to 1 set timer to 0.5 endif set busy to 1 endif end begin gameMode if next == 1 && timer <= 0 set myParent to getParentRef BlackRockForceDoorREF.activate mySelf 1 myParent.disable playsound AMBArrowKeySuccess set next to 0 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set next to 0 set open to 0 set busy to 0 end SLSDfff?SCVRopenSLSDSCVRnextSLSDUU@SCVRbusySLSDSCVRtimerSLSDSCVR myParentSLSDSCVRmySelfSCRVSCROMMSCRVSCROSCRObSCRO E SCPT~SW EDIDBlackRockSwitchSCRIPTSCHRSCDA  s 0 ==  s 0 == f X n$r#rs 1s 1f 2 ns 0s 1 f 0.5s 1 s 1 == f 0 <= && f X"&rs 0 X( 0 == s 1 == &&s 0  f 0 >f f X  -)Fs 0s 0s 0SCTXSscn BlackRockSwitchSCRIPT ; disables parent ref short open short next short busy float timer ref myParent ref mySelf begin onActivate if busy == 0 if open == 0 set mySelf to GetSelf playgroup forward 1 mySelf.pme REHE mySelf.pms effectRestore set open to 1 set next to 1 set timer to 2 else playgroup backward 1 set open to 0 set next to 1 set timer to 0.5 endif set busy to 1 endif end begin gameMode if next == 1 && timer <= 0 set myParent to getParentRef myParent.disable playsound AMBArrowKeySuccess set next to 0 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set next to 0 set open to 0 set busy to 0 end SLSDSCVRopenSLSDSCVRnextSLSDSCVRbusySLSDSCVRtimerSLSDSCVR myParentSLSDSCVRmySelfSCRVSCRVSCROSCRObSCRO E SCPT_1 EDID Blade1ScriptSCHRSCDA  s 0 == Xr 500 <=s 1^  s 1 == Xr 500 >s 0  s 0 == Xr 1 == Xr 400 <=+' rX 90 < rX 90 < &&f f X  +s 1 s 1 == f 60 > Xr 400 <=  s 0 == n nBy observing these Blades at practice, you've picked up a couple of new moves! Your Blade and Block skills have both been raised by 2 points.s 2f 0s 1  s 1 == Xr 400 >s 0f 0s 0SCTXScriptname Blade1Script short Blade1Practice short Skill short Points float SkillTimer short DoOnce Begin GameMode if Blade1Practice == 0 if GetDistance BladeFight1Marker <= 500 set Blade1Practice to 1 evp endif endif if Blade1Practice == 1 if GetDistance BladeFight2Marker > 500 set Blade1Practice to 0 endif endif if Skill == 0 if GetIsCurrentPackage CloudRulerBlade1PracticeOutside == 1 if GetDistance Player <= 400 if player.getav Blade < 90 && player.getav Block <90 set SkillTimer to ( SkillTimer + GetSecondsPassed ) set Points to 1 endif endif endif endif if Points == 1 if SkillTimer > 60 if GetDistance Player <= 400 if DoOnce == 0 ModPCSkill Blade 2 ModPCSkill Block 2 Messagebox "By observing these Blades at practice, you've picked up a couple of new moves! Your Blade and Block skills have both been raised by 2 points." set Skill to 2 set SkillTimer to 0 set DoOnce to 1 endif endif endif endif if Points == 1 if GetDistance Player > 400 set Skill to 0 set SkillTimer to 0 set Points to 0 endif endif End SLSDSCVRBlade1PracticeSLSDSCVRSkillSLSDs SCVRPointsSLSD sSCVR SkillTimerSLSDSCVRDoOnceSCROw1 SCROx1 SCRO1 SCROSCPT9`1 EDID Blade2ScriptSCHRSCDA  s 0 == Xr 500 <=s 1^  s 1 == Xr 500 >s 0SCTX2Scriptname Blade2Script short Blade2Practice Begin GameMode if Blade2Practice == 0 if GetDistance BladeFight1Marker <= 500 set Blade2Practice to 1 evp endif endif if Blade2Practice == 1 if GetDistance BladeFight1Marker > 500 set Blade2Practice to 0 endif endif End SLSDSCVRBlade2PracticeSCROw1 SCPTa1 EDID Blade3ScriptSCHRESCDAE7 s 0 ==  rXCr Xr 1 == Xr 300 <= Xr 150 >= X$ 0 ==f f X  +  f 3 >s 1f f X  +f 0  s 1 ==  f 3 >s 0f 0SCTXScriptname Blade3Script short Sentry short Look float LookTimer float LookTimer2 Begin GameMode if Look == 0 if player.GetInCell CloudRulerTemple if GetIsCurrentPackage CloudRulerBlade3WanderSentry == 1 if GetDistance BladeScoutOutMarker <= 300 if GetDistance Player >= 150 if MenuMode == 0 set LookTimer to ( LookTimer + GetSecondsPassed ) endif endif endif endif endif endif if LookTimer > 3 set Look to 1 set LookTimer2 to ( LookTimer2 + GetSecondsPassed ) set LookTimer to 0 endif if Look == 1 if LookTimer2 > 3 set Look to 0 set LookTimer2 to 0 endif endif EndSLSDSCVRSentrySLSDSCVRLookSLSDacteOneHandSCVR LookTimerSLSDld Bld (000SCVR LookTimer2SCROSCROSCRO1 SCROy1 SCPT< EDIDBlindMonkScriptSCHR,SCDA, -nd nSCTXfScriptname BlindMonkScript Begin OnLoad SetActorValue Blindness 100 ModActorValue Sneak 15 EndSCPTQaEDIDBoarMeatScriptSCHRJSCDAJ 7r rs 0 ==r rs 1SCTXScriptname BoarMeatScript Begin OnEquip AlvalUvaniRef if Dark14Honor.paralyze == 0 AlvalUvaniRef.addspell DarkParalyze set Dark14Honor.paralyze to 1 endif End SCROYSCRO"SCRObUSCPTbEDIDBolorSavelScriptSCHRISCDAI;  s 1 == rnrs 2SCTXScriptName BolorSavelScript short combatvar Begin Gamemode if ( Combatvar == 1 ) setfactionrank NecromancerFaction 0 startcombat player set combatvar to 2 endif EndSLSDnSCVR combatvarSCROSCROSCPT*EDIDBongondScriptSCHR{SCDA{k Xir 1 == rs 1 ==r" rs 0 SCTXWScriptName BongondScript Begin OnActivate If IsActionRef Player == 1 If HorsePCChestnutChorrolRef.RespawnHorse ==1 HorsePCChestnutChorrolRef.MoveTo ChorrolHorseMarker HorsePCChestnutChorrolRef.Resurrect HorsePCChestnutChorrolRef.Disable Set HorsePCChestnutChorrolRef.RespawnHorse to 0 EndIf EndIf Activate End SCROSCROSCROSCPTJ^EDIDBookArmorersChallengeScriptSCHRLSCDAL< rs 0 == rs 1  SCTXScriptName BookArmorersChallengeScript Begin OnActivate if ( GinWulmRef.bookread == 0 ) set GinWulmRef.bookread to 1 Activate else Activate endif EndSCRO.SCPTUEDIDBothielScriptSCHRlSCDAl Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXScriptName BothielScript Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf End SCROSCRO2cSCRO SCPTTy EDIDBralsaAndarenScriptSCHRSSCDAS C)% X:r 10 >= X:r 100 < &&9 rnSCTXScriptName BralsaAndarenScript Begin OnDeath if ( GetStage TrainingDestruction >= 10 ) && ( GetStage TrainingDestruction < 100 ) SetStage TrainingDestruction 200 endif EndSCROSCPT0EDIDBravilCastleGuardScriptSCHRlSCDAl Yr($ X:r 20 >= X:r 50 < &&rs rs 1 +9 rnZSCTXScriptName BravilCastleGuardScript ; this script is applied to many guards in Castle Bravil Begin OnDeath Player If GetStage TG09Arrow >= 20 && GetStage TG09Arrow < 50 Set TG09Arrow.TotalDead to TG09Arrow.TotalDead + 1 SetStage TG09BloodPrice 90 EndIf End SCROSCRO6cSCRO# SCPT=~EDIDBravilCastleJailorScriptSCHRSCDA r rs 0v# rs 1 == XGr 1 == &&  f 0 <=f 64rrf f X  -SCTXrScriptName BravilCastleJailorScript Float KeepTime Begin OnPackageEnd BravilPrisonFollowPC Set NQDGuard.BravilDoorOpen to 0 End Begin GameMode If NQDGuard.SayWarnings == 1 && GetInFaction Jailor == 1 If KeepTime <= 0 Set KeepTime to 6 SayTo Player NQDGuardWarning Else Set KeepTime to KeepTime - GetSecondsPassed EndIf EndIf End SLSDSCVR KeepTimeSCROSCROSCRORSCROSCRO2SCPT/EDID BravilCastleSecretLever01SCRIPTSCHRSCDAq  s 0 == n ns 1 n ns 0SCTX/scriptName BravilCastleSecretLever01SCRIPT short open begin onActivate if open == 0 playgroup forward 1 BravilCastleSecretDoor01.playgroup forward 1 set open to 1 else playgroup backward 1 BravilCastleSecretDoor01.playgroup backward 1 set open to 0 endif end SLSDSCVRopenSCROSCPT=|EDIDBravilGuardJailorScriptSCHR%SCDA% r rs 0SCTXuScriptName BravilGuardJailorScript Begin OnPackageEnd BravilPrisonFollowPC Set NQDGuard.BravilDoorOpen to 0 EndSCROSCROSCPTCEDIDBravilNQDScriptSCHRSCDASCTX$scn BravilNQDScript short BogrumVAR short GilgondorinVAR short UravasaVAR short MarzVAR short FathisVAR short NahsiVAR short TadroseVAR short KudVAR short ArdalineVAR short ItaVAR short DelphineVAR short WearsVAR short VaronVAR short CityVAR short LucianaVAR short SkoomaVARSLSDFULLSCVR BogrumVARSLSDem to lSCVRGilgondorinVARSLSDtle somSCVR UravasaVARSLSDlk at lSCVRMarzVARSLSDderstanSCVR FathisVARSLSDlk at lSCVR NahsiVARSLSDderstanSCVR TadroseVARSLSDem to lSCVRKudVARSLSD tle somSCVR ArdalineVARSLSD em to lSCVRItaVARSLSD tle somSCVR DelphineVARSLSD _\SCVR WearsVARSLSD GanredhSCVR VaronVARSLSD#EDIDSCVRCityVARSLSDQSTISCVR LucianaVARSLSD#EDIDSCVR SkoomaVARSCPT.EDIDBravilPrisonDoorScriptSCHRESCDAE7 rs 0 X 0 == rs 1SCTXScriptName BravilPrisonDoorScript Begin GameMode Set NQDGuard.BravilDoorOpen to 0 If GetLocked == 0 Set NQDGuard.BravilDoorOpen to 1 EndIf EndSCROSCPTh EDIDBrielusGaweyScriptSCHRUSCDAUG rXr 1024 < rs 1 rs 0SCTXScriptName BrielusGaweyScript Begin GameMode If Player.GetDistance ChestnutHandyBarnMarker < 1024 Set Horses.ICFollowPC to 1 Else Set Horses.ICFollowPC to 0 EndIf EndSCROSCRO3SCRO[SCPT=EDIDBrotherPinerScriptSCHRtSCDAtfC? X:r 10 == Xr 800 < && s 0 == && X. 0 == &&4rrs 1SCTXscn BrotherPinerScript short MQ04Voice ; set to 1 after shouting to player begin gamemode if getstage MQ04 == 10 && getdistance player < 800 && MQ04Voice == 0 && getdead == 0 SayTo player MQVoice set MQ04Voice to 1 endif end SLSD1!SCVR MQ04VoiceSCRO&SCROSCRO=SCPT>|EDIDBrumaGuardJailorScriptSCHRSCDA r rs 0v# rs 1 == XGr 1 == &&  f 0 <=f 64rrf f X  -SCTXlScriptName BrumaGuardJailorScript Float KeepTime Begin OnPackageEnd BrumaPrisonFollowPC Set NQDGuard.BrumaDoorOpen to 0 End Begin GameMode If NQDGuard.SayWarnings == 1 && GetInFaction Jailor == 1 If KeepTime <= 0 Set KeepTime to 6 SayTo Player NQDGuardWarning Else Set KeepTime to KeepTime - GetSecondsPassed EndIf EndIf End SLSDSCVR KeepTimeSCROSCROSCRORSCROSCRO2SCPTvMfEDIDBrumaNQDScriptSCHR SCDASCTXscn BrumaNQDScript short OlavVAR short HafidVAR short SkjortaVAR short OlfandVAR short CirrocVAR short ArentusVAR short RightVAR short BumphVAR short JskarVAR short AlgaVAR short JantusVAR short EdlaVAR short BrotchVARSLSD thingsSCVROlavVARSLSDection.SCVR HafidVARSLSDSCVR SkjortaVARSLSDSCVR OlfandVARSLSDoSCVR CirrocVARSLSDSCVR ArentusVARSLSDstonSurSCVR RightVARSLSDD GastoSCVR BumphVARSLSD stonSurSCVR JskarVARSLSD SurilieSCVRAlgaVARSLSD stonSurSCVR JantusVARSLSD D GastoSCVREdlaVARSLSD stonSurSCVR BrotchVARSCPT*EDIDBrumaPrisonDoorScriptSCHRESCDAE7 rs 0 X 0 == rs 1SCTXScriptName BrumaPrisonDoorScript Begin GameMode Set NQDGuard.BrumaDoorOpen to 0 If GetLocked == 0 Set NQDGuard.BrumaDoorOpen to 1 EndIf EndSCROSCPTEDID BurdSCRIPTSCHRSCDAe X Z !=3r)% X:r 31 == X:r 32 == ||9 rn! r9 rn  r]SCTXbscn BurdSCRIPT short burdSalute begin OnStartCombat if getcombattarget != player Say MQ00Voice endif ; make sure things move along if getstage MQ10 == 31 || getstage MQ10 == 32 setstage mq10 33 endif end begin OnPackageDone MQ10BurdGiveSpeech setstage mq10 32 end begin OnPackageChange MQ14CheerPlayer stoplook end SLSDrSCVR burdSaluteSCROSCROSCRO,SCROcSCRO SCPTa EDIDCaminaldaScriptSCHRSCDA rs 2 == rs 1 < rs 1 rs 1 == rXCr 1 == XCr 1 ==Vr rs 2 rs 4 == rXr 1200 <nVr rs 5 rs 5 == Xn 5 != f 10 >= Xr 1200 <f 0Vrf f X  +  s 1 ==r rn !nS rns 2 rs 2 >= Xn 5 ==rr rs 6  s 2 >= Xn 5 != Xr 1000 <r ? X:r 40 ==9 rn2^^SCTXrScriptname CaminaldaScript short caminaldacombat float timer Begin Gamemode ;Have Caminalda forcegreet the player after he's talked to Christophe if ( MG04Restore.talkedtoCristophe == 2 ) if ( MG04Restore.talkedtoCaminalda < 1 ) set MG04Restore.talkedtoCaminalda to 1 endif endif if ( Mg04Restore.talkedtoCaminalda == 1 ) if ( Player.GetInCell "BrinaCrossInn" == 1 ) if ( GetInCell "BrinaCrossInn" == 1 ) startconversation Player set MG04Restore.talkedtoCaminalda to 2 endif endif endif ;When player is close enough to Caminalda on the road, she forcegreets if ( MG04Restore.doonce == 4 ) if ( Player.GetDistance "MG04CaminaldaMark" < 1200 ) CaminaldaRef.SetForcerun 1 startconversation Player set MG04Restore.doonce to 5 endif endif endif ;If player should happen to leave before she manages to force greet, check for passage of time and forcegreet again if ( MG04Restore.doonce == 5 ) if ( GetCurrentAIPackage != 5 ) if ( timer >= 10 ) if ( GetDistance Player < 1200 ) set timer to 0 StartConversation Player endif else set timer to ( timer + GetSecondsPassed ) endif endif endif ;start combat when variable is set (in dialogue results) if ( Caminaldacombat == 1 ) CaminaldaRef.Startcombat player CaminaldaRef.setfactionrank NecromancerFaction 0 CaminaldaRef.SetAV Aggression 30 CaminaldaRef.Moddisposition player -100 set CaminaldaCombat to 2 endif if ( MG04Restore.doonce >= 2 ) if ( getcurrentAIPackage == 5 ) ArielleJurardRef.startcombat CaminaldaRef RoliandHanusRef.startcombat CaminaldaRef set MG04Restore.doonce to 6 endif endif ;If player leaves encounter for any reason, start combat on him again when he returns if ( CaminaldaCombat >= 2 ) if ( GetCurrentAIPackage != 5 ) if ( GetDistance Player < 1000 ) StartCombat Player endif endif endif End ;Update quest journal when Caminalda is dead Begin OnDeath if ( GetStage MG04Restore == 40 ) SetStage MG04Restore 50 ArielleJurardRef.EvaluatePackage RoliandHanusRef.EvaluatePackage endif EndSLSDj{0SCVRcaminaldacombatSLSDf the MSCVRtimerSCRO SCROoSCROqSCRO+SCROSCROSCRO*SCROSCPTEDIDCaranyaScriptSCHRSCDAZ  s 1 == rn rnrs 2 !n( Yr($ X:r 15 >= X:r 60 < &&rs rs 1 +9 rn2SCTXScriptName CaranyaScript short doonce Begin Gamemode if ( doonce == 1 ) SetEssential Caranya 0 CaranyaRef.SetFactionRank MagesGuild -1 startcombat Player set doonce to 2 setav aggression 40 endif End Begin OnDeath Player If GetStage TG05Misdirection >= 15 && GetStage TG05Misdirection < 60 Set TG05Misdirection.TotalDead to TG05Misdirection.TotalDead + 1 SetStage TG05BloodPrice 50 EndIf EndSLSD(' SCVRdoonceSCRONSCRONSCRO"SCROSCRO2cSCRO SCPT; EDIDCariusRunelliusSCRIPTSCHRSCDA rXCr 1 ==  X:r 20 < s 0 == &&Vrrs 1 rs 1 == rXCr 1 ==Vrr \r0, X:r 85 >= s 0 == && rs 1 == &&"rs 1SCTXscn CariusRunelliusSCRIPT short Stop short CariusMoved begin gamemode if ( Player.GetInCell BrumaBradonLirriansHouse == 1 ) if ( GetStage MS11 < 20 ) && ( Stop == 0 ) StartConversation Player, Greeting set Stop to 1 endif endif if ( MS11.CariusOlav == 1 ) if ( Player.GetInCell BrumaOlavsTapandTack == 1 ) StartConversation Player, Greeting endif endif end begin OnPackageEnd MS11CariusLeavesBradons ;This moves Carius to Olav's at Stage 85 if ( GetStage MS11>= 85 ) && ( CariusMoved == 0 ) && ( MS11.CariusDone == 1 ) CariusRef.Disable CariusRef.MoveTo MS11Stage50Marker set CariusMoved to 1 endif endSLSDSCVRStopSLSDURESCVR CariusMovedSCRO=SCROSCROSCRO9xSCROSCROSCROS SCROESCPTVd)EDIDCastleSecretBarrelScriptSCHRSCDA3/ Xir 0 == s 0 == && Xir 0 == &&  s 0 == ns 1*s 1 ns 0+s 0s 1f 1s 1 s 0 == s 0 == && f X f X+s 1 s 1 == f 0 <= &&s 0  rn  f 0 >f f X  - X( 0 == s 1 == &&s 0-Fs 0s 0s 0+SCTXscn CastleSecretBarrelScript ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short open short next short busy short waiting float timer ref mySelf ref myParent begin onActivate if isActionRef mySelf == 0 && busy == 0 && isActionRef player == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints set waiting to 1 else playgroup backward 0 set open to 0 disableLinkedPathPoints set waiting to 0 endif set next to 1 set timer to 1 set busy to 1 endif end begin gameMode if init == 0 && open == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints endSLSDSCVRinitSLSDSCVRopenSLSDSCVRnextSLSDSCVRbusySLSDSCVRwaitingSLSDURESCVRtimerSLSDURESCVRmySelfSLSDURESCVR myParentSCRVSCRVSCROSCPT 2 EDIDCastleSecretDoorScriptSCHRn SCDAn3/ Xir 0 == s 0 == && Xir 0 == &&  s 0 == ns 1*f  8s 1 ns 0+s 0s 1f 1s 1I s 1 == f 0 <= && ns 0+s 0  s 1 ==f f X  -  s 0 == f X f X+s 1 s 1 == f 0 <= &&s 0  rn  f 0 >f f X  - X( 0 == s 1 == &&s 0-Fs 0s 0s 0+SCTXscn CastleSecretDoorScript ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short open short next short busy short waiting float timer float autoclose ref mySelf ref myParent begin onActivate if isActionRef mySelf == 0 && busy == 0 && isActionRef player == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints set autoclose to 8 set waiting to 1 else playgroup backward 0 set open to 0 disableLinkedPathPoints set waiting to 0 endif set next to 1 set timer to 1 set busy to 1 endif end begin gameMode if waiting == 1 && autoclose <= 0 playgroup backward 0 set open to 0 disableLinkedPathPoints set waiting to 0 elseif waiting == 1 set autoclose to autoclose - getSecondsPassed endif if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints endSLSDsSCVRinitSLSDs SCVRopenSLSD XSCVRnextSLSDsSCVRbusySLSDSCVRwaitingSLSD 0SCVRtimerSLSD SCVR autocloseSLSDSCVRmySelfSLSDSCVR myParentSCRVSCRVSCROSCPT#EDIDCatFaceScriptSCHR{SCDA{k Xir 1 == rs 1 ==r" rs 0 SCTXPScriptName CatFaceScript Begin OnActivate If IsActionRef Player == 1 If HorsePCPaintLeyawiinRef.RespawnHorse ==1 HorsePCPaintLeyawiinRef.MoveTo PCHorseLeyawiinMarker HorsePCPaintLeyawiinRef.Resurrect HorsePCPaintLeyawiinRef.Disable Set HorsePCPaintLeyawiinRef.RespawnHorse to 0 EndIf EndIf Activate End SCRO22SCROSCRO02SCPTrEDIDCathedralDoorBrumaSCRIPTSCHRISCDAI;$ X:r 20 == rs 0 == &&dnSCTXscn CathedralDoorBrumaSCRIPT ; this is just to turn subtitles on during the conversation between Martin and Countess begin OnLoad if getstage MQ13 == 20 && MQ13.convDone == 0 showdialogsubtitles 1 endif endSCRO/SCPTzEDIDCGAkaviriLongswordScriptSCHRSCDA_ X:r 88 == X 0 == X# 0 ==" r rs  1 r rs  1SCTXscn CGAkaviriLongswordScript ; this script disables everything in the world after Baurus speaks to you, to make sure the player doesn't leave with it begin gamemode if getstage CharacterGen == 88 if getcontainer == 0 if getdisabled == 0 disable endif else removeMe endif endif end begin OnAdd player set MQ01.weapon to 1 end begin OnEquip player set MQ01.weaponEquip to 1 end SCROnFSCROSCRO#SCPT_!JEDIDCGAmbushAGateScriptSCHRISCDAI9'# Xir 1 == X:r 26 > || SCTXscn CGAmbushAGateScript begin onActivate ; make sure NPCs don't open the gate until after Renote is dead. if IsActionRef player == 1 || getstage charactergen > 26 Activate endif endSCROSCROnFSCPTqEDIDCGAmbushCBackGateScriptSCHRSCDASCTXTscn CGAmbushCBackGateScript begin OnActivate ; nobody can open this gate end SCPTEDIDCGAmbushCGateScriptSCHRSCDA Xir 1 == X 3 >= X 1 == && rXr 150 >UMThe gate is barred from the other side. There is no way to open it from here.s  SCTXscn CGAmbushCGateScript begin OnActivate ; player can't activate this gate if isActionRef player == 1 ; if closed, give message; otherwise, do nothing if getopenstate >= 3 && getlocked == 1 if CGAmbushCLockedGateSideMarker.getdistance player > 150 messageBox "The gate is barred from the other side. There is no way to open it from here." else unlock Activate endif endif else Activate endif endSCROSCRO1SCPT EDIDCGAssassinAmbushCScriptSCHRSCDA#  X. 0 == X:r 74 >= &&  s 0 ==s 1nf XM 50 /  f 0 >f f X  -SCTXscn CGAssassinAmbushCScript float timer short dying ; set to 1 after timer is set begin gamemode ; kill assassins when Emperor dies if GetDead == 0 && getstage charactergen >= 74 if dying == 0 set dying to 1 setrestrained 1 set timer to ( getrandompercent/50 ) else if timer > 0 set timer to timer - getsecondspassed else kill endif endif endif endSLSD XSCVRtimerSLSDSCVRdyingSCROnFSCPT)EDIDCGAssassinScriptSCHRSCDAt-) rs 6 == rf 0 <= && X. 0 == && s rs   s 0 ==rf X3r  s 1 ==rf  X4rr  s 2 ==rf  X4rr  s 3 ==rf  X4rr  s 4 ==rf  X4rr  s 5 ==rf  X4rr s 6 ==rf rf 3 + 9 rnTrs rs 1 +SCTXscn CGAssassinScript short target begin gamemode ; talk when it is time if CharacterGen.speaker == 6 && CharacterGen.convTimer <= 0 && getdead == 0 set target to CharacterGen.target if target == 0 set CharacterGen.convTimer to Say CharGenMain elseif target == 1 set CharacterGen.convTimer to SayTo BaurusRef, CharGenMain elseif target == 2 set CharacterGen.convTimer to SayTo RenoteRef, CharGenMain elseif target == 3 set CharacterGen.convTimer to SayTo GlenroyRef, CharGenMain elseif target == 4 set CharacterGen.convTimer to SayTo UrielSeptimRef, CharGenMain elseif target == 5 set CharacterGen.convTimer to SayTo player, CharGenMain elseif target == 6 endif set charactergen.convTimer to CharacterGen.convTimer + 3 ; pause between taunts endif end begin OnDeath setstage CharacterGen 84 end begin OnHit set charactergen.finalTauntCount to charactergen.finalTauntCount + 1 endSLSD SCVRtargetSCROnFSCRO+SCRO*SCRO*SCRO*SCRO*SCROSCPT-N EDIDCGate01SCRIPTSCHRSCDA  Xir 1 ==  s 0 == rX/r 0 ==Y#This gate requires a key.R rn ns 1*  s 0 == ns 1*  s 0 == f X f X+s 1 s 1 == f 0 <= &&s 0  rn X( 0 == s 1 == &&s 0  f 0 >f f X  --Fs 0s 0s 0+SCTXscn CGate01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short open short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 if open == 0 if player.getitemcount MQ15OrthesKey == 0 message "This gate requires a key." else player.removeitem MQ15OrthesKey 1 playgroup forward 0 set open to 1 enableLinkedPathPoints endif endif else if open == 0 playgroup forward 0 set open to 1 enableLinkedPathPoints endif endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints end SLSDSCVRinitSLSDSCVRopenSLSDl SCVRnextSLSDl SCVRbusySLSDSCVRtimerSLSD@GSCVRmySelfSLSDSCVR myParentSCROSCRVSCRVSCRO)SCPTAN EDIDCGateOPEN01SCRIPTSCHR"SCDA" Xir 1 ==  s 1 ==Y) This gate is opened elsewhere.   s 0 == ns 1+ ns 0*s 1s 1f 1  s 0 == f X f Xs 1 s 1 == f 0 <= &&s 0 f X f X  rn X( 0 == s 1 == &&s 0  f 0 >f f X  --Fs 0s 0s 0*SCTXscn CGateOPEN01SCRIPT ; activated by linked child ; activates optionally linked parent after 1 sec delay short init short closed short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 if closed == 1 message " This gate is opened elsewhere." endif else isActionRef mySelf == 0 && busy == 0 if closed == 0 playgroup forward 0 set closed to 1 disableLinkedPathPoints else playgroup backward 0 set closed to 0 enableLinkedPathPoints endif set next to 1 set busy to 1 set timer to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 set mySelf to getSelf set myParent to getParentRef myParent.activate mySelf 1 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set closed to 0 set busy to 0 set next to 0 enableLinkedPathPoints end SLSDnext fSCVRinitSLSDnLoad SCVRclosedSLSDtParentSCVRnextSLSD if clSCVRbusySLSD elsSCVRtimerSLSD diSCVRmySelfSLSDosed toSCVR myParentSCRVSCRVSCROSCPT/EDIDCGBladesEquipmentScriptSCHRSCDAn X:r 88 == X 0 == X# 0 ==" X Z != r rs 1 r rs 1SCTXscn CGBladesEquipmentScript ; this script disables everything in the world after Baurus speaks to you, to make sure the player doesn't leave with it begin gamemode if getstage CharacterGen == 88 if getcontainer == 0 if getdisabled == 0 disable endif elseif getcontainer != GlenroyRef removeMe endif endif end begin OnAdd player set MQ01.heavyarmor to 1 end begin OnEquip player set MQ01.heavyArmorEquip to 1 end SCROnFSCRO*SCROSCRO#SCPTzEDID CGBowScriptSCHRSCDA jr rs 1 rs 1 == rs 54 rf 2 rs 50 rf 2 Gr rs 1 rs 1 == rs 56 rf 2SCTXscn CGBowScript ; this script is used to detect when player equips the bow for CharGen tutorial begin OnAdd player set MQ01.bow to 1 if MQ01.arrows == 1 ; have both bow and arrows now set MQ01.stage to 54 set MQ01.timer to 2 else ; bow only set MQ01.stage to 50 set MQ01.timer to 2 endif end begin OnEquip player set MQ01.bowEquip to 1 if MQ01.arrowsEquip == 1 set MQ01.stage to 56 set MQ01.timer to 2 endif end SCROSCRO#SCPT}gy EDIDCGChest02SCRIPTSCHR\SCDA\N  s 0 == X/r 0 ==9 rnAs 1SCTXscn CGChest02SCRIPT short done begin gamemode if done == 0 if getitemcount repairhammer == 0 setstage mq01 65 set done to 1 endif endif endSLSDSCVRdoneSCRO SCRO#SCPT=EDIDCGCrumbleWall01SCRIPTSCHRWSCDAW+}  s 0 == Xir 0 == && n ns 1f 29 rnn*  f 0 >f f X  - s 1 == f 0 <= && ns 2f 4 s 2 == f 0 <= && ns 3SCTXscn CGCrumbleWall01SCRIPT short pushed float timer short triggered ; set to 1 when waiting to trigger rats begin onLoad ; prepare linked pathsgrid points disableLinkedPathPoints end begin onActivate if pushed == 0 && isActionRef player == 0 playgroup Unequip 1 CGCrumbleDust01REF.playgroup forward 1 set pushed to 1 set timer to 2 setstage MQ01 24 setdestroyed 1 enableLinkedPathPoints endif end begin gameMode if timer > 0 set timer to timer - getSecondsPassed endif if pushed == 1 && timer <= 0 CGCrumbleDust02REF.playgroup forward 1 set pushed to 2 set timer to 4 elseif pushed == 2 && timer <= 0 CGCrumbleDust03REF.playgroup forward 1 set pushed to 3 endif endSLSDSCVRpushedSLSDSCVRtimerSLSDSCVR triggeredSCROSCROSCROSCROSCRO#SCPTEDIDCGDomesticRatScriptSCHRpSCDApb s 0 == rs 1 == &&s 1 rrn !n2 "nP^SCTXscn CGDomesticRatScript short aggro begin gamemode if aggro == 0 && CGRatPenGate.gateOpen == 1 set aggro to 1 setfactionreaction CGDomesticRatFaction CGGoblinFaction -100 setav aggression 50 setav confidence 80 evp endif endSLSD# XSCVRaggroSCROVSCROSCROSCPT?!EDIDCGDoorToSewersScriptSCHRPSCDAP@  Xir 1 ==R rnSCTXscn CGDoorToSewersScript begin OnActivate Activate if IsActionRef player == 1 player.removeItem CGExitKey 1 player.scaonactor endif end SCROSCROSCPTnEDIDCGDungeon01ExitDoorScriptSCHRSCDA  Xir 1 ==  X 1 ==  s 0 ==IAThis door is locked. Maybe you can find the key somewhere nearby.NFThis door is locked. Try searching the dead goblin shaman for the key.s 1SCTXscn CGDungeon01ExitDoorScript short hintCount begin OnActivate if IsActionRef player == 1 Activate if GetLocked == 1 if hintcount == 0 MessageBox "This door is locked. Maybe you can find the key somewhere nearby." else MessageBox "This door is locked. Try searching the dead goblin shaman for the key." endif set hintcount to 1 endif endif endSLSDis doorSCVR hintCountSCROSCPT EDIDCGDungeon05To02DoorScriptSCHR>SCDA>. Xir 1 == SCTX}scn CGDungeon05To02DoorScript begin OnActivate if IsActionRef player == 1 player.scaonactor endif Activate endSCROSCPT*EDIDCGEmperorScriptSCHR^SCDA^J" Xir 1 == X. 1 == &&4rr  X:r 74 == X. 1 ==9 r nL r s 4 == r f 0 <= && s r s   s 0 ==r f  X3 r n  s 1 ==r f  X4 rr n  s 2 ==r f  X4 rr n  s 3 ==r f  X4 rr n  s 4 ==r f  X4 rr n  s 5 ==r f  X4 rr n s 6 == r s 35 == r f  10 r s 45 == r f  12  r  r X. 0 ==  s 4 <=4 rr n s s 1 +s X:r s rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srsp s X:r <s 0 f X  f Z != f 0 > &&-) Xr Xr < rX. 1 == || f Z r s 1 ==Y4*DEBUG: Baurus calling for help for Emperor f Z r s 1 ==Y5+DEBUG: Glenroy calling for help for Emperor4rr r> X:r 74 <s Xs r9 r n r9 r n> r9 r nDSCTX scn CGEmperorScript short target ref combattarget ref bladeHelp short temp short warncount ; how many warnings has the Emperor given for player hitting him? short warnstage ; what stage was the last warning? begin OnActivate if IsActionRef player == 1 && GetDead == 1 BaurusRef.SayTo player CharGenVoice else Activate endif end begin gamemode ; if dead, set stage: if getstage charactergen == 74 if getdead == 1 setstage charactergen 76 endif endif ; talk when it is time if CharacterGen.speaker == 4 && CharacterGen.convTimer <= 0 set target to CharacterGen.target if target == 0 set CharacterGen.convTimer to Say CharGenMain 1 elseif target == 1 set CharacterGen.convTimer to SayTo BaurusRef, CharGenMain 1 elseif target == 2 set CharacterGen.convTimer to SayTo RenoteRef, CharGenMain 1 elseif target == 3 set CharacterGen.convTimer to SayTo GlenroyRef, CharGenMain 1 elseif target == 4 set CharacterGen.convTimer to SayTo UrielSeptimRef, CharGenMain 1 elseif target == 5 set CharacterGen.convTimer to SayTo player, CharGenMain 1 elseif target == 6 endif ; special case -- endless loop with Glenroy if charactergen.convCount == 35 set charactergen.convTimer to 10 endif ; special case -- endless loop with player if charactergen.convCount == 45 set charactergen.convTimer to 12 endif endif ; special: birthsign speech ;if ( getstage charactergen == 42 || getstage charactergen == 44 ) && CharacterGen.convTimer <= 0 ; set CharacterGen.convTimer to SayTo player, CGEmperorBirthsign 1 ;endif end ; Assassin kills emperor in one blow begin OnHit CGAssassinFinal kill end ; NOTE: order is important here. OnHit player block needs to come first begin OnHit player if getdead == 0 if warncount <= 4 stopcombat player.scaonActor endif SayTo player CharGenEmperor 1 set warnCount to warnCount + 1 set warnstage to getstage charactergen ; make sure disposition of anybody never goes below 30 ; Baurus set temp to BaurusRef.getdisposition player if temp < 30 set temp to 30 - temp BaurusRef.moddisposition player temp endif ; Renote set temp to RenoteRef.getdisposition player if temp < 30 set temp to 30 - temp RenoteRef.moddisposition player temp endif ; Emperor set temp to UrielSeptimRef.getdisposition player if temp < 30 set temp to 30 - temp UrielSeptimRef.moddisposition player temp endif ; Glenroy set temp to GlenroyRef.getdisposition player if temp < 30 set temp to 30 - temp GlenroyRef.moddisposition player temp endif endif end begin OnStartCombat if warnstage < getstage charactergen set warncount to 0 endif ; Blades react if not the player set combattarget to GetCombatTarget if combattarget != player && combattarget > 0 if getdistance BaurusRef < getdistance GlenroyRef || GlenroyRef.GetDead == 1 set bladeHelp to BaurusRef if charactergen.debug == 1 message "DEBUG: Baurus calling for help for Emperor" endif else set bladeHelp to GlenroyRef if charactergen.debug == 1 message "DEBUG: Glenroy calling for help for Emperor" endif endif bladeHelp.SayTo player CharGenBlades bladeHelp.startcombat combattarget endif end begin OnHit if getstage charactergen < 74 ; Emperor can't die until the end of charactergen set temp to GetBaseActorValue health forceav health, temp endif end begin OnPackageDone CGEmperorToMarkerB setstage CharacterGen 16 end begin OnPackageDone CGEmperorToMarkerH setstage CharacterGen 62 end begin OnPackageDone CGEmperorToMarkerJ setstage CharacterGen 68 end SLSDSCVRtargetSLSD 1 ==SCVR combattargetSLSDr SCVR bladeHelpSLSDf 0 SCVRtempSLSD SCVR warncountSLSD X4 SCVR warnstageSCRO*SCROSCRO*SCRO*SCRO*SCRVSCRVSCROJSCROnFSCRO+SCROSCROASCROvSCRONSCRO#SCROSCPT*EDIDCGGlenroyScriptSCHR%SCDA% rs 3 == rf 0 <= && s rs   s 0 ==rf  X3 rn  s 1 ==rf  X4 rrn  s 2 ==rf  X4 rrn  s 3 ==rf  X4 rrn  s 4 ==rf  X4 rrn  s 5 ==rf  X4 rrn X:r 13 == rf 0 <=4 rrn rf  7 r 9 rn r 9 rn r 9 rn" r 9 rn4 r 9 rn8 r9 rn< r9 rn@n X Z !=s 051 X Z != rX! 0 == && X:r 40 > &&3rU  s 1 == X:r 70 <s Xs r X. 0 ==  s 3 <=4 rrn s s 1 +s rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -SrsSCTX scn CGGlenroyScript short target short dieNextHit short temp short warncount begin gamemode ; talk when it is time if CharacterGen.speaker == 3 && CharacterGen.convTimer <= 0 set target to CharacterGen.target if target == 0 set CharacterGen.convTimer to Say CharGenMain 1 elseif target == 1 set CharacterGen.convTimer to SayTo BaurusRef, CharGenMain 1 elseif target == 2 set CharacterGen.convTimer to SayTo RenoteRef, CharGenMain 1 elseif target == 3 set CharacterGen.convTimer to SayTo GlenroyRef, CharGenMain 1 elseif target == 4 set CharacterGen.convTimer to SayTo UrielSeptimRef, CharGenMain 1 elseif target == 5 set CharacterGen.convTimer to SayTo player, CharGenMain 1 endif endif ; special cases ; Glenroy waiting for player to get away from the cell door if getstage charactergen == 13 if charactergen.convTimer <= 0 ; Glenroy warns player if he doesn't get back SayTo player CharGenVoice 1 set charactergen.convTimer to 7 endif endif end begin OnPackageDone CGGlenroyToMarkerB setstage CharacterGen 15 end begin OnPackageDone CGGlenroyToMarkerD setstage CharacterGen 30 end begin OnPackageDone CGGlenroyToMarkerE setstage CharacterGen 34 end begin OnPackageDone CGGlenroyEscortEmperorToF setstage CharacterGen 52 end begin OnPackageDone CGGlenroyEscortEmperorToG setstage CharacterGen 56 end begin OnPackageDone CGGlenroyToMarkerH setstage CharacterGen 60 end begin OnPackageDone CGGlenroyToMarkerI setstage CharacterGen 64 end begin OnStartCombat if getcombattarget != player set warncount to 0 endif if getcombattarget != player && baurusref.isincombat == 0 && getstage charactergen > 40 Say Attack endif end begin OnHit if dieNextHit == 1 kill elseif getstage charactergen < 70 ; Glenroy can't die until the end of charactergen set temp to GetBaseActorValue health forceav health, temp endif end begin OnHit player if getdead == 0 if warncount <= 3 stopcombat player.scaonActor endif SayTo player CharGenGlenroy 1 set warnCount to warnCount + 1 ; make sure disposition of anybody never goes below 30 ; Baurus set temp to BaurusRef.getdisposition player if temp < 30 set temp to 30 - temp BaurusRef.moddisposition player temp endif ; Renote set temp to RenoteRef.getdisposition player if temp < 30 set temp to 30 - temp RenoteRef.moddisposition player temp endif ; Emperor set temp to UrielSeptimRef.getdisposition player if temp < 30 set temp to 30 - temp UrielSeptimRef.moddisposition player temp endif ; Glenroy set temp to GlenroyRef.getdisposition player if temp < 30 set temp to 30 - temp GlenroyRef.moddisposition player temp endif endif end SLSD==SCVRtargetSLSDSCVR dieNextHitSLSD SCVRtempSLSDr SCVR warncountSCROSCRO*SCRO*SCRO*SCRO*SCROnFSCRO+SCROJSCRO+SCRO9QSCROUeSCRO~}SCROSCRO$SCROSCROSCROCWSCPTlsEDIDCGGoblinLogRun01SCRIPTSCHRFSCDAF6   s 0 ==s 1^^SCTXscn CGGoblinLogRun01SCRIPT short activated begin onActivate activate if activated == 0 set activated to 1 evp CGGoblinRunover02REF.evp endif endSLSDBlockIdSCVR activatedSCROSCPT=EDIDCGGoblinPatrol01SCRIPTSCHRiSCDAi[# s 0 == rXr 1 == &&s 1 rs 80 rf 1^SCTXscriptName CGGoblinPatrol01SCRIPT short startPatrol begin gameMode ; start off the patrol when player appears if startPatrol == 0 && player.getLOS CGGoblinPatrol01REF == 1 set startPatrol to 1 set MQ01.stage to 80 set MQ01.timer to 1 evp endif endSLSDSCVR startPatrolSCROSCRO&SCRO#SCPT[IEDIDCGGoblinPatrol02SCRIPTSCHR9SCDA9+$ s 0 == rXr 300 < &&s 1s 1  s 5 ==s 1s 0f 4'# s 0 > X 17 == && s 1 == && s s 1 +s 0f 5 s 0 == f 0 <= &&^s 1  f 0 >f f X  -SCTXMscriptName CGGoblinPatrol02SCRIPT short stage ; tracks which package is currently running short ready ; flags when we're ready to start a new package float timer begin gameMode ; start off the patrol when player appears ; this uses a marker to check distance, but you could also check it on the actual creature if stage == 0 && CGBeserkerPatrolTrigger01MARKER.getDistance player < 300 set stage to 1 set ready to 1 endif ; completed the patrol path, reset to the first packages ; this assumes there are 4 Find AI packages on the creature if stage == 5 set stage to 1 set ready to 0 set timer to 4 endif ; done one path, instantiate a delay before next one ( in this case a 5 sec delay ) if stage > 0 && getCurrentAIProcedure == 17 && ready == 1 set stage to stage + 1 set ready to 0 set timer to 5 endif ; timer is up, do the next AI package in the patrol sequence if ready == 0 && timer <= 0 evaluatePackage set ready to 1 endif ; timer handler if timer > 0 set timer to timer - getSecondsPassed endif endSLSDSCVRstageSLSDSCVRreadySLSDSCVRtimerSCROHSCROSCPTREDIDCGGoblinSecretDoor01SCRIPTSCHRySCDAyi  s 0 == n f X f X  rns 1^SCTX"scn CGGoblinSecretDoor01SCRIPT short opened ref myParent ref mySelf begin onActivate if opened == 0 playgroup forward 1 set myParent to getParentRef set mySelf to getSelf myParent.activate mySelf 1 set opened to 1 CGGoblinBossREF.evaluatePackage endif endSLSDSCVRopenedSLSDSCVR myParentSLSDnSCVRmySelfSCRVSCRO.SCRVSCPTEDIDCGGoblinTrap01SCRIPTSCHRSCDA  s 0 == f X ns 1f 1 s 1 == f 0 <= &&s 2  f 0 >f f X  -SCTX^scriptName CGGoblinTrap01SCRIPT short triggered float timer ref self begin gameMode if triggered == 0 set self to getself playgroup forward 1 set triggered to 1 set timer to 1 elseif triggered == 1 && timer <= 0 set triggered to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif end SLSD)8SCVR triggeredSLSDSCVRtimerSLSDd)SCVRselfSCRVSCPT&aEDIDCGHeavyArmorScriptSCHRFSCDAF r rs 1 r rs 1SCTXscn CGHeavyArmorScript begin OnAdd player set MQ01.heavyarmor to 1 end begin OnEquip player set MQ01.heavyArmorEquip to 1 end SCROSCRO#SCPTzEDIDCGLightArmorScriptSCHRcSCDAc /r rs 1 rs 60 rf  1 r rs 1SCTXscn CGLightArmorScript ; this script is used to detect when player equips weapons for CharGen tutorial begin OnAdd player set MQ01.lightArmor to 1 set MQ01.invstage to 60 set MQ01.menutimer to 1 end begin OnEquip player set MQ01.lightArmorEquip to 1 end SCROSCRO#SCPTfy EDIDCGMortalPestleSCRIPTSCHR%SCDA% r9 rn@SCTXFscn CGMortalPestleSCRIPT begin OnAdd player setstage MQ01 64 endSCROSCRO#SCPT"JEDIDCGMythicDawnAmbushA1ScriptSCHRSCDA or9 rnr rs 1 ==Y8.DEBUG: Assassin 1 starting combat with Glenroy9 rn prs rs 1 +9 rn# rs 4 >= X:r 26 < &&9 rn rs 0 rrs rs 1 +h:6 Xir 1 == X. 1 == && X; rn 1 == && rs 19 rn SCTXscn CGMythicDawnAmbushA1Script begin OnPackageDone CGAssassinsAmbushA1 setstage charactergen 23 startcombat glenroyref if charactergen.debug == 1 message "DEBUG: Assassin 1 starting combat with Glenroy" endif end begin onHit RenoteRef.kill setstage CharacterGen 24 end begin onDeath set characterGen.ambushCount to characterGen.ambushCount + 1 ; in case he dies before finishing package setstage charactergen 23 ; advance stage when all Ambush A assassins are dead if characterGen.ambushCount >= 4 && getstage CharacterGen < 26 setstage characterGen 26 set characterGen.ambushCount to 0 endif end begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end begin OnActivate if isActionRef player == 1 && getDead == 1 && getstagedone mq01 15 == 1 set MQ01.lootCorpse to 1 setstage MQ01 18 endif Activate endSCRO*SCRO>JSCROnFSCRO*SCROSCRO#SCPT$JEDIDCGMythicDawnAmbushA2ScriptSCHRSCDA or9 rnr rs 1 ==Y8.DEBUG: Assassin 2 starting combat with Glenroy9 rn prs rs 1 +9 rn# rs 4 >= X:r 26 < &&9 rn rs 0 rrs rs 1 +h:6 Xir 1 == X. 1 == && X; rn 1 == && rs 19 rn SCTXscn CGMythicDawnAmbushA2Script begin OnPackageDone CGAssassinsAmbushA2 setstage CharacterGen 23 startcombat glenroyref if charactergen.debug == 1 message "DEBUG: Assassin 2 starting combat with Glenroy" endif end begin onHit RenoteRef.kill setstage CharacterGen 24 end begin onDeath set characterGen.ambushCount to characterGen.ambushCount + 1 ; in case he dies before finishing package setstage charactergen 23 ; advance stage when all Ambush A assassins are dead if characterGen.ambushCount >= 4 && getstage CharacterGen < 26 setstage characterGen 26 set characterGen.ambushCount to 0 endif end begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end begin OnActivate if isActionRef player == 1 && getDead == 1 && getstagedone mq01 15 == 1 set MQ01.lootCorpse to 1 setstage MQ01 18 endif Activate end SCRO*SCRO?JSCROnFSCRO*SCROSCRO#SCPTWvEDIDCGMythicDawnAmbushA3ScriptSCHRSCDA nr9 rnr rs 1 ==Y7-DEBUG: Assassin 3 starting combat with Baurus prs rs 1 +9 rn# rs 4 >= X:r 26 < &&9 rn rs 0 rrs rs 1 +h:6 Xir 1 == X. 1 == && X; rn 1 == && rs 19 rn SCTXCscn CGMythicDawnAmbushA3Script begin OnPackageDone CGAssassinsAmbushA3 setstage charactergen 23 startcombat baurusref if charactergen.debug == 1 message "DEBUG: Assassin 3 starting combat with Baurus" endif end begin onDeath set characterGen.ambushCount to characterGen.ambushCount + 1 ; in case he dies before finishing package setstage charactergen 23 ; advance stage when all Ambush A assassins are dead if characterGen.ambushCount >= 4 && getstage CharacterGen < 26 setstage characterGen 26 set characterGen.ambushCount to 0 endif end begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end begin OnActivate if isActionRef player == 1 && getDead == 1 && getstagedone mq01 15 == 1 set MQ01.lootCorpse to 1 setstage MQ01 18 endif Activate end SCROxSCROnFSCRO*SCROSCRO#SCPT[vEDIDCGMythicDawnAmbushA4ScriptSCHRSCDA nr9 rnr rs 1 ==Y7-DEBUG: Assassin 4 starting combat with Renote prs rs 1 +9 rn# rs 4 >= X:r 26 < &&9 rn rs 0 rrs rs 1 +h:6 Xir 1 == X. 1 == && X; rn 1 == && rs 19 rn SCTXGscn CGMythicDawnAmbushA4Script begin OnPackageDone CGAssassinsAmbushA4 setstage charactergen 23 startcombat renoteref if charactergen.debug == 1 message "DEBUG: Assassin 4 starting combat with Renote" endif end begin onDeath set characterGen.ambushCount to characterGen.ambushCount + 1 ; in case he dies before finishing package setstage charactergen 23 ; advance stage when all Ambush A assassins are dead if characterGen.ambushCount >= 4 && getstage CharacterGen < 26 setstage characterGen 26 set characterGen.ambushCount to 0 endif end begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end begin OnActivate if isActionRef player == 1 && getDead == 1 && getstagedone mq01 15 == 1 set MQ01.lootCorpse to 1 setstage MQ01 18 endif Activate end SCROxSCROnFSCRO*SCROSCRO#SCPTvEDIDCGMythicDawnAmbushB1ScriptSCHRUSCDAU rs rs 1 + rrs rs 1 +SCTXscn CGMythicDawnAmbushB1Script begin onDeath set characterGen.ambushCount to characterGen.ambushCount + 1 end begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end SCROnFSCROSCPTvEDIDCGMythicDawnAmbushB2ScriptSCHRUSCDAU rs rs 1 + rrs rs 1 +SCTXscn CGMythicDawnAmbushB2Script begin onDeath set characterGen.ambushCount to characterGen.ambushCount + 1 end begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end SCROnFSCROSCPT]EDID"CGMythicDawnAssassinGenericScriptSCHR.SCDA. rrs rs 1 +SCTXscn CGMythicDawnAssassinGenericScript begin onDeath player set characterGen.playerKill to characterGen.playerKill + 1 end SCROSCROnFSCPTEDIDCGPrisonSecretWallSwitchSCRIPTSCHRSCDA'# X:r 19 < Xir 1 == && rs 1 ==NFDEBUG: CGPrisonSecretWallSwitchSCRIPT: Secret wall activated by Renote n n rs 1 rf  5SCTXscn CGPrisonSecretWallSwitchSCRIPT begin onActivate if getstage charactergen < 19 && isActionRef RenoteRef == 1 if charactergen.debug == 1 messagebox "DEBUG: CGPrisonSecretWallSwitchSCRIPT: Secret wall activated by Renote" endif playgroup forward 1 CGPrisonSecretWallRef.playgroup forward 1 set charactergen.secretDoor to 1 set charactergen.convTimer to 5 ; time for wall to open fully endif endSCROASCROnFSCRO*SCPT'3 EDIDCGRatAmbushASCRIPTSCHRMSCDAM = XTr 2 >= rf 3 rs 15SCTXscn CGRatAmbushASCRIPT begin OnDeath if getdeadcount CGRatAmbushA >= 2 set MQ01.timer to 3 set MQ01.stage to 15 endif endSCROpSCRO#SCPT4 EDIDCGRatMagicTutorialSCRIPTSCHR/SCDA/! rf 1 rs 34SCTX^scn CGRatMagicTutorialSCRIPT begin onLoad set MQ01.timer to 1 set MQ01.stage to 34 endSCRO#SCPTEDIDCGRatPenGateScriptSCHRoSCDAo_'# Xir 1 == Xir 1 == ||ss 1  s 1 == SCTXscn CGRatPenGateScript short gateOpen begin OnActivate if IsActionRef player == 1 || isActionRef CGRatPenRopeREF == 1 unlock set gateOpen to 1 endif if gateOpen == 1 Activate endif end SLSDURESCVR gateOpenSCROSCRO!SCPT*EDIDCGRenoteScriptSCHRSCDA rs 2 == rf 0 <= && s rs   s 0 ==rf  X3 rn  s 1 ==rf  X4 rrn  s 2 ==rf  X4 rrn  s 3 ==rf  X4 rrn  s 4 ==rf  X4 rrn rs 5 ==rf rf 2.5 +  s 5 ==rf  X4 rrn r9 rn  r  r 9 rn r X. 0 ==  s 3 <=4 rr n s s 1 +s rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srss rXLr  s 30 <s 30 s -Srs( X Z !=s 0 r 9 rn r 9 rn r9 rn r9 rnZ:6 Xir 1 == X. 1 == && X; rn 1 == &&9 rn SCTXk scn CGRenoteScript short target short looted ; set to 1 when player activates Renote after she dies short temp short warncount ; how many times has the player hit me -- reset when start combat begin gamemode ; talk when it is time if CharacterGen.speaker == 2 && CharacterGen.convTimer <= 0 set target to CharacterGen.target if target == 0 set CharacterGen.convTimer to Say CharGenMain 1 elseif target == 1 set CharacterGen.convTimer to SayTo BaurusRef, CharGenMain 1 elseif target == 2 set CharacterGen.convTimer to SayTo RenoteRef, CharGenMain 1 elseif target == 3 set CharacterGen.convTimer to SayTo GlenroyRef, CharGenMain 1 elseif target == 4 set CharacterGen.convTimer to SayTo UrielSeptimRef, CharGenMain 1 ; special case: pause after "My job right now..." if charactergen.convCount == 5 set characterGen.convTimer to characterGen.convTimer + 2.5 endif elseif target == 5 set CharacterGen.convTimer to SayTo player, CharGenMain 1 endif endif end ; Renote gets to marker outside player's cell begin onPackageDone CGRenoteToMarkerA ; messagebox "DEBUG: CGRenoteToMarkerA done" setstage CharacterGen 12 ; trigger Baurus to come down stairs end ; Renote gets to marker inside player's cell begin onPackageDone CGRenoteOpenSecretDoor ; messagebox "DEBUG: CGRenoteWalkToMarkerB done" end ; Renote gets to marker at Ambush A room begin onPackageDone CGRenoteWalkToMarkerC ; messagebox "DEBUG: CGRenoteWalkToMarkerC done" setstage CharacterGen 20 end begin OnHit player if getdead == 0 if warncount <= 3 stopcombat player.scaonActor endif SayTo player CharGenRenote 1 set warnCount to warnCount + 1 ; make sure disposition of anybody never goes below 30 ; Baurus set temp to BaurusRef.getdisposition player if temp < 30 set temp to 30 - temp BaurusRef.moddisposition player temp endif ; Renote set temp to RenoteRef.getdisposition player if temp < 30 set temp to 30 - temp RenoteRef.moddisposition player temp endif ; Emperor set temp to UrielSeptimRef.getdisposition player if temp < 30 set temp to 30 - temp UrielSeptimRef.moddisposition player temp endif ; Glenroy set temp to GlenroyRef.getdisposition player if temp < 30 set temp to 30 - temp GlenroyRef.moddisposition player temp endif endif end begin OnStartCombat if getcombattarget != player set warncount to 0 endif end begin onHit CGAssassin01Ref kill setstage CharacterGen 24 end begin onHit CGAssassin02Ref kill setstage CharacterGen 24 end begin onHit CGAssassin03Ref kill setstage CharacterGen 24 end begin onHit CGAssassin04Ref kill setstage CharacterGen 24 end begin OnActivate if isActionRef player == 1 && getDead == 1 && getstagedone mq01 15 == 1 setstage MQ01 18 endif Activate end SLSD X4 SCVRtargetSLSDf 2.SCVRlootedSLSD SCVRtempSLSDrnSCVR warncountSCROSCRO*SCRO*SCRO*SCRO*SCROnFSCRO+SCRO*SCROMSCRO+SCROıSCRO0JSCRO,JSCROxSCROxSCRO#SCPT9gEDIDCGRopeBucketScriptSCHRVSCDAV Cr X; rn: 0 == rs 58 rf .5SCTXscn CGRopeBucketScript begin OnHitWith Arrow1Iron if getstagedone MQ01 58 == 0 set MQ01.stage to 58 set MQ01.timer to .5 endif endSCRO)xSCRO#SCPT !EDIDCGScaredyRate02ScriptSCHR-SCDA- r "n2rSCTXscn CGScaredyRate02Script begin OnPackageDone DORatRun02 ; attack the zombie setav confidence 50 startcombat CGZombie01REF end SCRO!SCROSCPT6WEDIDCGSewerDoor01ScriptSCHR^SCDA^N Xir 1 ==Y* This gate is opened elsewhere...SCTXscriptName CGSewerDoor01Script begin onActivate if IsActionRef player == 1 message "This gate is opened elsewhere..." endif endSCROSCPTEDIDCGSewerDoorScriptSCHRSCDASCTXscriptName CGSewerDoorScript short lockMode short forceClosed begin gameMode ; close and lock self after Baurus passes, don't want the player sneaking out too soon ; if ( BaurusRef2. progress == 1 && getDistance BaurusRef2 > 300 && forceClosed == 0 ) ; activate player ; lock 100 ; set forceClosed to 1 ; endif ; if player tries to escape as Baurus comes through, take his controls away ; if ( BaurusRef2.progress == 1 && getDistance player < 260 && forceClosed == 0 ) ; disablePlayerControls ; endif end SLSD9SCVR lockModeSLSDSCVR forceClosedSCPTEDIDCGSewerExitScriptSCHR)SCDA),( Xir 1 == X; rnX 0 == &&9Before exiting the sewers, you may revise your character. Edit RaceEdit Birthsign Edit ClassFinished - Exit Sewers Xir 1 ==  s X s 1 ~ > rs 1 ==Y Button = %.0fs  s 3 ==9 rnX r  s 0 ==r  s 1 ==  s 2 ==-run rX. 1 ==SCTXscn CGSewerExitScript short button begin OnActivate if IsActionRef player == 1 && getstagedone MQ01 88 == 0 player.scaonactor messagebox "Before exiting the sewers, you may revise your character.", "Edit Race", "Edit Birthsign", "Edit Class", "Finished - Exit Sewers" else if IsActionRef player == 1 player.scaonactor endif Activate endif end begin gamemode ;if button > 0 && button < 4 ; set button to -1 ; forceweather clear ; activate player 1 ; return ;endif set button to getbuttonpressed if button > -1 if charactergen.debug == 1 message "Button = %.0f", button endif if button == 3 ; exit sewers setstage MQ01 88 activate player elseif button == 0 showracemenu player.moveto CGSewerExitMarker elseif button == 1 showbirthsignmenu elseif button == 2 showclassmenu endif ; nice starry/sunny sky forceweather clear ; just in case player.setcrimegold 0 ; regenerate rat if CGRegenerat.getdead == 1 CGRegenerat.resurrect endif endif end SLSDySCVRbuttonSCROSCROfSCRO#SCROnFSCRO SCROSCPT>vZEDIDCGSewerExteriorDoorScriptSCHRSCDA)% Xir 1 == X:r 100 == &&xA sign on the door reads 'No entry on pain of death. Sealed by authority of Commander Adamus Phillida, Imperial Legion'. SCTXscn CGSewerExteriorDoorScript begin OnActivate if IsActionRef player == 1 && getstage MQ02 == 100 messageBox "A sign on the door reads 'No entry on pain of death. Sealed by authority of Commander Adamus Phillida, Imperial Legion'." else Activate endif endSCROSCRO$SCPT?DEDIDCGThiefSkeletonScriptSCHRASCDAA1 Xir 1 ==s 1 SCTXscn CGThiefSkeletonScript short looted begin onActivate if IsActionRef player == 1 set looted to 1 endif Activate end SLSD XSCVRlootedSCROSCPTg=z EDIDCGTriggerZoneCellScriptSCHRFSCDAF 3r X:r 13 ==9 rn"SCTXscn CGTriggerZoneCellScript begin onTrigger player ; Glenroy waiting for player to get away from the cell door if getstage charactergen == 13 setstage charactergen 14 disable endif end SCROSCROnFSCPTEDIDCGTrigZone01SCRIPTSCHRNSCDAN ;r  s 0 == f X^s 1SCTXscn CGTrigZone01SCRIPT short triggered ref target begin onTrigger player if triggered == 0 set target to getParentRef target.evaluatePackage set triggered to 1 endif end SLSD  SCVR triggeredSLSDSCVRtargetSCRVSCROSCPT>qEDIDCGTrigZoneACTORSCRIPTSCHRaSCDAaQ  s 0 ==nnns 1SCTXscn CGTrigZoneACTORSCRIPT ; Activates assassins short triggered ref mySelf begin onTriggerActor if triggered == 0 CGGenericAssassin1.setrestrained 0 CGGenericAssassin2.setrestrained 0 CGGenericAssassin3.setrestrained 0 set triggered to 1 endif end SLSDSCVR triggeredSLSDSCVRmySelfSCRO wSCROTwSCRORwSCRVSCPTv EDIDCGTrigZoneAmbushBSCRIPTSCHRESCDAE 2r  s 0 ==9 rn s 1SCTXscn CGTrigZoneAmbushBSCRIPT ; Triggers start of Ambush B short triggered begin onTrigger player if triggered == 0 setstage charactergen 32 set triggered to 1 endif end SLSDx)SCVR triggeredSCROSCROnFSCPTv EDID!CGTrigZoneEmperorBirthsignSCRIPTSCHRESCDAE 2r  s 0 == rs 1s 1SCTXscn CGTrigZoneEmperorBirthsignSCRIPT ; Activates linked Parent object once short triggered begin onTrigger player if triggered == 0 set charactergen.inAmbushBRoom to 1 set triggered to 1 endif end SLSDSCVR triggeredSCROSCROnFSCPTrzEDIDCGWeaponScriptSCHRJSCDAJ r rs  1 r rs  1SCTXscn CGWeaponScript ; this script is used to detect when player equips weapons for CharGen tutorial begin OnAdd player set MQ01.weapon to 1 endif end begin OnEquip player set MQ01.weaponEquip to 1 endSCROSCRO#SCPT EDIDCGZombieSCRIPTSCHR_SCDA_ O !n !n !n^^^SCTXscn CGZombieSCRIPT begin OnDeath DORatRunner01.modav aggression 30 DORatRunner02.modav aggression 30 DORatRunner03.modav aggression 30 DORatRunner01.EVP DORatRunner02.EVP DORatRunner03.EVP endSCROڇSCROۇSCROهSCPT4- HEDID CharGenQuestSCHR SCDA   f 0 >f f X  - X:r 0 ==9 rn X:r 30 <! X:r 16 == f 0 <= &&9 rn-) X:r 18 == s 1 == && f 0 <= &&9 rnC? X:r 20 == rXr 480 < rXr 900 < || &&9 rn-) X:r 26 == rXr 2000 > &&  s 1 ==PHCharGenQuest script: setting stage 28 because player is not near Glenroy9 rnD@ X:r 28 == rXr 800 < && f 0 <= && s 0 == &&f  rX4 rr ns 1-) X:r 28 == f 0 <= && s 1 == &&9 rn($ X:r 30 >= X:r 50 < &&! X:r 34 == s 2 >= &&9 rn$40 X:r 36 >= X:r 40 < && s 1 == &&-) r X-r 1 == rX-r 1 == ||s 29 rn( X:r 43 ==9 rn,! X:r 45 == f 0 <= &&9 rn2($ X:r 50 >= X:r 70 < &&,( X:r 52 == rXr 500 < &&9 rn6,( X:r 56 == rXr 500 < &&($ rXCr 1 == r XCr &&9 rn:! X:r 58 == f 0 <= &&9 rn;! X:r 65 == f 0 <= &&9 rnB,( X:r 68 == rXr 300 < &&9 rnF X:r 70 >=! X:r 71 == f 0 <= &&9 rnH! X:r 72 == f 0 <= &&9 rnI( $ X:r 72 >= X:r 74 < &&  XTr s >=% r n% r n% r ns XTr 3 +  s 1 ==2*DEBUG: CharGen generating 3 new assassins. s 6 >= r X. 0 == && r s 1! X:r 85 == f 0 <= &&9 rnV  f 0 >f f X  -C? X:r 73 == rXr 500 > && rXr 800 < &&4rr f 15SCTXYScriptname CharGenQuest short init short convCount short warnCount short hurryCount short birthsignCount short birthsignChoice short tauntCount short tauntStage short what short who short why short die short fate short tookArmor short inAmbushBRoom ; set to 1 by trigger zone when player jumps down into Ambush B room short baurusWarn ; Baurus has warned player not to follow float baurusTimer ; used to time Baurus's warnings before Emp is killed short ambushCount ; how many assassins dead? short playerKill ; how many assassins has the player killed? short secretDoor ; set to 1 when Renote triggers secret door short finalTauntCount ; used to conditionalize final assassin's speech ; used by conversation scripts to tell whose turn to speak short speaker short target ; 1 = Baurus ; 2 = Renote ; 3 = Glenroy ; 4 = Emperor ; 5 = player (as target) ; used to time space between conversation items float convTimer ; used by idle manager to determine which unique idle to play short uniqueIdle ; 1 = Halt! ; 2 = Cross arms ; 3 = Point Forward ; 4 = Point Left ; 5 = Point Right ; 6 = Point Up ; 7 = Check Corpse ; 8 = One hand check weapon hilt ; 9 = Look at weapon ; 10 = Follow me! ; 11 = Stay here (point down) ; 12 = Point Up WEAPON ; 13 = Point Forward WEAPON ; 20 = Talk arms crossed ; 21 = Talk hands at side ; 22 = Talk both hands ; 23 = Talk hands at side 2 ; 24 = Fist clinched ; 25 = Scan ; 26 = Alerted Scan ; 27 = Hold Up! ; 28 = Exhausted ; 29 = Death scene ; 30 = Death scene loop ; this will be 1 through the duration of chargen quest short charGenRunning ; set to 1 to see debug messages in chargen short debug float fQuestDelayTime ; for quest script timing begin gamemode ; count down timer if convTimer > 0 set convTimer to convTimer - getSecondsPassed endif ; bring up race menu first if getstage CharacterGen == 0 setstage characterGen 5 endif ; ********************************************************************************************* ; Large IF block to help script processing speed (skip over chunks when not needed) ; ********************************************************************************************* IF getstage charactergen < 30 ; when emperor finished reacting to player, trigger him to force-greet if getstage characterGen == 16 && convTimer <= 0 setstage characterGen 17 endif ; when secret door is open, trigger everyone to go through it if getstage characterGen == 18 && secretDoor == 1 && convTimer <= 0 setstage characterGen 19 endif ; trigger ambush A if getstage CharacterGen == 20 && ( CGMarkerCEmperor.getdistance player < 480 || CGMarkerC2Renote.getdistance player < 900 ) setstage CharacterGen 22 endif ; make sure things progress even if player isn't listening to conversation if getstage CharacterGen == 26 && player.getdistance GlenroyRef > 2000 if debug == 1 messagebox "CharGenQuest script: setting stage 28 because player is not near Glenroy" endif setstage CharacterGen 28 endif ; Baurus warns player not to follow if getstage CharacterGen == 28 && player.getdistance BaurusRef < 800 && convTimer <= 0 && baurusWarn == 0 set convTimer to BaurusRef.SayTo player CharGenVoice 1 set baurusWarn to 1 endif if getstage CharacterGen == 28 && convTimer <= 0 && baurusWarn == 1 setstage charactergen 29 endif ENDIF ; stage < 30 ; ********************************************************************************************* ; ********************************************************************************************* ; Large IF block to help script processing speed (skip over chunks when not needed) ; ********************************************************************************************* IF getstage charactergen >= 30 && getstage charactergen < 50 ; next phase -- assassins are dead if getstage CharacterGen == 34 && ambushCount >=2 setstage CharacterGen 36 endif ; next phase -- player gets close to NPCs in Room B if getstage CharacterGen >= 36 && getstage CharacterGen < 40 && inAmbushBRoom == 1 if ( GlenroyRef.getdetected player == 1 || BaurusRef.getdetected player == 1 ) set ambushCount to 2 setstage CharacterGen 40 endif endif ; put up birthsign menu if getstage CharacterGen == 43 ShowBirthsignMenu setstage CharacterGen 44 endif if getstage CharacterGen == 45 && convTimer <= 0 setstage CharacterGen 50 endif ENDIF ; getstage charactergen >= 30 && getstage charactergen < 50 ; ********************************************************************************************* ; ********************************************************************************************* ; Large IF block to help script processing speed (skip over chunks when not needed) ; ********************************************************************************************* IF getstage charactergen >= 50 && getstage charactergen < 70 ; next phase -- player gets close to NPCs at Marker F if getstage CharacterGen == 52 && player.getdistance UrielSeptimRef < 500 ; move out setstage CharacterGen 54 endif ; next phase -- player gets close to NPCs at Marker G if getstage CharacterGen == 56 && player.getdistance UrielSeptimRef < 500 ; wait until Baurus and Emperor are both in the cell before proceeding if BaurusRef.getincell ImperialDungeon03 == 1 && UrielSeptimRef.getincell ImperialDungeon03 ; move out setstage CharacterGen 58 endif endif if getstage CharacterGen == 58 && convTimer <= 0 setstage CharacterGen 59 endif ; after Glenroy & Baurus discuss locked gate at I, move on if getstage CharacterGen == 65 && convTimer <= 0 setstage CharacterGen 66 endif ; next phase -- player gets close to NPCs at Marker J if getstage CharacterGen == 68 && player.getdistance UrielSeptimRef < 300 ; move out setstage CharacterGen 70 endif ENDIF ; getstage charactergen >= 50 && getstage charactergen < 70 ; ********************************************************************************************* ; ********************************************************************************************* ; Large IF block to help script processing speed (skip over chunks when not needed) ; ********************************************************************************************* IF getstage charactergen >= 70 ; after Glenroy & Baurus realize they are trapped, move on if getstage CharacterGen == 71 && convTimer <= 0 setstage CharacterGen 72 endif ; after pause, Emperor will force-greet player if getstage CharacterGen == 72 && convTimer <= 0 setstage CharacterGen 73 endif ; generate new assassins for Ambush C if getstage CharacterGen >= 72 && getstage CharacterGen < 74 if getdeadcount CGMythicDawnAssassinAmbushC >= ambushCount CGAmbushCMarker.placeatme CGMythicDawnAssassinAmbushC 1 CGAmbushC2Marker.placeatme CGMythicDawnAssassinAmbushC 1 CGAmbushC3Marker.placeatme CGMythicDawnAssassinAmbushC 1 set ambushCount to getdeadcount CGMythicDawnAssassinAmbushC + 3 if debug == 1 messageBox "DEBUG: CharGen generating 3 new assassins." endif if ambushCount >= 6 && GlenRoyRef.GetDead == 0 set GlenroyRef.dieNextHit to 1 endif endif endif ; after assassin speaks to player, move on ;if getstage CharacterGen == 80 && convTimer <= 0 ; setstage CharacterGen 82 ;endif ; after Baurus kneels by Emperor, move on if getstage CharacterGen == 85 && convTimer <= 0 setstage CharacterGen 86 endif if baurusTimer > 0 set baurusTimer to baurusTimer - getsecondspassed else if getstage CharacterGen == 73 && player.getdistance UrielSeptimRef > 500 && player.getdistance BaurusRef < 800 BaurusRef.SayTo player CharGenVoice set baurusTimer to 15 endif endif ENDIF ; getstage charactergen >= 70 ; ********************************************************************************************* end SLSD but stSCVRinitSLSDce. I SCVR convCountSLSDof the SCVR warnCountSLSDAMJivSCVR hurryCountSLSD Dar-MaSCVRbirthsignCountSLSDight afSCVRbirthsignChoiceSLSDCTDASCVR tauntCountSLSDn in HaSCVR tauntStageSLSDf he chSCVRwhatSLSDSCVRwhoSLSD=n SCVRwhySLSD=nSCVRdieSLSDtSCVRfateSLSDSCVR tookArmorSLSDSCVRinAmbushBRoomSLSD=n SCVR baurusWarnSLSD=nSCVR baurusTimerSLSD=nSCVR ambushCountSLSD=nSCVR playerKillSLSD=nSCVR secretDoorSLSDSCVRfinalTauntCountSLSD,AnSCVRspeakerSLSD tAnSCVRtargetSLSD AnSCVR convTimerSLSD BnSCVR uniqueIdleSLSD SCVRcharGenRunningSLSDBnSCVRdebugSLSDSCVRfQuestDelayTimeSCROSCRO1SCRO1SCRO*SCROnFSCROPSCROSCRO33SCRO*SCROJSCRO*SCRO"SCROSCPTU?|EDIDCheydinhalGuardJailorScriptSCHRSCDA r rs 0 r rs 0v# rs 1 == XGr 1 == &&  f 0 <=f 64rrf f X  -SCTXScriptName CheydinhalGuardJailorScript Float KeepTime Begin OnPackageEnd CheydinhalPrisonFollowPCDay Set NQDGuard.CheydinhalDoorOpen to 0 End Begin OnPackageEnd CheydinhalPrisonFollowPCNight Set NQDGuard.CheydinhalDoorOpen to 0 End Begin GameMode If NQDGuard.SayWarnings == 1 && GetInFaction Jailor == 1 If KeepTime <= 0 Set KeepTime to 6 SayTo Player NQDGuardWarning Else Set KeepTime to KeepTime - GetSecondsPassed EndIf EndIf End SLSDE5SCVR KeepTimeSCROSCROSCRO( SCRORSCROSCRO2SCPT.EDIDCheydinhalMGBasementDoorScriptSCHRSCDA  X:r 30 < X 1 ==  f 6 <f f X  +f 0nrSCTXScriptName CheydinhalMGBasementDoorScript float timer Begin Gamemode if ( GetStage MG02Alter < 30 ) if ( GetOpenState == 1 ) if ( timer < 6 ) set timer to ( timer + GetSecondsPassed ) else set timer to 0 SetOpenState 0 Lock endif endif endif EndSLSD EnSCVRtimerSCROSCPT*EDIDCheydinhalNQDScriptSCHRSCDASCTX'scn CheydinhalNQDScript short DerveraVAR short HallgerdaVAR short ShelleyVAR short MachNaVAR short TertiaVAR short HilVAR short GruiandVAR short OhtesseVAR short NaspiaVAR short RaquanarVAR short DeetsanVAR short OrinturVAR short VoranilVAR short GanredhelVAR short DBHouseVAR SLSDSCVR DerveraVARSLSD,SCVR HallgerdaVARSLSDYNSCVR ShelleyVARSLSD=SCVR MachNaVARSLSDh D DSCVR TertiaVARSLSDSCVRHilVARSLSDcause sSCVR GruiandVARSLSDTDASCVR OhtesseVARSLSD SCVR NaspiaVARSLSD  1SCVR RaquanarVARSLSD SCVR DeetsanVARSLSD SCVR OrinturVARSLSD SCVR VoranilVARSLSDSCVR GanredhelVARSLSDSCVR DBHouseVARSCPT> EDIDCheydinhalPrisonDoorScriptSCHRESCDAE7 rs 0 X 0 == rs 1SCTXScriptName CheydinhalPrisonDoorScript Begin GameMode Set NQDGuard.CheydinhalDoorOpen to 0 If GetLocked == 0 Set NQDGuard.CheydinhalDoorOpen to 1 EndIf EndSCROSCPTEEDIDChorrolGuardHelpTestScriptSCHRSCDASCTX4scn ChorrolGuardHelpTestScript short stageVar SLSDSCVR stageVarSCPTE@|EDIDChorrolGuardJailorScriptSCHRSCDA r rs 0 r rs 0v# rs 1 == XGr 1 == &&  f 0 <=f 64rrf f X  -SCTXScriptName ChorrolGuardJailorScript Float KeepTime Begin OnPackageEnd ChorrolPrisonFollowPCDay Set NQDGuard.ChorrolDoorOpen to 0 End Begin OnPackageEnd ChorrolPrisonFollowPCNight Set NQDGuard.ChorrolDoorOpen to 0 End Begin GameMode If NQDGuard.SayWarnings == 1 && GetInFaction Jailor == 1 If KeepTime <= 0 Set KeepTime to 6 SayTo Player NQDGuardWarning Else Set KeepTime to KeepTime - GetSecondsPassed EndIf EndIf End SLSD== XGSCVR KeepTimeSCROSCROSCRO& SCRORSCROSCRO2SCPT EDIDChorrolNQDScriptSCHR3SCDASCTXyScriptName ChorrolNQDScript ;these variables are for people in Chorrol and Generic convo short RenoitVAR short StrantusVAR short GreyMareVAR short BongondVAR short HonditarVAR short OakCrosierVAR short NorthernGoodsVAR short FireSteelVAR short ChapelVAR short ValgaVAR short OreynVAR short FGuildVAR short MGuildVAR short HundolinVAR short BruiantVAR short BeletteVAR short ScriboniaVAR short GlistelVAR short ILuvChorrolVAR short ILuvFGVAR short ILuvMGVAR short OakCrosier2VAR short HonditarQVAR short GlistelQVAR short ValgaQVAR short FireSteelQVAR short BeletteQVAR short BruiantQVAR short HundolinQVAR short ArenaQVAR short FGuildQVAR short MGuildQVAR short NorthernGoodsQVAR short OakCrosierQVAR short RenoitQVAR short ChapelQVAR short OreynQVAR short ScriboniaQVAR short BongondQVAR short GoblinVAR short MudcrabVAR short GoodbyeVAR SLSD MSSCVR RenoitVARSLSDd'SCVR StrantusVARSLSD@SCVR GreyMareVARSLSDd{SCVR BongondVARSLSD@DSCVR HonditarVARSLSDU^dX^SCVROakCrosierVARSLSDHjSCVRNorthernGoodsVARSLSDSCVR FireSteelVARSLSD  has grSCVR ChapelVARSLSD ves GuiSCVR ValgaVARSLSD I thinkSCVR OreynVARSLSD ome a fSCVR FGuildVARSLSD the guiSCVR MGuildVARSLSDo ThievSCVR HundolinVARSLSDary 1 SCVR BruiantVARSLSDSCVR BeletteVARSLSDn the gSCVR ScriboniaVARSLSDht whenSCVR GlistelVARSLSD !+SCVRILuvChorrolVARSLSDownSCVR ILuvFGVARSLSD !+SCVR ILuvMGVARSLSDo 0SCVROakCrosier2VARSLSD !+SCVR HonditarQVARSLSDet SCVR GlistelQVARSLSD !+SCVR ValgaQVARSLSDyTiSCVRFireSteelQVARSLSD ThieveSCVR BeletteQVARSLSDf3 SCVR BruiantQVARSLSD == s2SCVR HundolinQVARSLSD selectSCVR ArenaQVARSLSD  When aSCVR FGuildQVARSLSD' much hSCVR MGuildQVARSLSD!wedge cSCVRNorthernGoodsQVARSLSD"%%, -10SCVROakCrosierQVARSLSD# lost. SCVR RenoitQVARSLSD$ise. ThSCVR ChapelQVARSLSD% time.SCVR OreynQVARSLSD& XSCVRScriboniaQVARSLSD( get baSCVR BongondQVARSLSD.SCVR GoblinVARSLSD/Ref.EnaSCVR MudcrabVARSLSD0CROGSCVR GoodbyeVARSCPT2 EDIDChorrolPrisonDoorScriptSCHRESCDAE7 rs 0 X 0 == rs 1SCTXScriptName ChorrolPrisonDoorScript Begin GameMode Set NQDGuard.ChorrolDoorOpen to 0 If GetLocked == 0 Set NQDGuard.ChorrolDoorOpen to 1 EndIf EndSCROSCPTIEDIDClaudeMaricScriptSCHR [SCDA[ r rn r^^^ r X:r 50 ==9 rn6 X:r 70 ==9 rnH  X:r 72 ==s X s s 4 / X s <9 rnK^ X. 0 ==4rr SCTXscn ClaudeMaricScript ; QUESTS: ; MS22 ; MS27 short meetPC short threatenPC short holdPosition short temp begin OnPackageStart MS22MaricWaitInTavern additem DrinkWine2TamikaGood 3 end ; make his posse react when he escapes begin OnPackageStart MS22MaricEscapeWithCarving SrazirrRef.evaluatepackage BrucetusFestiniusRef.evaluatepackage RigmorRef.evaluatepackage end begin OnHit player if getstage ms22 == 50 setstage ms22 54 endif if getstage MS22 == 70 setstage ms22 72 endif if getstage MS22 == 72 set temp to getbaseav health set temp to temp / 4 if getav health < temp setstage ms22 75 scaonactor stopcombat player.scaonactor evp if getdead == 0 sayto player MS22Voice endif endif endif end SLSD;SCVRmeetPCSLSDSCVR threatenPCSLSDSCVR holdPositionSLSD@%lSCVRtempSCROSCROSCROSCROSCRO SCROSCRO'SCROSCROK: SCPT EDID ClesaScriptSCHR{SCDA{k Xir 1 == rs 1 ==r" rs 0 SCTX8ScriptName ClesaScript Begin OnActivate If IsActionRef Player == 1 If HorsePCWhiteAnvilRef.RespawnHorse ==1 HorsePCWhiteAnvilRef.MoveTo AnvilHorseMarker HorsePCWhiteAnvilRef.Resurrect HorsePCWhiteAnvilRef.Disable Set HorsePCWhiteAnvilRef.RespawnHorse to 0 EndIf EndIf Activate EndSCROSCROSCROSCPT9~EDIDColinStedrineScriptSCHRmSCDAm Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rnFSCTXScriptName ColinStedrineScript Begin OnDeath Player If GetStage TG07Lex >= 10 && GetStage TG07Lex < 100 Set TG07Lex.TotalDead to TG07Lex.TotalDead + 1 SetStage TG07BloodPrice 70 EndIf End SCROSCRO4cSCRO SCPT-EDIDCountGoldwineScriptSCHRkSCDAk[  s 0 == X:r 60 >=9 rnZs 1 SCTXScriptName CountGoldwineScript short doonce begin OnActivate if ( doonce == 0 ) if ( GetStage MS49 >= 60 ) SetStage MS49 90 set doonce to 1 endif else Activate endif EndSLSDSCVRdoonceSCROrSCPTMS EDIDCPFallingBrick01SCRIPTSCHR!SCDA!  s 0 == f X f Xs 1  s 1 == Xir 0 == && nD z@s 2f 1k f 0 <= s 2 == &&  rns 3  f 0 >f f X  -SCTX%scn CPFallingBrick01SCRIPT short activated ref mySelf ref myParent float timer begin onActivate if activated == 0 set mySelf to getSelf set myParent to getParentRef set activated to 1 endif if activated == 1 && isActionRef mySelf == 0 playgroup unequip 0 triggerHitShader 4 set activated to 2 set timer to 1 endif end begin gameMode if timer <= 0 && activated == 2 myParent.activate mySelf 1 set activated to 3 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSD NAMESCVR activatedSLSD NAMESCVRmySelfSLSD NAMESCVR myParentSLSD NAMESCVRtimerSCRVSCRVSCPTREDIDCPLog01SCRIPTSCHRSCDA| Xir 1 ==  s 0 == ns 1rs rs 1 +^4rrSCTX6scn CPLog01SCRIPT short activated begin onActivate if isActionRef player == 1 if activated == 0 playgroup unequip 0 set activated to 1 set MQ15AnaxesRef.leverCount to MQ15AnaxesRef.leverCount + 1 MQ15XivCatcherRef.evp MQ15XivCatcherRef.Sayto player MQ15Voice endif endif endSLSDnt to MSCVR activatedSCRO9SCROSCROfSCROrSCPT EDIDCPRollingRock01SCRIPTSCHR0SCDA0j Xir 1 == s 2 < &&Y;1The boulder is jammed into place, it won't budge.  s 0 ==f 0f 20 f 180f 20s 0s 1+' rs 1 == rs 1 == && s 1 == &&s 2f 2 f 0 <= s 2 == &&f 40 nD z@s 3f 2* f 0 <= s 3 == &&n"rf 0f 0s 49 rn#  f 0 >f f X  -SCTXscn CPRollingRock01SCRIPT short stage float timer float fTrapDamage float fTrapPushBack float fTrapMinVelocity float fTrapDeathPushBack short bTrapContinuous begin onActivate if isActionRef player == 1 && stage < 2 message "The boulder is jammed into place, it won't budge." endif end begin gameMode if stage == 0 set fTrapDamage to 0 set fTrapPushBack to 20 set fTrapDeathPushBack to 180 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set stage to 1 endif if MQ15Log01REF.activated == 1 && MQ15Log02REF.activated == 1 && stage == 1 set stage to 2 set timer to 2 ; 2 seconds before boulder moves endif if timer <= 0 && stage == 2 set fTrapDamage to 40 playgroup unequip 0 triggerHitShader 3 set stage to 3 set timer to 2 ; seconds till traps stops hurtin' MQ15XivCatcherHoldBoulderMarker.enablelinkedpathpoints endif ; remove trap damage if timer <= 0 && stage == 3 MQ15AnaxesRef.setrestrained 0 MQ15XivilaiYell.disable MQ15AnaxesRef.addscriptpackage MQ15MinotaurExitCave set fTrapDamage to 0 set fTrapDeathPushBack to 0 set stage to 4 setstage mq15 35 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSDushTSCVRstageSLSDSCVRtimerSLSDTSCVR fTrapDamageSLSD{|SCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRfTrapDeathPushBackSLSDPSCVRbTrapContinuousSCROISCROfSCROqSCROSCROSCROSCROySCRO SCPTEDID CrimeScriptSCHRSCDASCTX8ScriptName CrimeScript Long PCBounty Short PCEscapedSLSDBountySCVR PCBountySLSDSCVR PCEscapedSCPTEDIDCRopeRock01SCRIPTSCHRSCDA  s 0 == f X f Xs 1  Xir 0 == s 0 == &&s 1  rn n2 X( 0 == s 1 == &&s 0SCTXscn CRopeRock01SCRIPT ; activates parent short init short busy ref target ref mySelf begin onActivate if init == 0 set target to getParentRef set mySelf to getSelf set init to 1 endif if isActionRef mySelf == 0 && busy == 0 set busy to 1 target.activate mySelf 1 playgroup forward 0 endif end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif endSLSDSCVRinitSLSDSCVRbusySLSDSCVRtargetSLSDn+iSCVRmySelfSCRVSCRVSCPTRW EDIDCRopeRock02EnableSCRIPTSCHRSCDA  s 0 == f X f Xs 1  Xir 0 == s 0 == &&s 1! n2 X( 0 == s 1 == &&s 0SCTXscn CRopeRock02EnableSCRIPT ; enables parent ref short init short busy ref target ref mySelf begin onActivate if init == 0 set target to getParentRef set mySelf to getSelf set init to 1 endif if isActionRef mySelf == 0 && busy == 0 set busy to 1 target.enable playgroup forward 0 endif end begin gameMode if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end SLSDURESCVRinitSLSDURESCVRbusySLSDURESCVRtargetSLSDURESCVRmySelfSCRVSCRVSCPTEDIDCSecretDoor01SCRIPTSCHRSCDA Xir 1 ==  s 0 ==Y  The wall won't shift.  Xir 0 == s 0 == &&  s 0 == ns 1* ns 0+ f 0.5s 1s 1  s 0 == f X f X+s 1 s 1 == f 0 <= &&  rns 0 X( 0 == s 1 == &&s 0  f 0 >f f X  --Fs 0s 0s 0+SCTXPscn CSecretDoor01SCRIPT short init short open short next short busy float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 if open == 0 message " The wall won't shift." endif elseif isActionRef mySelf == 0 && busy == 0 if open == 0 playgroup forward 0 ;triggerHitShader 3 set open to 1 enableLinkedPathPoints else playgroup backward 1 ;triggerHitShader 3 set open to 0 disableLinkedPathPoints endif set timer to 0.5 set next to 1 set busy to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef ; prepare linked pathsgrid points disableLinkedPathPoints set init to 1 endif if next == 1 && timer <= 0 myParent.activate mySelf 1 set next to 0 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set open to 0 set next to 0 set busy to 0 disableLinkedPathPoints end SLSDSCVRinitSLSDr\SCVRopenSLSD҇\rSCVRnextSLSDҌ`RwSCVRbusySLSD=wܜSCVRtimerSLSD2SCVRmySelfSLSD44SCVR myParentSCRVSCRVSCROSCPTcEDIDCSecretDoorOPEN01SCRIPTSCHRSCDA Xir 1 ==  s 1 ==Y  The wall won't shift.  Xir 0 == s 0 == &&  s 0 == ns 1+ ns 0* f 0.5s 1s 1  s 0 == f X f Xs 1 s 1 == f 0 <= &&  rns 0 X( 0 == s 1 == &&s 0  f 0 >f f X  --Fs 0s 0s 0*SCTX!scn CSecretDoorOPEN01SCRIPT short init short closed short busy short next float timer ref mySelf ref myParent begin onActivate if isActionRef player == 1 if closed == 1 message " The wall won't shift." endif elseif isActionRef mySelf == 0 && busy == 0 if closed == 0 playgroup forward 0 ;triggerHitShader 3 set closed to 1 disableLinkedPathPoints else playgroup backward 1 ;triggerHitShader 3 set closed to 0 enableLinkedPathPoints endif set timer to 0.5 set next to 1 set busy to 1 endif end begin gameMode if init == 0 ; set up ref vars set mySelf to getSelf set myParent to getParentRef set init to 1 endif if next == 1 && timer <= 0 myParent.activate mySelf 1 set next to 0 endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set closed to 0 set next to 0 set busy to 0 enableLinkedPathPoints end SLSDSCVRinitSLSD&,%SCVRclosedSLSD>?@SCVRbusySLSDUVWSCVRnextSLSDiddSCVRtimerSLSD8SCVRmySelfSLSD$?SCVR myParentSCRVSCRVSCROSCPTCEDIDCSwingingTrap01SCRIPTSCHRSCDAw  s 0 == nf 10 f 1000f 20s 0s 1  s 1 == SCTXscn CSwingingTrap01SCRIPT short activated float fTrapDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin OnActivate if activated == 0 playgroup unequip 1 set fTrapDamage to 10 set fTrapPushBack to 1000 set fTrapMinVelocity to 20 set bTrapContinuous to 0 set activated to 1 elseif activated == 1 trapUpdate endif endSLSD sSCVR activatedSLSDSCVR fTrapDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSDSCVRbTrapContinuousSCPT + EDIDCTortureCage01SCRIPTSCHR%SCDA%r  s 0 == f X f Xs 13/ Xir 0 == Xir 0 == && s 0 == &&  s 1 == ns 2s 0f 1  s 1 == ns 2s 0f 1  s 0 == ns 2s 1f 1 ns 2s 0f 1 s 2 == f 0 <= &&  rns 1 s 1 == X( 0 == &&s 0  f 0 >f f X  -SCTX2scn CTortureCage01SCRIPT ; on activation, lowers and raises self (anim groups "Forward" & "Backward") ; to open and close the two doors, use the following animation groups ; Door01 open = "FastForward" ; Door01 close = "FastBackward" ; Door02 open = "Left" ; Door02 close = "Right" ; automatically activates parents, so if you want an automatic counterweight effect, link this to a CTortureCageLowered01 object short lowered short busy short initialized ref mySelf ref myParent float timer short door1open ; set to 1 when door01 is open short door2open ; set to 1 when door02 is open begin onActivate ; run once, sets-up ref vars if initialized == 0 set mySelf to getSelf set myParent to getParentRef set initialized to 1 endif if isActionRef player == 0 && isActionRef mySelf == 0 && busy == 0 if door1open == 1 playgroup FastBackward 0 set busy to 2 set door1open to 0 set timer to 1 elseif door2open == 1 playgroup Right 0 set busy to 2 set door2open to 0 set timer to 1 elseif lowered == 0 playgroup forward 0 set busy to 2 set lowered to 1 set timer to 1 else playgroup backward 0 set busy to 2 set lowered to 0 set timer to 1 endif endif end begin gameMode ; daisy-chain activation if busy == 2 && timer <= 0 myParent.activate mySelf 1 set busy to 1 endif ; check if animation is done playing if busy == 1 && isAnimPlaying == 0 set busy to 0 endif if timer > 0 set timer to timer - getSecondsPassed endif endSLSDed,#SCVRloweredSLSD #SCVRbusySLSDh#SCVR initializedSLSD#SCVRmySelfSLSDSCVR myParentSLSDSCVRtimerSLSDSCVR door1openSLSDSCVR door2openSCRVSCRVSCROSCPTm8EDIDCTrapCaveIn01SCRIPTSCHR SCDA s 0 ==f 5 f 300f  1 f 150s  0 n*s 1f 6nD z@$ s 1 == s 0 == && f 5 < &&s 1 f X f X  rn s 1 == f 0 <= &&f 0f 0s 2  f 0 >f f X  -"Fs 0n*SCTXscriptName CTrapCaveIn01SCRIPT ; On activation rocks will come tumbling down and do some damage ; Damage stops after 6 seconds short triggered float timer short next ref mySelf ref myParent float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity short bTrapContinuous begin onActivate if triggered == 0 set fTrapDamage to 5 set fTrapPushBack to 300 set fLevelledDamage to 1 set fTrapMinVelocity to 150 set bTrapContinuous to 0 playgroup unequip 1 enableLinkedPathPoints set triggered to 1 set timer to 6 setDestroyed 1 triggerHitShader 4 endif end begin gameMode ;after 1 sec delay, activate parent (for daisy-chaining) if triggered == 1 && next == 0 && timer < 5 set next to 1 set myParent to getParentRef set mySelf to getSelf myParent.activate mySelf 1 endif if triggered == 1 && timer <= 0 set fTrapDamage to 0 set fTrapPushBack to 0 set triggered to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set triggered to 0 setDestroyed 0 enableLinkedPathPoints end SLSD ; daisSCVR triggeredSLSDSCVRtimerSLSD1 seSCVRnextSLSDSCVRmySelfSLSDSCVR myParentSLSDSCVR fTrapDamageSLSD SCVRfLevelledDamageSLSDSCVRfTrapPushBackSLSDsSCVRfTrapMinVelocitySLSD SCVRbTrapContinuousSCRVSCRVSCPTEDIDCTrapLogs01SCRIPTSCHR SCDA s 0 ==f 30 f 100 f  1.5f  80 f 100s 0 ns 1f 6n&" s 1 == s 0 == && f 5.5 < &&s 1 f  X f X  rn s 1 == f 0 <= &&f 5f 20s 2  f 0 >f f X  -Fs 0nSCTXscriptName CTrapLogs01SCRIPT ; On activation havok will turn on and logs will roll if placed on an incline ; Logs will continue to do damage for 6 seconds after activation short triggered float timer short next ref mySelf ref myParent float fTrapDamage float fLevelledDamage float fTrapPushBack float fTrapMinVelocity float fTrapDeathPushBack short bTrapContinuous begin onActivate if triggered == 0 set fTrapDamage to 30 set fTrapPushBack to 100 set fLevelledDamage to 1.5 set fTrapDeathPushBack to 80 set fTrapMinVelocity to 100 set bTrapContinuous to 0 playgroup unequip 1 set triggered to 1 set timer to 6 setDestroyed 1 endif end begin gameMode ;after 1 sec delay, activate parent (for daisy-chaining) if triggered == 1 && next == 0 && timer < 5.5 set next to 1 set myParent to getParentRef set mySelf to getSelf myParent.activate mySelf 1 endif if triggered == 1 && timer <= 0 set fTrapDamage to 5 set fTrapPushBack to 20 set triggered to 2 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set triggered to 0 setDestroyed 0 endSLSDSCVR triggeredSLSDSCVRtimerSLSDSCVRnextSLSD SCVRmySelfSLSD 0f SCVR myParentSLSD 1SCVR fTrapDamageSLSD  5.5 SCVRfLevelledDamageSLSD s SCVRfTrapPushBackSLSDf SCVRfTrapMinVelocitySLSD  SCVRfTrapDeathPushBackSLSDSCVRbTrapContinuousSCRV SCRVSCPT[EDIDCTrapSwingLog01SCRIPTSCHR SCDA  Xir 0 == s 0 == &&f 15 f 900 f 150 f  1.5s 0 ns 1f 5 s 1 == f 4.5 <= && f X f  X  rns 2 s 2 == f 0 <= &&f 5 f 100s 3  f 0 >f f X  -Fs 0SCTXscn CTrapSwingLog01SCRIPT short triggered float timer ref target ref mySelf float fTrapDamage float fTrapPushBack float fTrapMinVelocity float fLevelledDamage short bTrapContinuous begin onActivate if isActionRef player == 0 && triggered == 0 ; set up the damage values set fTrapDamage to 15 set fTrapPushBack to 900 set fTrapMinVelocity to 150 set fLevelledDamage to 1.5 set bTrapContinuous to 0 playgroup unequip 0 set triggered to 1 set timer to 5 endif end begin gameMode ; daisy-chain if triggered == 1 && timer <= 4.5 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set triggered to 2 endif ; reduce trap potency after a delay if triggered == 2 && timer <= 0 set fTrapDamage to 5 set fTrapPushBack to 100 set triggered to 3 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set triggered to 0 end SLSDSCVR triggeredSLSDto 0 SCVRtimerSLSDeShort0SCVRtargetSLSD timer SCVRmySelfSLSD floatSCVR fTrapDamageSLSD onActiSCVRfTrapPushBackSLSDage valSCVRfTrapMinVelocitySLSD to 500SCVRfLevelledDamageSLSDunequipSCVRbTrapContinuousSCRVSCRV SCROSCPTEDIDCTrapSwingMace01SCRIPTSCHR SCDA  Xir 0 == s 0 == &&f 20 f 900 f  1.5 f 200s 0 ns 1f 6 s 1 == f 5 <= && f X f X  rns 2 s 2 == f 0 <= &&f 5 f 100s 3  f 0 >f f X  -Fs 0SCTX scn CTrapSwingMace01SCRIPT short triggered float timer ref target ref mySelf float fTrapDamage float fTrapPushBack float fTrapMinVelocity float fLevelledDamage short bTrapContinuous begin onActivate if isActionRef player == 0 && triggered == 0 ; set up the damage values set fTrapDamage to 20 set fTrapPushBack to 900 set fLevelledDamage to 1.5 ;0 - 100 ;set fTrapDeathPushBack to 50 set fTrapMinVelocity to 200 set bTrapContinuous to 0 playgroup unequip 0 set triggered to 1 set timer to 6 endif end begin gameMode ; daisy-chain if triggered ==1 && timer <= 5 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set triggered to 2 endif ; reduce trap potency after delay if triggered == 2 && timer <= 0 set fTrapDamage to 5 set fTrapPushBack to 100 set triggered to 3 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set triggered to 0 endSLSDSCVR triggeredSLSDSCVRtimerSLSDaSCVRtargetSLSDSCVRmySelfSLSDaSCVR fTrapDamageSLSDSCVRfTrapPushBackSLSD 0 ==SCVRfTrapMinVelocitySLSD 0sSCVRfLevelledDamageSLSD== f SCVRbTrapContinuousSCRVSCRVSCROSCPTY2EDIDCTrapSwingMaceShort01SCRIPTSCHR SCDA  Xir 0 == s 0 == &&f 10 f 500 f  1.5 f 200s 0 ns 1f 5 s 1 == f 4.5 <= && f X f X  rns 2 s 2 == f 0 <= &&f 5 f 100s 3  f 0 >f f X  -Fs 0SCTXscn CTrapSwingMaceShort01SCRIPT short triggered float timer ref target ref mySelf float fTrapDamage float fTrapPushBack float fTrapMinVelocity float fLevelledDamage short bTrapContinuous begin onActivate if isActionRef player == 0 && triggered == 0 ; set up the damage values set fTrapDamage to 10 set fTrapPushBack to 500 set fLevelledDamage to 1.5 set fTrapMinVelocity to 200 set bTrapContinuous to 0 playgroup unequip 0 set triggered to 1 set timer to 5 endif end begin gameMode ; daisy-chain if triggered == 1 && timer <= 4.5 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set triggered to 2 endif ; reduce trap potency after delay if triggered == 2 && timer <= 0 set fTrapDamage to 5 set fTrapPushBack to 100 set triggered to 3 endif if timer > 0 set timer to timer - getSecondsPassed endif end begin onReset reset3DState set triggered to 0 endSLSDget2AppSCVR triggeredSLSDSCVRtimerSLSDSCVRtargetSLSDSCVRmySelfSLSDSCVR fTrapDamageSLSDSCVRfTrapPushBackSLSDSCVRfTrapMinVelocitySLSD SCVRfLevelledDamageSLSDPT', liSCVRbTrapContinuousSCRVSCRVSCROSCPT_2EDIDCTrigPressurePlate01SCRIPTSCHRSCDAl  s 0 == f X f X  rns 1 nnFs 0nSCTXscn CTrigPressurePlate01SCRIPT ; Activates trap linked as Parent short triggered ref target ref mySelf begin onTrigger if triggered == 0 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 set triggered to 1 playgroup forward 0 setdestroyed 1 endif end begin onReset reset3DState set triggered to 0 setdestroyed 0 end SLSDl=SCVR triggeredSLSDSCVRtargetSLSDSCVRmySelfSCRVSCRVSCPTyEDIDCTrigTripwire01SCRIPTSCHRSCDAl  s 0 == f X f X  rn ns 1nl  s 0 == f X f X  rn ns 1nFs 0nSCTX(scn CTrigTripwire01SCRIPT short triggered ref target ref mySelf begin onActivate if triggered == 0 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 playgroup forward 0 set triggered to 1 setDestroyed 1 endif end begin onTrigger if triggered == 0 set target to getParentRef set mySelf to getSelf target.activate mySelf 1 playgroup forward 0 set triggered to 1 setDestroyed 1 endif end begin onReset reset3DState set triggered to 0 setDestroyed 0 endSLSDVSCVR triggeredSLSDSCVRtargetSLSDSCVRmySelfSCRVSCRVSCPTEDIDDAAzuraScriptSCHRSCDA  X:r 0 >  X:r 30 <  s 5 >=9 rn!!!!!!SCTXiScriptname DAAzuraScript short vampsdead Begin GameMode if ( GetStage DAAzura > 0 ) if ( GetStage DAAzura < 30 ) if ( vampsdead >= 5 ) SetStage DAAzura 30 DAAzuraLamp01.enable DAAzuraLamp02.enable DAAzuraLamp03.enable DAAzuraLamp04.enable DAAzuraLamp05.enable AzuraCandleLightRef.enable endif endif endif EndSLSD0 { 2SCVR vampsdeadSCROSCROSCROSCROSCROSCROp{SCROFSCPTwEDIDDAAzuraStatueScriptSCHR gSCDAg$ G 5 >= G 7 < && s 0 == &&s 1&" G 17 >= G 19 < && s 0 == &&s 1%! G 7 >= G 17 < && s 1 == &&s 0 G 19 >= s 1 == &&s 0 G 5 < s 1 == &&s 0G Xir 1 ==  X:r 20 <  s 1 ==($ rX/r 0 == rXP 2 >= &&;3You do not have the proper offering Azura requires.'# rX/r 0 > rXP 2 >= &&J5Do you wish to offer Glow Dust to the altar of Azura?YesNos 1 rXP 2 <C;Azura demands a more powerful champion to begin this quest.Nothing happens. X:r 30 ==s 6 X:r 100 ==C;Go! Follow my Star, do great deeds, and seek out your fate! s 1 == s X  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0f f X  - # f 0 <= X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == f rX3rnrns 5  s 5 ==`9 rnsUr   X:r 30 ==  s 6 ==a f rX3rnrns 7  s 7 == f rX3rnrns 8  s 8 ==`9 rnd r nnSCTX ScriptName DAAzuraStatueScript short AzuraSpeech short button short messageOn short dawndusk float timer ;This section will control what happens when the player activates the statue Begin GameMode if Gamehour >= 5 && Gamehour < 7 && dawndusk == 0 set dawndusk to 1 elseif Gamehour >= 17 && Gamehour < 19 && dawndusk == 0 set dawndusk to 1 elseif ( GameHour >= 7 ) && ( GameHour < 17 ) && dawndusk == 1 set dawndusk to 0 elseif ( GameHour >= 19 ) && dawndusk == 1 set dawndusk to 0 elseif ( GameHour < 5 ) && dawndusk == 1 set dawndusk to 0 endif End Begin OnActivate ;MessageBox "HELLO!" if isActionRef player == 1 ;MessageBox "ACTIONREF" if ( GetStage DAAzura < 20 ) if dawndusk == 1 if ( player.getitemcount GlowDust == 0 ) && ( Player.GetLevel >= 2 ) MessageBox "You do not have the proper offering Azura requires." elseif ( player.getitemcount GlowDust > 0 ) && ( Player.GetLevel >= 2 ) MessageBox "Do you wish to offer Glow Dust to the altar of Azura?" "Yes" "No" set messageOn to 1 endif elseif ( Player.GetLevel < 2 ) MessageBox "Azura demands a more powerful champion to begin this quest." else MessageBox "Nothing happens." endif elseif ( GetStage DAAzura == 30 ) set AzuraSpeech to 6 elseif ( GetStage DAAzura == 100 ) MessageBox "Go! Follow my Star, do great deeds, and seek out your fate!" endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( AzuraSpeech == 0 ) Player.RemoveItem GlowDust 1 ;MessageBox "Your offering is accepted." set button to 0 set AzuraSpeech to 1 else set button to 0 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DAAzura <= 10 ) if ( AzuraSpeech == 1 ) ;PLAY AUDIO DisablePlayerControls set timer to DAAzuraShrineREF.say DAAzuraSpeech 1 DAAzuraVoice 1 set AzuraSpeech to 2 elseif ( AzuraSpeech == 2 ) ;PLAY AUDIO2 set timer to DAAzuraShrineREF.say DAAzuraSpeech 1 DAAzuraVoice 1 set AzuraSpeech to 3 elseif ( AzuraSpeech == 3 ) ;PLAY AUDIO2 set timer to DAAzuraShrineREF.say DAAzuraSpeech 1 DAAzuraVoice 1 set AzuraSpeech to 4 elseif ( AzuraSpeech == 4 ) ;PLAY AUDIO3 set timer to DAAzuraShrineREF.say DAAzuraSpeech 1 DAAzuraVoice 1 set AzuraSpeech to 5 elseif ( AzuraSpeech == 5 ) EnablePlayerControls SetStage DAAzura 20 GuttedMineExRef.unlock ShowMap GuttedMineMapMarker endif elseif ( GetStage DAAzura == 30 ) if ( AzuraSpeech == 6 ) ;PLAY AUDIO2 DisablePlayerControls set timer to DAAzuraShrineREF.say DAAzuraSpeech 1 DAAzuraVoice 1 set AzuraSpeech to 7 elseif ( AzuraSpeech == 7 ) ;PLAY END AUDIO set timer to DAAzuraShrineREF.say DAAzuraSpeech 1 DAAzuraVoice 1 set AzuraSpeech to 8 elseif ( AzuraSpeech == 8 ) EnablePlayerControls SetStage DAAzura 100 Player.AddItem AzurasStar 1 ModPCFame 1 endif endif endif End SLSDSCVR AzuraSpeechSLSDSCVRbuttonSLSDeSCVR messageOnSLSDeSCVR dawnduskSLSD GSCVRtimerSCROSCRO)uSCRO8SCROFSCROSCRO SCROSCROSCRO*uSCROSCPTEDIDDAAzuraVampScriptSCHR+SCDA+ rs rs 1 +SCTXjScriptName DAAzuraVampScript Begin OnDeath set DAAzura.vampsdead to ( DAAzura.vampsdead + 1 ) EndSCROFSCPTs 8 EDIDDABoethia01ArgonianSCHRSCDA! X:r 20 == s 0 == &&s 1 rs 10 == !nZr rs 1 ==" rs 2 == !nZr rs 3 == !nZr rs 4 == !nZr rs 5 == !nZr rs 6 == !nZr rs 7 == !nZr  rs 8 == !nZr  rs 9 == !nZr f f X  -  f 0 <= s 1 == && rs 10 ==  s 0 == f  rX3r nr ns 1  s 1 == rs 11s 2  s 1 ==3rnr ns 2 &rs rs 1 +s 1SCTXScriptname DABoethia01Argonian Short DoOnce Short DeathSpeech Short TalkDone Float Timer Begin Gamemode If GetStage DABoethia == 20 && DoOnce == 0 Set Doonce to 1 if ( DABoethia.raceVAR == 10 ) setav aggression 90 MoveToMarker DABoethiaMarker01 ;Marker1 is always the first fighter the player sees. elseif ( DABoethia.RaceVAR == 1 ) disable elseif ( DABoethia.RaceVAR == 2 ) setav aggression 90 MoveToMarker DABoethiaMarker09 elseif ( DABoethia.RaceVAR == 3 ) setav aggression 90 MoveToMarker DABoethiaMarker08 elseif ( DABoethia.RaceVAR == 4 ) setav aggression 90 MoveToMarker DABoethiaMarker07 elseif ( DABoethia.RaceVAR == 5 ) setav aggression 90 MoveToMarker DABoethiaMarker06 elseif ( DABoethia.RaceVAR == 6 ) setav aggression 90 MoveToMarker DABoethiaMarker05 elseif ( DABoethia.RaceVAR == 7 ) setav aggression 90 MoveToMarker DABoethiaMarker04 elseif ( DABoethia.RaceVAR == 8 ) setav aggression 90 MoveToMarker DABoethiaMarker03 elseif ( DABoethia.RaceVAR == 9 ) setav aggression 90 MoveToMarker DABoethiaMarker02 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) && ( DeathSpeech == 1 ) if ( DABoethia.warriorVAR == 10 ) if ( Talkdone == 0 ) ;Messagebox "You win, Wood Elf. Go home through the portal for your prize." Set Timer to DABoethiaEntranceMarker.say Praise 1 DABoethiaVoice 1 set TalkDone to 1 elseif ( Talkdone == 1 ) set DABoethia.warriorVAR to 11 set DeathSpeech to 2 endif elseif ( Deathspeech == 1 ) ;MessageBox "Argonian is dead. Boo hoo." DABoethiaEntranceMarker.say EulogyArgonian 1 DABoethiaVoice 1 ;having the corpse speak Boethia's lines may be a problem set DeathSpeech to 2 endif endif end Begin OnDeath set DABoethia.warriorVAR to ( DABoethia.warriorVAR + 1 ) set DeathSpeech to 1 EndSLSDSCVRDoOnceSLSDSCVR DeathSpeechSLSDUSCVR TalkDoneSLSD USCVRTimerSCRO] SCROFSCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO SCRO SCROv SCPTc 8 EDIDDABoethia02BretonSCHRSCDA! X:r 20 == s 0 == &&s 1 rs 1 == !nZr rs 2 ==" rs 3 == !nZr rs 4 == !nZr rs 5 == !nZr rs 6 == !nZr rs 7 == !nZr rs 8 == !nZr  rs 9 == !nZr  rs 10 == !nZr f f X  -  f 0 <= s 1 == && rs 10 ==  s 0 == f rX3r nr ns 1  s 1 == rs 11s 2  s 1 ==3rnr ns 2 &rs rs 1 +s 1SCTXScriptname DABoethia02Breton Short DoOnce Short DeathSpeech Short TalkDone Float Timer Begin Gamemode If GetStage DABoethia == 20 && DoOnce == 0 Set Doonce to 1 if ( DABoethia.raceVAR == 1 ) setav aggression 90 MoveToMarker DABoethiaMarker01 ;Marker1 is always the first fighter the player sees. elseif ( DABoethia.RaceVAR == 2 ) disable elseif ( DABoethia.RaceVAR == 3 ) setav aggression 90 MoveToMarker DABoethiaMarker09 elseif ( DABoethia.RaceVAR == 4 ) setav aggression 90 MoveToMarker DABoethiaMarker08 elseif ( DABoethia.RaceVAR == 5 ) setav aggression 90 MoveToMarker DABoethiaMarker07 elseif ( DABoethia.RaceVAR == 6 ) setav aggression 90 MoveToMarker DABoethiaMarker06 elseif ( DABoethia.RaceVAR == 7 ) setav aggression 90 MoveToMarker DABoethiaMarker05 elseif ( DABoethia.RaceVAR == 8 ) setav aggression 90 MoveToMarker DABoethiaMarker04 elseif ( DABoethia.RaceVAR == 9 ) setav aggression 90 MoveToMarker DABoethiaMarker03 elseif ( DABoethia.RaceVAR == 10 ) setav aggression 90 MoveToMarker DABoethiaMarker02 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) && ( DeathSpeech == 1 ) if ( DABoethia.warriorVAR == 10 ) if ( Talkdone == 0 ) ;Messagebox "You win, Dark Elf. Go home through the portal for your prize." Set Timer to DABoethiaEntranceMarker.say Praise 1 DABoethiaVoice 1 set TalkDone to 1 elseif ( Talkdone == 1 ) set DABoethia.warriorVAR to 11 set DeathSpeech to 2 endif elseif ( Deathspeech == 1 ) ;MessageBox "Breton is dead. Boo hoo." DABoethiaEntranceMarker.say EulogyBreton 1 DABoethiaVoice 1 ;having the corpse speak Boethia's lines may be a problem set DeathSpeech to 2 endif endif end Begin OnDeath set DABoethia.warriorVAR to ( DABoethia.warriorVAR + 1 ) set DeathSpeech to 1 EndSLSDrnSCVRDoOnceSLSD50 == XSCVR DeathSpeechSLSDr r SCVR TalkDoneSLSDr SCVRTimerSCRO] SCROFSCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO SCRO SCROu SCPTf 8 EDIDDABoethia03DarkElfSCHRSCDA! X:r 20 == s 0 == &&s 1 rs 2 == !nZr rs 3 ==" rs 4 == !nZr rs 5 == !nZr rs 6 == !nZr rs 7 == !nZr rs 8 == !nZr rs 9 == !nZr  rs 10 == !nZr  rs 1 == !nZr f f X  -  f 0 <= s 1 == && rs 10 ==  s 0 == f rX3r nr ns 1  s 1 == rs 11s 2  s 1 ==3rnr ns 2 &rs rs 1 +s 1SCTXScriptname DABoethia03DarkElf Short DoOnce Short DeathSpeech Short TalkDone Float Timer Begin Gamemode If GetStage DABoethia == 20 && DoOnce == 0 Set Doonce to 1 if ( DABoethia.raceVAR == 2 ) setav aggression 90 MoveToMarker DABoethiaMarker01 ;Marker1 is always the first fighter the player sees. elseif ( DABoethia.RaceVAR == 3 ) disable elseif ( DABoethia.RaceVAR == 4 ) setav aggression 90 MoveToMarker DABoethiaMarker09 elseif ( DABoethia.RaceVAR == 5 ) setav aggression 90 MoveToMarker DABoethiaMarker08 elseif ( DABoethia.RaceVAR == 6 ) setav aggression 90 MoveToMarker DABoethiaMarker07 elseif ( DABoethia.RaceVAR == 7 ) setav aggression 90 MoveToMarker DABoethiaMarker06 elseif ( DABoethia.RaceVAR == 8 ) setav aggression 90 MoveToMarker DABoethiaMarker05 elseif ( DABoethia.RaceVAR == 9 ) setav aggression 90 MoveToMarker DABoethiaMarker04 elseif ( DABoethia.RaceVAR == 10 ) setav aggression 90 MoveToMarker DABoethiaMarker03 elseif ( DABoethia.RaceVAR == 1) setav aggression 90 MoveToMarker DABoethiaMarker02 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) && ( DeathSpeech == 1 ) if ( DABoethia.warriorVAR == 10 ) if ( Talkdone == 0 ) ;Messagebox "You win, High Elf. Go home through the portal for your prize." Set Timer to DABoethiaEntranceMarker.say Praise 1 DABoethiaVoice 1 set TalkDone to 1 elseif ( Talkdone == 1 ) set DABoethia.warriorVAR to 11 set DeathSpeech to 2 endif elseif ( Deathspeech == 1 ) ;MessageBox "Dark Elf is dead. Boo hoo." DABoethiaEntranceMarker.say EulogyDarkElf 1 DABoethiaVoice 1 ;having the corpse speak Boethia's lines may be a problem set DeathSpeech to 2 endif endif end Begin OnDeath set DABoethia.warriorVAR to ( DABoethia.warriorVAR + 1 ) set DeathSpeech to 1 End SLSDSCVRDoOnceSLSDW!SCVR DeathSpeechSLSD0 == sSCVR TalkDoneSLSDZSCVRTimerSCRO] SCROFSCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO* SCRO SCRO SCROt SCPTf 8 EDIDDABoethia04HighElfSCHRSCDA! X:r 20 == s 0 == &&s 1 rs 3 == !nZr rs 4 ==" rs 5 == !nZr rs 6 == !nZr rs 7 == !nZr rs 8 == !nZr rs 9 == !nZr rs 10 == !nZr  rs 1 == !nZr  rs 2 == !nZr f f X  -  f 0 <= s 1 == && rs 10 ==  s 0 == f rX3r nr ns 1  s 1 == rs 11s 2  s 1 ==3rnr ns 2 &rs rs 1 +s 1SCTXScriptname DABoethia04HighElf Short DoOnce Short DeathSpeech Short TalkDone Float Timer Begin Gamemode If GetStage DABoethia == 20 && DoOnce == 0 Set Doonce to 1 if ( DABoethia.raceVAR == 3 ) setav aggression 90 MoveToMarker DABoethiaMarker01 ;Marker1 is always the first fighter the player sees. elseif ( DABoethia.RaceVAR == 4 ) disable elseif ( DABoethia.RaceVAR == 5 ) setav aggression 90 MoveToMarker DABoethiaMarker09 elseif ( DABoethia.RaceVAR == 6 ) setav aggression 90 MoveToMarker DABoethiaMarker08 elseif ( DABoethia.RaceVAR == 7 ) setav aggression 90 MoveToMarker DABoethiaMarker07 elseif ( DABoethia.RaceVAR == 8 ) setav aggression 90 MoveToMarker DABoethiaMarker06 elseif ( DABoethia.RaceVAR == 9 ) setav aggression 90 MoveToMarker DABoethiaMarker05 elseif ( DABoethia.RaceVAR == 10 ) setav aggression 90 MoveToMarker DABoethiaMarker04 elseif ( DABoethia.RaceVAR == 1 ) setav aggression 90 MoveToMarker DABoethiaMarker03 elseif ( DABoethia.RaceVAR == 2 ) setav aggression 90 MoveToMarker DABoethiaMarker02 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) && ( DeathSpeech == 1 ) if ( DABoethia.warriorVAR == 10 ) if ( Talkdone == 0 ) ;Messagebox "You win, Imperial. Go home through the portal for your prize." Set Timer to DABoethiaEntranceMarker.say Praise 1 DABoethiaVoice 1 set TalkDone to 1 elseif ( Talkdone == 1 ) set DABoethia.warriorVAR to 11 set DeathSpeech to 2 endif elseif ( Deathspeech == 1 ) ;MessageBox "High Elf is dead. Boo hoo." DABoethiaEntranceMarker.say EulogyHighElf 1 DABoethiaVoice 1 ;having the corpse speak Boethia's lines may be a problem set DeathSpeech to 2 endif endif end Begin OnDeath set DABoethia.warriorVAR to ( DABoethia.warriorVAR + 1 ) set DeathSpeech to 1 End SLSDrSCVRDoOnceSLSDs 10SCVR DeathSpeechSLSD!nZSCVR TalkDoneSLSDf 0 f f X  - X( 0 == s 1 == &&s 0SCTX\scn DABoethiaBridgeRuinGate01Script ;see TrigZonePlayerDoonce01_DABoethiaSCRIPT01 through TrigZonePlayerDoonce01_DABoethiaSCRIPT10 ; activated by linked child ; activates optionally linked parent after 5 sec delay short activated short open short next short busy float timer short init ref mySelf ref myParent begin onActivate if activated == 0 set mySelf to getSelf set myParent to getParentRef set activated to 1 endif if isActionRef player == 1 if open == 0 if GetStageDone DABoethia 30 == 1 playgroup forward 0 set open to 1 enableLinkedpathpoints else message "This gate is sealed by the will of Great Boethia. Your fate lies through the other gate." endif endif elseif isActionRef mySelf == 0 && busy == 0 if open == 0 playgroup forward 0 set open to 1 enableLinkedpathpoints ;else ;playgroup backward 0 ;set open to 0 endif set next to 1 set timer to 5 set busy to 1 endif end begin gameMode if init == 0 disablelinkedPathPoints set init to 1 endif ; daisy-chain activation if next == 1 && timer <=0 set next to 0 myParent.activate mySelf 1 endif if timer > 0 set timer to timer - getSecondsPassed endif if isAnimPlaying == 0 && busy == 1 set busy to 0 endif end SLSD get usSCVR activatedSLSDd have SCVRopenSLSDASCVRnextSLSDs SCVRbusySLSDsSCVRtimerSLSD ,sSCVRinitSLSDtsSCVRmySelfSLSDsSCVR myParentSCRVSCRVSCROSCROFSCPTBaEDIDDABoethiaCageOpenScript01SCHRFSCDAF  s 0 ==  Xir 1 == s 0 == && ns 2s 1s 1  Xir 1 == s 2 == && ns 0s 1 l s 1 == X( 0 == &&s 0  s 1 ==3rnrns 2SCTXscriptName DABoethiaCageOpenScript01 short Opened short Busy Short Salutation begin onactivate if Busy == 0 if IsActionRef player == 1 && Opened == 0 playgroup Forward 0 set Opened to 2 set Busy to 1 set salutation to 1 endif elseif IsActionRef player == 1 && Opened == 2 playgroup Backward 0 set Opened to 0 set Busy to 1 endif endif activate end begin gameMode ; check if animation is done playing if Busy == 1 && isAnimPlaying == 0 set busy to 0 endif if ( Salutation == 1 ) DABoethiaEntranceMarker.say Salutation 1 DABoethiaVoice 1 ;messagebox "Salutation Speech. Go through gates to the right and kill Chosen." set salutation to 2 endif end SLSDSCVROpenedSLSDnSCVRBusySLSD 0SCVR SalutationSCRO] SCROSCRO SCRO SCPTR+ EDIDDABoethiaExitPortalSCHR,SCDA, Xir 1 =={9Will you return to the world of men and claim your prize?Yes..First I must claim the spoils from the fallen.s s X  s 0 ==r  s 1 ==Y)Then return when you are ready.SCTXScriptname DABoethiaExitPortal Short button Begin OnActivate if IsActionRef player == 1 messagebox "Will you return to the world of men and claim your prize?" "Yes." "First I must claim the spoils from the fallen." endif end begin gamemode set button to getbuttonpressed if button == 0 player.moveto BoethiaShrineMarker elseif button == 1 message "Then return when you are ready." endif endSLSD!"SCVRbuttonSCROSCROdSCPT EDIDDABoethiaPortalSCHR SCDA Xir 1 ==a4Are you ready to enter the Tournament of Ten Bloods? I am ready.I'm not ready yet.. s X  s 0 ==s 1r  s 1 ==Y$Return when you are ready.! s 0 == X:r 20 == && Xr 1 == rs 1 Xr 1 == rs 2 Xr 1 == rs 3 Xr 1 == rs 4 Xr 1 == rs 5 Xr 1 == rs 6 Xr 1 == rs 7 Xr 1 == rs 8 Xr 1 == rs 9 Xr 1 == rs 10s 1SCTXScriptname DABoethiaPortal short button short doOnce short GoneToRealm Begin OnActivate if IsActionRef player == 1 messagebox "Are you ready to enter the Tournament of Ten Bloods?" "I am ready." "I'm not ready yet." endif end begin gamemode set button to getbuttonpressed if button == 0 set GoneToRealm to 1 player.moveto DABoethiaEntranceMarker elseif button == 1 message "Return when you are ready." endif if ( doOnce == 0 ) && ( GetStage DABoethia == 20 ) if ( GetPCisRace Argonian == 1 ) set DABoethia.raceVAR to 1 elseif ( GetPCisRace Breton == 1 ) set DABoethia.raceVAR to 2 elseif ( GetPCisRace DarkElf == 1 ) set DABoethia.raceVAR to 3 elseif ( GetPCisRace HighElf == 1 ) set DABoethia.raceVAR to 4 elseif ( GetPCisRace Imperial == 1 ) set DABoethia.raceVAR to 5 elseif ( GetPCisRace Khajiit == 1 ) set DABoethia.raceVAR to 6 elseif ( GetPCisRace Nord == 1 ) set DABoethia.raceVAR to 7 elseif ( GetPCisRace Orc == 1 ) set DABoethia.raceVAR to 8 elseif ( GetPCisRace Redguard == 1 ) set DABoethia.raceVAR to 9 elseif ( GetPCisRace WoodElf == 1 ) set DABoethia.raceVAR to 10 endif set doOnce to 1 endif endSLSDd have SCVRbuttonSLSDnFSCVRdoOnceSLSDCTDASCVR GoneToRealmSCROSCRO] SCROFSCRO?SCRO$SCROSCROSCRO SCRO#SCRO$SCROSCROC SCRO#SCPTbEDIDDABoethiaScriptSCHRYSCDAYK! s 11 == X:r 30 < &&9 rn"!SCTXScriptName DABoethiaScript short raceVAR short warriorVAR Begin GameMode if ( warriorVAR == 11 ) && ( GetStage DABoethia < 30 ) SetStage DABoethia 30 DABoethiaPortalRef.disable DABoethiaExitPortalRef.enable endif EndSLSDUSCVRraceVARSLSD7SCVR warriorVARSCRO SCRO8 SCROFSCPTEDIDDABoethiaStatueScriptSCHRSCDA  Xir 1 ==&" X:r 20 < rXP 20 >= && rX/r 0 ===5You do not have the proper offering Boethia requires. rX/r 0 >O:Do you wish to offer Daedra Heart to the altar of Boethia?YesNos 1'# X:r 30 == rXP 20 >= &&s 6 rXP 20 <E=Boethia demands a more powerful champion to begin this quest.  s 1 == s X  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0f f X  - # f 0 <= X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == f rX3rnrns 5  s 5 ==9 rn`! rs 1  X:r 30 ==  s 6 ==a f rX3rnrns 7  s 7 == f rX3rnrns 8  s 8 ==`9 rnd rnnSCTX^ ScriptName DABoethiaStatueScript short BoethiaSpeech short button short messageOn float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DABoethia < 20 ) && ( Player.GetLevel >= 20 ) if ( player.getitemcount DaedraHeart == 0 ) MessageBox "You do not have the proper offering Boethia requires." elseif ( player.getitemcount DaedraHeart > 0 ) MessageBox "Do you wish to offer Daedra Heart to the altar of Boethia?" "Yes" "No" set messageOn to 1 endif elseif ( GetStage DABoethia == 30 ) && ( Player.GetLevel >= 20 ) set BoethiaSpeech to 6 elseif ( Player.GetLevel < 20 ) MessageBox "Boethia demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( BoethiaSpeech == 0 ) Player.RemoveItem DaedraHeart 1 ;MessageBox "Your offering is accepted." set button to 0 set BoethiaSpeech to 1 else set button to 0 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DABoethia <= 10 ) if ( BoethiaSpeech == 1 ) ;PLAY AUDIO DisablePlayerControls set timer to DABoethiaShrineRef.say DABoethiaSpeech 1 DABoethiaVoice 1 set BoethiaSpeech to 2 elseif ( BoethiaSpeech == 2 ) ;PLAY AUDIO2 set timer to DABoethiaShrineRef.say DABoethiaSpeech 1 DABoethiaVoice 1 set BoethiaSpeech to 3 elseif ( BoethiaSpeech == 3 ) ;PLAY AUDIO3 set timer to DABoethiaShrineRef.say DABoethiaSpeech 1 DABoethiaVoice 1 set BoethiaSpeech to 4 elseif ( BoethiaSpeech == 4 ) ;PLAY AUDIO4 set timer to DABoethiaShrineRef.say DABoethiaSpeech 1 DABoethiaVoice 1 set BoethiaSpeech to 5 elseif ( BoethiaSpeech == 5 ) SetStage DABoethia 20 EnablePlayerControls DABoethiaPortalRef.enable Set DABoethia.warriorvar to 1 endif elseif ( GetStage DABoethia == 30 ) if ( BoethiaSpeech == 6 ) ;PLAY AUDIO5 DisablePlayerControls set timer to DABoethiaShrineRef.say DABoethiaSpeech 1 DABoethiaVoice 1 set BoethiaSpeech to 7 elseif ( BoethiaSpeech == 7 ) ;PLAY AUDIO6 set timer to DABoethiaShrineRef.say DABoethiaSpeech 1 DABoethiaVoice 1 set BoethiaSpeech to 8 elseif ( BoethiaSpeech == 8 ) EnablePlayerControls SetStage DABoethia 100 Player.AddItem DAGoldBrand 1 ModPCFame 1 endif endif endif End SLSDSCVRBoethiaSpeechSLSDSCVRbuttonSLSDuSCVR messageOnSLSD.NIFMOSCVRtimerSCROSCRO SCROFSCROSCROSCROSCRO SCROqSCPTEDIDDABoethiaWarriorScriptSCHR+SCDA+ rs rs 1 +SCTXwScriptName DABoethiaWarriorScript Begin OnDeath set DABoethia.warriorVAR to ( DABoethia.warriorVAR + 1 ) EndSCROFSCPT9&kEDIDDAClavicusDogScriptSCHRSCDAwf f X  - 0 f 0 <=. rX/r 0 > X:r 20 == rXCr 0 == rs 0 == f rX3rnrn rs 1 rs 1 == f rX3rnrn rs 2 rs 2 == f rX3rnrn rs 3 rs 3 == f rX3rnrn rs 4 rs 4 == f rX3rnrn rs 5 rs 5 ==9 rn rs 6$ X:r 45 == rs 6 == && f rX3rnrn rs 7$ X:r 45 == rs 7 == && f rX3rnrn rs 8$ X:r 47 == rs 0 == && f rX3rnrn rs 1$ X:r 50 == rs 0 == && f rX3rnrn rs 1$ X:r 50 == rs 1 == && f rX3rnrn rs 240 X:r 100 >= rs 2 == rs 0 == || &&f 3 rs 3 rs 3 ==3rnrn rs 4!SCTXsScriptName DAClavicusDogScript short dogtalk1 short dogtalk2 short dogtalk3 float timer Begin GameMode set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( player.GetItemCount DAClavicusDogStatue > 0 ) if ( GetStage DAClavicusVile == 20 ) If ( Player.GetInCell Clavicus == 0 ) if ( DAClavicusDogStatueREF.dogtalk1 == 0 ) ;MessageBox "PLAYING DOG AUDIO 1, TELLING YOU TO GIVE UP THE QUEST" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 1 elseif ( DAClavicusDogStatueREF.dogtalk1 == 1 ) ;MessageBox "PLAYING DOG AUDIO 1, TELLING YOU TO GIVE UP THE QUEST" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 2 elseif ( DAClavicusDogStatueREF.dogtalk1 == 2 ) ;MessageBox "PLAYING DOG AUDIO 1, TELLING YOU TO GIVE UP THE QUEST" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 3 elseif ( DAClavicusDogStatueREF.dogtalk1 == 3 ) ;MessageBox "PLAYING DOG AUDIO 1, TELLING YOU TO GIVE UP THE QUEST" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 4 elseif ( DAClavicusDogStatueREF.dogtalk1 == 4 ) ;MessageBox "PLAYING DOG AUDIO 1, TELLING YOU TO GIVE UP THE QUEST" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 5 elseif ( DAClavicusDogStatueREF.dogtalk1 == 5 ) SetStage DAClavicusVile 30 set DAClavicusDogStatueREF.dogtalk1 to 6 endif endif elseif ( GetStage DAClavicusVile == 45 ) && ( DAClavicusDogStatueREF.dogtalk1 == 6 ) ;MessageBox "PLAYING DOG AUDIO 2, TELLING YOU NOT TO FIGHT" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 7 elseif ( GetStage DAClavicusVile == 45 ) && ( DAClavicusDogStatueREF.dogtalk1 == 7 ) ;MessageBox "PLAYING DOG AUDIO 2, TELLING YOU NOT TO FIGHT" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk1 to 8 elseif ( GetStage DAClavicusVile == 47 ) && ( DAClavicusDogStatueREF.dogtalk2 == 0 ) ;MessageBox "PLAYING DOG AUDIO 3, TELLING YOU GOOD JOB, NOW GO BACK TO THE SHRINE" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk2 to 1 elseif ( GetStage DAClavicusVile == 50 ) && ( DAClavicusDogStatueREF.dogtalk3 == 0 ) ;MessageBox "PLAYING DOG AUDIO $, TELLING YOU NOT TO BRING BACK THE SWORD" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk3 to 1 elseif ( GetStage DAClavicusVile == 50 ) && ( DAClavicusDogStatueREF.dogtalk3 == 1 ) ;MessageBox "PLAYING DOG AUDIO $, TELLING YOU NOT TO BRING BACK THE SWORD" set timer to DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk3 to 2 elseif ( GetStage DAClavicusVile >= 100 ) && ( DAClavicusDogStatueREF.dogtalk3 == 2 ) || ( DAClavicusDogStatueREF.dogtalk3 == 0 ) set timer to 3 set DAClavicusDogStatueREF.dogtalk3 to 3 elseif ( DAClavicusDogStatueREF.dogtalk3 == 3 ) DAClavicusDogStatueREF.say DAClavicusSpeech 1 DABarnasVoice 1 set DAClavicusDogStatueREF.dogtalk3 to 4 ;MessageBox "SHOULD SAY AUDIO" ;Player.RemoveItem DAClavicusDogStatue 1 DAClavicusDogShrineREF.Enable RemoveMe endif endif endif EndSLSDSCVR dogtalk1SLSDSCVR dogtalk2SLSDSCVR dogtalk3SLSDSCVRtimerSCROCSCROCSCROSCRO%kSCROFSCRO]^SCROCSCROCSCPTEDIDDAClavicusDogVARSSCHRSCDASCTXGscn DAClavicusDogVARS short dogtalk1 short dogtalk2 short dogtalk3SLSD{SCVR dogtalk1SLSDSCVR dogtalk2SLSDSCVR dogtalk3SCPT#kEDIDDAClavicusStatueScriptSCHR SCDA Xir 1 ==&" X:r 20 < rXP 20 >= && rX/r 500 <C;You do not have the proper offering Clavicus Vile requires.+' rX/r 500 >= rXP 20 >= &&L7Do you wish to offer 500 gold to the altar of Clavicus?YesNos 1 X:r 47 ==s 5 X:r 50 ==s 7 rXP 20 <KCClavicus Vile demands a more powerful champion to begin this quest. s 1 ~ == s 2 ~  s 1 == s X  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1 s 0 == s 8 == &&s 0s 9 s 1 == s 8 == &&s 0s 12s 0  s 0 >f f X  - ? s 0 == = f 0 <= X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == X:r 20 < &&`9 rn rn"Xr Xr   X:r 47 ==  s 5 ==a f rX3rnrns 6  s 6 ==`9 rni s 1 ~*& X:r 50 == rX/r 0 > &&  s 7 ==a f rX3rnrns 8  s 8 ==D/Do you return the Umbra Sword to Clavicus Vile?YesNos 1  s 9 == f rX3rnrns 10 s 10 == f rX3rnrns 11 s 11 ==` r n9 rndR r nn s 1 ~ s 12 ==a f rX3rnrns 13 s 13 ==`  r n9 rni s 1 ~SCTXScriptName DAClavicusStatueScript short ClavicusSpeech short button short messageOn float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DAClavicusVile < 20 ) && ( Player.GetLevel >= 20 ) if ( player.getitemcount gold001 < 500 ) MessageBox "You do not have the proper offering Clavicus Vile requires." elseif ( player.getitemcount gold001 >= 500 ) && ( Player.GetLevel >= 20 ) MessageBox "Do you wish to offer 500 gold to the altar of Clavicus?" "Yes" "No" set messageOn to 1 endif elseif ( GetStage DAClavicusVile == 47 ) set ClavicusSpeech to 5 elseif ( GetStage DAClavicusVile == 50 ) set ClavicusSpeech to 7 elseif ( Player.GetLevel < 20 ) MessageBox "Clavicus Vile demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( ClavicusSpeech == -1 ) ;DAClavicusDogShrineREF.Enable set ClavicusSpeech to -2 endif if ( messageOn == 1 ) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( ClavicusSpeech == 0 ) Player.RemoveItem gold001 500 ;MessageBox "TOOK YOUR MONEY." set button to 0 set ClavicusSpeech to 1 elseif ( button == 0 ) && ( ClavicusSpeech == 8 ) ;Player.RemoveItem DAClavicusUmbraSword 1 set button to 0 Set ClavicusSpeech to 9 elseif ( button == 1 ) && ( ClavicusSpeech == 8 ) set button to 0 Set ClavicusSpeech to 12 else set button to 0 endif endif ;HERE DOWN HANDLES ALL THE AUDIO if ( ClavicusSpeech > 0 ) set timer to ( timer - GetSecondsPassed ) endif if ( MessageOn == 0 ) if ( timer <= 0 ) if ( GetStage DAClavicusVile <= 10 ) if ( ClavicusSpeech == 1 ) ;PLAY AUDIO DisablePlayerControls set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 2 elseif ( ClavicusSpeech == 2 ) ;PLAY AUDIO2 set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 3 elseif ( ClavicusSpeech == 3 ) ;PLAY AUDIO3 set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 4 elseif ( ClavicusSpeech == 4 ) && ( GetStage DAClavicusVile < 20 ) EnablePlayerControls SetStage DAClavicusVile 20 Player.AddItem DAClavicusDogStatue 1 DAClavicusDogShrineREF.Disable Addtopic UmbraTOPIC Addtopic PellsGateTOPIC endif elseif ( GetStage DAClavicusVile == 47 ) if ( ClavicusSpeech == 5 ) ;PLAY FIRST END AUDIO ;MessageBox "PLAYING PISSED OFF AUDIO, GIVING DOG REWARD, AND GIVING JOURNAL" DisablePlayerControls set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 6 elseif ( ClavicusSpeech == 6 ) EnablePlayerControls SetStage DAClavicusVile 105 set ClavicusSpeech to -1 endif elseif ( GetStage DAClavicusVile == 50 ) && ( player.getItemCount DAClavicusUmbraSword > 0 ) if ( ClavicusSpeech == 7 ) DisablePlayerControls set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 8 elseif ( ClavicusSpeech == 8 ) MessageBox "Do you return the Umbra Sword to Clavicus Vile?" "Yes" "No" Set MessageOn to 1 elseif ( ClavicusSpeech == 9 ) ;MessageBox "PLAYING HAPPY AUDIO, TAKING SWORD, GIVING MASQUE" set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 10 elseif ( ClavicusSpeech == 10 ) set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 11 elseif ( ClavicusSpeech == 11 ) EnablePlayerControls Player.AddItem DAClavicusMasque 1 SetStage DAClavicusVile 100 Player.RemoveItem DAClavicusUmbraSword 1 ;Player.RemoveItem DAClavicusDogStatue 1 ModPCFame 1 Set ClavicusSpeech to -1 elseif ( ClavicusSpeech == 12 ) ;MessageBox "PLAYING ANGRY AUDIO" DisablePlayerControls set timer to DAClavicusShrineREFTEMP.say DAClavicusSpeech 1 DAClavicusVoice 1 set ClavicusSpeech to 13 elseif ( ClavicusSpeech == 13 ) EnablePlayerControls ;Player.RemoveItem DAClavicusDogStatue 1 SetQuestObject DAClavicusUmbraSword 0 SetStage DAClavicusVile 105 Set ClavicusSpeech to -1 endif endif endif endif End SLSDg SCVRClavicusSpeechSLSDraSwordSCVRbuttonSLSDSCVR messageOnSLSD SCVRtimerSCROSCROCSCROFSCROSCRO1kSCROCSCROCSCRO%kSCRO`SCROaSCRO"kSCRO(SCPTyCEDIDDAClavicusUmbraScriptSCHR;SCDA;-  s 1 ==rs 0SCTXscn DAClavicusUmbraScript short umbratalk short attack Begin GameMode if ( attack == 1 ) StartCombat Player set attack to 0 endif EndSLSDSCVR umbratalkSLSDa. Iything.SCVRattackSCROSCPT 'kEDIDDAClavicusVileScriptSCHRuSCDAug X:r 0 > X:r 50 < rX/r 0 >9 rn2SCTXScriptName DAClavicusVileScript short irokitalk Begin GameMode if ( GetStage DAClavicusVile > 0 ) if ( GetStage DAClavicusVile < 50 ) if ( player.GetItemCount DAClavicusUmbraSword > 0 ) SetStage DAClavicusVile 50 endif endif endif EndSLSD 50 s 1 rX 1 ==ns 1ns 0SCTXscn DaedraLeveledListSCRIPT ; this script marks the leveled lists as destroyed when the parent is destroyed short doOnce ref myParent short tempdestroyed short temphaveparent begin OnLoad set doOnce to 0 end begin gamemode if doOnce == 0 set doOnce to 1 set myParent to GetParentRef if myParent > 0 set temphaveparent to 1 if myParent.getdestroyed == 1 setdestroyed 1 set tempdestroyed to 1 else setdestroyed 0 set tempdestroyed to 0 endif endif endif endSLSD100.00)SCVRdoOnceSLSDland ==SCVR myParentSLSD 0.00) SCVRtempdestroyedSLSD1, 31 =SCVRtemphaveparentSCRVSCPTaEDIDDaedricSiegeEngineSCRIPTSCHRSCDAnSCTXxscn DaedricSiegeEngineSCRIPT begin OnLoad ; all the stuff to keep player from messing with it setghost 1 end SCPT@y EDID DagailScriptSCHRSSCDAS C)% X:r 10 >= X:r 100 < &&9 rnSCTXScriptName DagailScript Begin OnDeath if ( GetStage TrainingMysticism >= 10 ) && ( GetStage TrainingMysticism < 100 ) SetStage TrainingMysticism 200 endif EndSCRO7SCPTyEDIDDAHermaeusScriptSCHRSCDA  s 0 == f 0.5s 1 s 14 ==  s 0 == X:r 10 >=s 1  s 1 ==Vrrs 2 rs 1 ==($ X:r 0 == X:r 20 == ||:6 s 1 == X 1 == && s 0 == && X:r 0 == &&rz(@s 1SCTX Scriptname DAHermaeusScript short questsdone short raceskilled short killedargonian short killedbreton short killedbosmer short killedimperial short killedkhajiit short killeddunmer short killedaltmer short killednord short killedredguard short killedorc short questcount short spellworking short initiate ref target float fquestdelaytime short doOnce short doneVAR short sametarget Begin GameMode if ( doOnce == 0 ) set fquestdelaytime to 0.5 set doOnce to 1 endif ;if ( target.GetDead == 1 ) && ( spellworking == 1 ) ; if ( target.GetIsRace Argonian == 1 ) ; Set killedargonian to 1 ; SetStage DAHermaeusMora 30 ; elseif ( target.GetIsRace Breton == 1 ) ; Set killedbreton to 1 ; SetStage DAHermaeusMora 31 ; elseif ( target.GetIsRace woodelf == 1 ) ; Set killedbosmer to 1 ; SetStage DAHermaeusMora 32 ; elseif ( target.GetIsRace imperial == 1 ) ; Set killedimperial to 1 ; SetStage DAHermaeusMora 33 ; elseif ( target.GetIsRace khajiit == 1 ) ; Set killedkhajiit to 1 ; SetStage DAHermaeusMora 34 ; elseif ( target.GetIsRace darkelf == 1 ) ; Set killeddunmer to 1 ; SetStage DAHermaeusMora 35 ; elseif ( target.GetIsRace highelf == 1 ) ; Set killedaltmer to 1 ; SetStage DAHermaeusMora 36 ; elseif ( target.GetIsRace nord == 1 ) ; Set killednord to 1 ; SetStage DAHermaeusMora 37 ; elseif ( target.GetIsRace redguard == 1 ) ; Set killedredguard to 1 ; SetStage DAHermaeusMora 38 ; elseif ( target.GetIsRace orc == 1 ) ; Set killedorc to 1 ; SetStage DAHermaeusMora 39 ; endif ; if ( raceskilled == 0 ) && ( killedargonian == 1 ) && ( killedbreton == 1 ) && ( killedbosmer == 1 ) && ( killedimperial == 1 ) && ( killedkhajiit == 1 ) && ( killeddunmer == 1 ) && ( killedaltmer == 1 ) && ( killednord == 1 ) && ( killedredguard == 1 ) && ( killedorc == 1 ) ; set raceskilled to 1 ; SetStage DAHermaeusMora 40 ; endif ; set spellworking to 0 ;endif if ( questcount == 14 ) if ( questsdone == 0 ) if ( GetStage MQ08 >= 10 ) set questsdone to 1 endif endif endif if ( initiate == 1 ) CastaFlavusREF.StartConversation Player Greeting set initiate to 2 endif End Begin MenuMode if ( Dark00General.Murderer == 1 ) if ( GetStage Dark01Knife == 0 ) || ( GetStage Dark01Knife == 20 ) return endif endif if ( questsdone == 1 ) && ( IsPCSleeping == 1 ) && ( initiate == 0 ) && ( GetStage DAHermaeusMora == 0 ) CastaFlavusREF.MoveTo Player 12 set initiate to 1 endif EndSLSDSCVR questsdoneSLSDSCVR raceskilledSLSDSCVRkilledargonianSLSDSCVR killedbretonSLSDSCVR killedbosmerSLSDSCVRkilledimperialSLSDSCVRkilledkhajiitSLSD)SCVR killeddunmerSLSD SCVR killedaltmerSLSD SCVR killednordSLSD SCVRkilledredguardSLSD SCVR killedorcSLSDSCVR questcountSLSDSCVR spellworkingSLSDBSCVR initiateSLSD SCVRtargetSLSDnSCVRfquestdelaytimeSLSDSCVRdoOnceSLSDSCVRdoneVARSLSDSCVR sametargetSCRO SCRV SCRO*SCROSCROSCRO=SCRO$SCROFSCPT EDIDDAHermaeusSoulsSpellSCHRSCDA+ ' Xa 1 == X. 0 == && X@ 0 == && f X rs 0 ==rf  X rs 1! f rf == rs 1 == &&E=That person is already affected by Hermaeus Mora's Soul Trap. rs 1?7You may only trap one soul at a time for Hermaeus Mora.YB8That is not a valid target for Hermaeus Mora's Soul Traps 16  s 0 ==f 0 rs 1SCTXscn DAHermaeusSoulsSpell short neardead ref newtarget short badtarget short sametarget begin ScriptEffectStart if ( IsActor == 1 ) && ( GetDead == 0 ) && ( GetIsCreature == 0 ) set newtarget to GetSelf if ( DAHermaeusMora.spellworking == 0 ) set DAHermaeusMora.target to GetSelf ;messageBox "DAHermaeusMora.target: %.0f", DAHermaeusMora.target set DAHermaeusMora.spellworking to 1 else if ( newtarget == DAHermaeusMora.target ) && ( DAHermaeusMora.spellworking == 1 ) MessageBox "That person is already affected by Hermaeus Mora's Soul Trap." set DAHermaeusMora.sametarget to 1 else MessageBox "You may only trap one soul at a time for Hermaeus Mora." endif endif else Message "That is not a valid target for Hermaeus Mora's Soul Trap" set badtarget to 1 end begin ScriptEffectFinish if ( badtarget == 0 ) set newtarget to 0 set DAHermaeusMora.doneVAR to 1 endif endif end ;begin ScriptEffectUpdate ;this checks the race of the killed NPC and updates the DAHermaeusMoraScript ; if ( GetAV Health <= 5 ) && ( neardead == 0 ) ; Messagebox "I'm DEAD!!!" ; if ( GetIsRace Argonian == 1 ) ; Set DAHermaeusMora.killedargonian to 1 ; elseif ( GetIsRace Breton == 1 ) ; Set DAHermaeusMora.killedbreton to 1 ; elseif ( GetIsRace darkelf == 1 ) ; Set DAHermaeusMora.killeddunmer to 1 ; elseif ( GetIsRace highelf == 1 ) ; Set DAHermaeusMora.killedaltmer to 1 ; elseif ( GetIsRace imperial == 1 ) ; Set DAHermaeusMora.killedimperial to 1 ; elseif ( GetIsRace khajiit == 1 ) ; Set DAHermaeusMora.killedkhajiit to 1 ; elseif ( GetIsRace nord == 1 ) ; Set DAHermaeusMora.killednord to 1 ; elseif ( GetIsRace orc == 1 ) ; Set DAHErmaeusMora.killedorc to 1 ; elseif ( GetIsRace redguard == 1 ) ; Set DAHermaeusMora.killedredguard to 1 ; elseif ( GetIsRace woodelf == 1 ) ; Set DAHermaeusMora.killedbosmer to 1 ; endif ; Kill Player ; set neardead to 1 ; endif ; ;end ;begin ScriptEffectFinish ; MessageBox "THE SPELL IS DONE" ;endSLSDVSCVR neardeadSLSDSCVR newtargetSLSDrmaeusMSCVR badtargetSLSD 0 elsSCVR sametargetSCRVSCROFSCPTQEDIDDAHermaeusStaffSCHR SCDA f rf +' rs 1 == s 0 == && rs 0 == &&s 1+' rs 1 == s 0 == && rs 1 == && rs 0 rs 0  s 1 ==f f X  +  f 2 >=s 2-)) rX. 1 == rs 1 == && s 2 == && rXEr 1 == rs 19 rn rXEr 1 == rs 19 rn rXEr 1 == rs 19 rn  rXEr 1 == rs 19 rn! rXEr 1 == rs 19 rn" rXEr 1 == rs 19 rn# rXEr 1 == rs  19 rn$ rXEr 1 == rs  19 rn% rXEr 1 == rs  19 rn& rXEr 1 == rs  19 rn'[W rs 0 == rs 1 == && rs 1 == && rs 1 == && rs 1 == && rs 1 == &&LH rs 1 == rs 1 == && rs 1 == && rs 1 == && rs 1 == && rs 19 rn( rs 0 rf  0 rs 0s 0-) rX. 0 == rs 1 == && s 2 == && rs 0 rf  0 rs 0s 0SCTXZ scn DAHermaeusStaff ref target float timer short timerOn Begin GameMode set target to DAHermaeusMora.target if ( DAHermaeusMora.doneVAR == 1 ) && ( timerOn == 0 ) && ( DAHermaeusMora.sametarget == 0 ) set timerOn to 1 elseif ( DAHermaeusMora.doneVAR == 1 ) && ( timerOn == 0 ) && ( DAHermaeusMora.sametarget == 1 ) set DAHermaeusMora.doneVAR to 0 set DAHermaeusMora.sametarget to 0 endif if ( timerOn == 1 ) set timer to ( timer + GetSecondsPassed ) if ( timer >= 2 ) set timerOn to 2 endif endif if ( target.GetDead == 1 ) && ( DAHermaeusMora.spellworking == 1 ) && ( timerOn == 2 ) if ( target.GetIsRace Argonian == 1 ) Set DAHermaeusMora.killedargonian to 1 SetStage DAHermaeusMora 30 elseif ( target.GetIsRace Breton == 1 ) Set DAHermaeusMora.killedbreton to 1 SetStage DAHermaeusMora 31 elseif ( target.GetIsRace woodelf == 1 ) Set DAHermaeusMora.killedbosmer to 1 SetStage DAHermaeusMora 32 elseif ( target.GetIsRace imperial == 1 ) Set DAHermaeusMora.killedimperial to 1 SetStage DAHermaeusMora 33 elseif ( target.GetIsRace khajiit == 1 ) Set DAHermaeusMora.killedkhajiit to 1 SetStage DAHermaeusMora 34 elseif ( target.GetIsRace darkelf == 1 ) Set DAHermaeusMora.killeddunmer to 1 SetStage DAHermaeusMora 35 elseif ( target.GetIsRace highelf == 1 ) Set DAHermaeusMora.killedaltmer to 1 SetStage DAHermaeusMora 36 elseif ( target.GetIsRace nord == 1 ) Set DAHermaeusMora.killednord to 1 SetStage DAHermaeusMora 37 elseif ( target.GetIsRace redguard == 1 ) Set DAHermaeusMora.killedredguard to 1 SetStage DAHermaeusMora 38 elseif ( target.GetIsRace orc == 1 ) Set DAHermaeusMora.killedorc to 1 SetStage DAHermaeusMora 39 endif if ( DAHermaeusMora.raceskilled == 0 ) && ( DAHermaeusMora.killedargonian == 1 ) && ( DAHermaeusMora.killedbreton == 1 ) && ( DAHermaeusMora.killedbosmer == 1 ) && ( DAHermaeusMora.killedimperial == 1 ) && ( DAHermaeusMora.killedkhajiit == 1 ) if ( DAHermaeusMora.killeddunmer == 1 ) && ( DAHermaeusMora.killedaltmer == 1 ) && ( DAHermaeusMora.killednord == 1 ) && ( DAHermaeusMora.killedredguard == 1 ) && ( DAHermaeusMora.killedorc == 1 ) set DAHermaeusMora.raceskilled to 1 SetStage DAHermaeusMora 40 endif endif set DAHermaeusMora.spellworking to 0 set DAHermaeusMora.target to 0 set DAHermaeusMora.doneVAR to 0 set timerOn to 0 elseif ( target.GetDead == 0 ) && ( DAHermaeusMora.spellworking == 1 ) && ( timerOn == 2 ) set DAHermaeusMora.Spellworking to 0 set DAHermaeusMora.target to 0 set DAHermaeusMora.doneVAR to 0 set timerOn to 0 endif EndSLSD+USCVRtargetSLSD*USCVRtimerSLSD+USCVRtimerOnSCRVSCROFSCRO?SCRO$SCRO#SCRO SCRO#SCROSCROSCRO$SCROC SCROSCPT {EDIDDAHermaeusStatueScriptSCHR[SCDA[  Xir 1 == X:r 20 < rs 0 ==>6You have not followed the path Hermaeus Mora requires. rs 1 ==s 1 X:r 40 ==s 5hf f X  - " f 0 <= X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == X:r 20 < &&`9 rnr rn X:r 40 ==  s 5 ==a f rX3rnrns 6  s 6 == f rX3rnrns 7  s 7 ==`9 rndr rnR rnnSCTX?ScriptName DAHermaeusStatueScript short HermaeusSpeech short button short messageOn float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DAHermaeusMora < 20 ) if ( DAHermaeusMora.questsdone == 0 ) MessageBox "You have not followed the path Hermaeus Mora requires." elseif ( DAHermaeusMora.questsdone == 1 ) set HermaeusSpeech to 1 endif elseif ( GetStage DAHermaeusMora == 40 ) set HermaeusSpeech to 5 endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DAHermaeusMora <= 10 ) if ( HermaeusSpeech == 1 ) ;PLAY AUDIO DisablePlayerControls set timer to DAHermaeusMoraStatueREF.say DAHermaeusSpeech 1 DAHermaeusVoice 1 set HermaeusSpeech to 2 elseif ( HermaeusSpeech == 2 ) ;PLAY AUDIO2 set timer to DAHermaeusMoraStatueREF.say DAHermaeusSpeech 1 DAHermaeusVoice 1 set HermaeusSpeech to 3 elseif ( HermaeusSpeech == 3 ) ;PLAY AUDIO3 set timer to DAHermaeusMoraStatueREF.say DAHermaeusSpeech 1 DAHermaeusVoice 1 set HermaeusSpeech to 4 elseif ( HermaeusSpeech == 4 ) && ( GetStage DAHermaeusMora < 20 ) EnablePlayerControls SetStage DAHermaeusMora 20 Player.AddSpell DAHermaeusTrap Player.AddItem DAHermaeusThing 1 endif elseif ( GetStage DAHermaeusMora == 40 ) if ( HermaeusSpeech == 5 ) ;PLAY END AUDIO DisablePlayerControls set timer to DAHermaeusMoraStatueREF.say DAHermaeusSpeech 1 DAHermaeusVoice 1 set HermaeusSpeech to 6 elseif ( HermaeusSpeech == 6 ) set timer to DAHermaeusMoraStatueREF.say DAHermaeusSpeech 1 DAHermaeusVoice 1 set HermaeusSpeech to 7 elseif ( HermaeusSpeech == 7 ) EnablePlayerControls SetStage DAHermaeusMora 100 Player.RemoveSpell DAHermaeusTrap Player.AddItem DAOghmaInfinium 1 Player.RemoveItem DAHermaeusThing 1 ModPCFame 1 endif endif endif End SLSDBSCVRHermaeusSpeechSLSDBSCVRbuttonSLSDr SCVR messageOnSLSD4sSCVRtimerSCROSCROFSCRO;SCRO SCRO SCROSCROSCRO(SCPTaZEDIDDAHircineScriptSCHR[SCDA[M rX/r 0 > X:r 20 ==9 rnSCTXScriptName DAHircineScript Begin GameMode if ( Player.GetItemCount UnicornHorn > 0 ) if ( GetStage DAHircine == 20 ) SetStage DAHircine 30 endif endif EndSCROSCRO[SCROFSCPTTEDIDDAHircineStatueScriptSCHR SCDA Xir 1 ==&" X:r 20 < rXP 17 >= &&-) rX/r 0 == rX/r 0 == &&=5You do not have the proper offering Hircine requires.+' rX/r 0 > rX/r 0 > &&t8Do you wish to make an offering to the altar of Hircine?Offer Bear PeltOffer Wolf Pelt Do Nothings 1s 1,( rX/r 0 > rX/r 0 == &&a8Do you wish to make an offering to the altar of Hircine?Offer Wolf Pelt Do Nothings 2s 1,( rX/r 0 > rX/r 0 == &&a8Do you wish to make an offering to the altar of Hircine?Offer Bear Pelt Do Nothings 3s 1 X:r 30 ==s 6 X:r 100 ==IAGo, my champion. May you be the last head on the Huntsman's wall. rXP 17 <E=Hircine demands a more powerful champion to begin this quest. ' s 1 == s X  s 1 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1 s 1 == s 0 == &&R rns 0s 1s 0 s 2 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0 s 3 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0f f X  - $ f 0 <= X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == f rX3rnrns 5  s 5 ==`9 rn*& X:r 30 == rX/r 0 > &&  s 6 ==a f rX3rnrns 7  s 7 == f rX3rnrns 8  s 8 ==`R rn9 rnd r nn+' X:r 30 == rX/r 0 == &&6.You do not have the item requested by Hircine.SCTXScriptName DAHircineStatueScript short HircineSpeech short button short messageOn short offering float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DAHircine < 20 ) && ( Player.GetLevel >= 17 ) if ( player.getitemcount WolfPelt01 == 0 ) && ( player.getitemcount BearPelt01 == 0 ) MessageBox "You do not have the proper offering Hircine requires." elseif ( player.getitemcount BearPelt01 > 0 ) && (player.getitemcount WolfPelt01 > 0 ) MessageBox "Do you wish to make an offering to the altar of Hircine?" "Offer Bear Pelt" "Offer Wolf Pelt" "Do Nothing" set offering to 1 set messageOn to 1 elseif ( player.getitemcount WolfPelt01 > 0 ) && (player.getitemcount BearPelt01 == 0 ) MessageBox "Do you wish to make an offering to the altar of Hircine?" "Offer Wolf Pelt" "Do Nothing" set offering to 2 set messageOn to 1 elseif ( player.getitemcount BearPelt01 > 0 ) && (player.getitemcount WolfPelt01 == 0 ) MessageBox "Do you wish to make an offering to the altar of Hircine?" "Offer Bear Pelt" "Do Nothing" set offering to 3 set messageOn to 1 endif ;endif elseif ( GetStage DAHircine == 30 ) set HircineSpeech to 6 elseif ( GetStage DAHircine == 100 ) MessageBox "Go, my champion. May you be the last head on the Huntsman's wall." elseif ( Player.GetLevel < 17 ) MessageBox "Hircine demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( offering == 1 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( HircineSpeech == 0 ) Player.RemoveItem BearPelt01 1 ;MessageBox "TOOK YOUR Bear Pelt" set button to 0 set HircineSpeech to 1 elseif ( button == 1 ) && ( HircineSpeech == 0 ) Player.RemoveItem WolfPelt01 1 ;MessageBox "TOOK YOUR Wolf Pelt " set button to 0 set HircineSpeech to 1 else set button to 0 endif elseif ( offering == 2 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( HircineSpeech == 0 ) Player.RemoveItem WolfPelt01 1 ;MessageBox "TOOK YOUR Wolf Pelt " set button to 0 set HircineSpeech to 1 else set button to 0 endif elseif ( offering == 3 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( HircineSpeech == 0 ) Player.RemoveItem BearPelt01 1 ;MessageBox "TOOK YOUR Bear Pelt" set button to 0 set HircineSpeech to 1 else set button to 0 endif endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DAHircine <= 10 ) if ( HircineSpeech == 1 ) ;PLAY AUDIO DisablePlayerControls set timer to DAHircineShrineRef.say DAHircineSpeech 1 DAHircineVoice 1 set HircineSpeech to 2 elseif ( HircineSpeech == 2 ) ;PLAY AUDIO2 set timer to DAHircineShrineRef.say DAHircineSpeech 1 DAHircineVoice 1 set HircineSpeech to 3 elseif ( HircineSpeech == 3 ) ;PLAY AUDIO3 set timer to DAHircineShrineRef.say DAHircineSpeech 1 DAHircineVoice 1 set HircineSpeech to 4 elseif ( HircineSpeech == 4 ) ;PLAY AUDIO4 set timer to DAHircineShrineRef.say DAHircineSpeech 1 DAHircineVoice 1 set HircineSpeech to 5 elseif ( HircineSpeech == 5 ) EnablePlayerControls SetStage DAHircine 20 endif elseif ( GetStage DAHircine == 30 ) && ( player.GetItemCount UnicornHorn > 0 ) if ( HircineSpeech == 6 ) ;PLAY END AUDIO1 DisablePlayerControls set timer to DAHircineShrineRef.say DAHircineSpeech 1 DAHircineVoice 1 set HircineSpeech to 7 elseif ( HircineSpeech == 7 ) ;PLAY END AUDIO2 set timer to DAHircineShrineRef.say DAHircineSpeech 1 DAHircineVoice 1 set HircineSpeech to 8 elseif ( HircineSpeech == 8 ) EnablePlayerControls Player.RemoveItem UnicornHorn 1 SetStage DAHircine 100 Player.AddItem DASaviorsHide 1 ModPCFame 1 endif elseif ( GetStage DAHircine == 30 ) && ( player.GetItemCount UnicornHorn == 0 ) MessageBox "You do not have the item requested by Hircine." endif endif End SLSDave theSCVRHircineSpeechSLSDr 0 >SCVRbuttonSLSDhe altaSCVR messageOnSLSDsSCVR offeringSLSD8Do yoSCVRtimerSCROSCROFSCRO(SCRO(SCROVkSCROSCROSCRO[SCROqSCPT)EDIDDairihillScriptSCHRmSCDAm Zr)% X:r 10 >= X:r 100 < &&rs rs 1 +9 rnFSCTXScriptName DairihillScript Begin OnDeath Player If GetStage TG07Lex >= 10 && GetStage TG07Lex < 100 Set TG07Lex.TotalDead to TG07Lex.TotalDead + 1 SetStage TG07BloodPrice 70 EndIf EndSCROSCRO4cSCRO SCPTEDIDDairihillsDeskScriptSCHRSCDA rX/r 1 ==9 rn<R rn rn rs  1Y8.You place the sealed, forged list in the desk. SCTX]ScriptName DairihillsDeskScript Begin OnActivate If Player.GetItemCount TG07SealedForgedList == 1 SetStage TG07Lex 60 Player.RemoveItem TG07SealedForgedList 1 TG07DairihillDeskRef.AddItem TG07SealedForgedList 1 Set TG07Lex.ListInDesk to 1 Message "You place the sealed, forged list in the desk." Else Activate EndIf End SCROSCRO1SCRO*SCRO4cSCPTeIEDIDDAMalacathDoor2ScriptSCHRnSCDAn` rX 1 == s 0 == &&rs rs 1 +s9 rn%s 1SCTXvScriptname DAMalacathDoor2Script short doOnce Begin Gamemode ;if ( player.GetItemCount DAMalacath2Key > 0 ) && doOnce == 0 ;from earlier version when it was onActivate if ( DAMalacathOgreDoor2Ref.GetOpenState == 1 ) && doOnce == 0 set DAMalacath.doorsopen to ( DAMalacath.doorsopen + 1 ) unlock setstage DAMalacath 37 set doOnce to 1 endif End SLSDrnSCVRdoOnceSCROB SCROFSCPT`DEDIDDAMalacathDoorScriptSCHRnSCDAn` rX 1 == s 0 == &&rs rs 1 +s9 rn$s 1SCTXrScriptname DAMalacathDoorScript short doOnce Begin Gamemode ;if ( player.GetItemCount DAMalacath1Key > 0 ) && doOnce == 0 ;from earlier version when used onActivate if ( DAMalacathOgreDoor1Ref.GetOpenState == 1 ) && doOnce == 0 set DAMalacath.doorsopen to ( DAMalacath.doorsopen + 1 ) unlock setstage DAMalacath 36 set doOnce to 1 endif EndSLSDzEESCVRdoOnceSCROA SCROFSCPT EDIDDAMalacathOgreScriptSCHRUSCDAU rs rs 1 + rrs rs 1 +SCTXScriptname DAMalacathOgreScript Begin OnDeath set DAMalacath.ogresdead to DAMalacath.ogresdead + 1 End Begin OnDeath Player set DAMalacath.ogresPlayerKilled to DAMalacath.ogresPlayerKilled + 1 EndSCROFSCROSCPTEEDIDDAMalacathScriptSCHRSCDAs)% X:r 34 == X:r 30 == ||($ rXCr 1 == rX, 1 == &&9 rn#SCTX)Scriptname DAMalacathScript short doorsopen short dradmad short ogresdead short ogresPlayerKilled Begin GameMode if getstage DAMalacath == 34 || getstage DAMalacath == 30 if player.getincell BleakMine == 1 && player.isininterior == 1 setstage DAMalacath 35 endif endif EndSLSDSCVR doorsopenSLSDSCVRdradmadSLSDSCVR ogresdeadSLSDSCVRogresPlayerKilledSCROFSCROSCRO?\SCPT=0EDIDDAMalacathStatueScriptSCHRSCDA Xir 1 ==  s 0 == Xr 1 ==s 1 s 1 ~&" X:r 20 < rXP 10 >= && rX/r 0 ==>6You do not have the proper offering Malacath requires. rX/r 0 >M8Do you wish to offer Troll Fat to the altar of Malacath?YesNos 1Nothing happens.($ r s 1 >= X; r nd 0 == &&RJMalacath wants you to free his ogres... not kill them! No present for you!9 r n X:r 50 ==s 7%! X:r 20 < rXP 10 < &&F>Malacath demands a more powerful champion to begin this quest. s 1 == s X  s 0 >=s 0 s 0 == s 0 == &&R r ns 0s 1s 0f f X  - 0 f 0 <= X:r 10 <=  s 1 ==a f r X3rnrns 2  s 2 == f r X3rnrns 3  s 3 == f r X3rnrns 4  s 4 == f r X3rnrns 5  s 5 == f r X3rnrns 6  s 6 ==`9 r nrn! X:r 50 ==  s 7 ==a f r X3rnrns 8  s 8 == f r X3rnrns 9  s 9 == f r X3rnrns 10 s 10 ==`9 r nd rnn !n !n !n !n !n  !n rrnSCTX~ScriptName DAMalacathStatueScript short MalacathSpeech short button short messageOn short PCOrc float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( PCOrc == 0 ) if ( GetPCIsRace Orc == 1 ) set PCOrc to 1 else set PCOrc to -1 endif endif if ( GetStage DAMalacath < 20 ) && ( Player.GetLevel >= 10 ) if ( player.getitemcount TrollFat == 0 ) MessageBox "You do not have the proper offering Malacath requires." elseif ( player.getitemcount TrollFat > 0 ) MessageBox "Do you wish to offer Troll Fat to the altar of Malacath?" "Yes" "No" set messageOn to 1 else MessageBox "Nothing happens." endif endif if ( DAMalacath.ogresPlayerKilled >= 1 ) && ( GetStageDone DAMalacath 100 == 0 ) MessageBox "Malacath wants you to free his ogres... not kill them! No present for you!" SetStage DAMalacath 200 endif if ( GetStage DAMalacath == 50 ) set MalacathSpeech to 7 endif if ( GetStage DAMalacath < 20 ) && ( Player.GetLevel < 10 ) MessageBox "Malacath demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MalacathSpeech== 0 ) Player.RemoveItem TrollFat 1 set button to 0 set MalacathSpeech to 1 else set button to 0 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DAMalacath <= 10 ) if ( MalacathSpeech == 1 ) DisablePlayerControls ;PLAY AUDIO set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 2 elseif ( MalacathSpeech == 2 ) ;PLAY AUDIO2 set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 3 elseif ( MalacathSpeech == 3 ) ;PLAY AUDIO3 set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 4 elseif ( MalacathSpeech == 4 ) ;PLAY AUDIO4 set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 5 elseif ( MalacathSpeech == 5 ) ;PLAY AUDIO5 set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 6 elseif ( MalacathSpeech == 6 ) EnablePlayerControls SetStage DAMalacath 20 BleakMineDoorRef.lock 30 BleakMineKeyRef.enable endif elseif ( GetStage DAMalacath == 50 ) if ( MalacathSpeech == 7 ) ;PLAY END AUDIO1 DisablePlayerControls set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 8 elseif ( MalacathSpeech == 8 ) ;PLAY END AUDIO2 set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 9 elseif ( MalacathSpeech == 9 ) ;PLAY END AUDIO3 set timer to DAMalacathShrineRef.say DAMalacathSpeech 1 DAMalacathVoice 1 set MalacathSpeech to 10 elseif ( MalacathSpeech == 10 ) EnablePlayerControls SetStage DAMalacath 100 Player.AddItem DAVolendrung 1 ModPCFame 1 DAMalacathOgre01Ref.modAV aggression -20 DAMalacathOgre02Ref.modAV aggression -20 DAMalacathOgre03Ref.modAV aggression -20 DAMalacathOgre04Ref.modAV aggression -20 DAMalacathOgre05Ref.modAV aggression -20 DAMalacathOgre06Ref.modAV aggression -20 modfactionreaction MalacathOgreFaction playerfaction -50 endif endif endif End SLSDeSCVRMalacathSpeechSLSDeSCVRbuttonSLSDSCVR messageOnSLSDSCVRPCOrcSLSDSCVRtimerSCROSCROL\SCRO$ SCRO SCROH SCROI SCROJ SCROK SCROL SCROSCROFSCRO\kSCRO[kSCROSCROSCROO SCRO SCROSCPTb EDIDDAMephalaDalviluDaggerSCRIPTSCHRSCDA wr]Y X; rnZ 0 == X; rns 0 == && X; rn( 0 == && X:r 20 >= &&9 rn( ra] X; rnZ 0 == X; rns 0 == && X; rnF 1 == && X; rnK 0 == &&9 rnKSCTXscn DAMephalaDalviluDaggerSCRIPT begin OnAdd player if ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 115 == 0 ) && ( GetStageDone DAMephala 40 == 0 ) && ( GetStage DAMephala >= 20 ) SetStage DAMephala 40 endif end begin OnAdd HrolUlfgarREF if ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 115 == 0 ) && ( GetStageDone DAMephala 70 == 1 ) && ( GetStageDone DAMephala 75 == 0 ) SetStage DAMephala 75 RemoveMe endif end SCROSCROFSCROSCPT + EDIDDAMephalaDalviluFactionScriptSCHRSCDA 2rs rs 1 +rs rs 1 +1- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 1QM X:r 20 >= s 1 == && X; rnZ 0 == && X; rnU 0 == &&9 rnZ84 X:r 20 < s 1 == && X; rn 0 == &&9 rn%! X; rnU 1 == s 0 == &&Zns 1 rs 4 >= s 0 == &&Zns 2SCTXScriptname DAMephalaDalviluFactionScript short BleakerCrime Short StartFight Short EndFight ; reports death to quest script for faction death tally Begin OnDeath set DAMephala.DalviluDead to ( DAMephala.DalviluDead + 1 ) set DAMephala.BleakersDead to ( DAMephala.BleakersDead + 1 ) End Begin GameMode ;if NPC detects any crime against Nivan Dalvilu or Hrol Ulfgar... If ( GetCrimeKnown 0 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 0 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 1 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 1 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 2 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 2 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 3 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 3 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 4 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 4 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif ;... report quest failure through a journal if the quest has started but the war has not begun, or... If ( GetStage DAMephala >= 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 85 == 0 ) setstage DAMephala 90 endif ;... prevent the quest from starting if it has not been started. If ( GetStage DAMephala < 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 5 == 0 ) setstage DAMephala 5 endif ;Makes Dalvilus alert for faction fight If ( GetStageDone DAMephala 85 == 1 ) && ( StartFight == 0 ) setAlert 1 set StartFight to 1 endif If ( DAMephala.UlfgarDead >= 4 ) && ( EndFight == 0 ) setAlert 0 set EndFight to 2 endif end SLSD@SCVR BleakerCrimeSLSDSCVR StartFightSLSD1-SCVR EndFightSCROFSCROSCROSCROSCPTlkEDIDDAMephalaDalviluScriptSCHR1SCDA1 1- X; rns 0 == X; rnZ 0 == &&9 rn<Xrrs rs 1 +rs rs 1 + Xw rr 1 ==s 1 Xw rr 1 ==s 1 Xw rr 1 ==s 1 Xw rr 1 ==s 1 Xw rr 1 ==s 1QM X:r 20 >= s 1 == && X; rnZ 0 == && X; rnU 0 == &&9 rnZ84 X:r 20 < s 1 == && X; rn 0 == &&9 rnSCTX7ScriptName DAMephalaDalviluScript short BleakerCrime Begin OnDeath if ( GetStageDone DAMephala 115 == 0 ) && ( GetStageDone DAMephala 90 == 0 ) SetStage DAMephala 60 addtopic NivanDalviluTOPIC endif set DAMephala.DalviluDead to ( DAMephala.DalviluDead + 1 ) set DAMephala.BleakersDead to ( DAMephala.BleakersDead + 1 ) End Begin GameMode ;if NPC detects any crime against Nivan Dalvilu or Hrol Ulfgar... If ( GetCrimeKnown 0 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 1 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 2 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 3 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 4 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif ;... report quest failure through a journal if the quest has started but the war has not begun, or... If ( GetStage DAMephala >= 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 85 == 0 ) setstage DAMephala 90 endif ;... prevent the quest from starting if it has not been started. If ( GetStage DAMephala < 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 5 == 0 ) setstage DAMephala 5 endif endSLSD^#SCVR BleakerCrimeSCROFSCROSCROSCROSCPT$EDIDDAMephalaScriptSCHRISCDAI;! s 9 >= X:r 20 >= &&9 rnsSCTXScriptname DAMephalaScript short nordDead short elfDead short nordevidence short elfevidence Short UlfgarDead Short DalviluDead short StartFight short BleakersDead Begin Gamemode if BleakersDead >= 9 && GetStage DAMephala >= 20 SetStage DAMephala 115 endif End SLSDSCVR nordDeadSLSDSCVRelfDeadSLSD!#EDIDSCVR nordevidenceSLSDp”RBSCVR elfevidenceSLSDO#$SCVR UlfgarDeadSLSD8SCVR DalviluDeadSLSDSCVR StartFightSLSD!#EDIDSCVR BleakersDeadSCROFSCPTEDIDDAMephalaStatueScriptSCHR 1SCDA1 Xir 1 ==& " X:r 20 < rXP 15 >= &&0, G 0 >= G 6 < && X; rn 0 == && rX/r 0 ===5You do not have the proper offering Mephala requires. rX/r 0 >M8Do you wish to offer Nightshade to the altar of Mephala?YesNos 11- X; rn 1 == X; rnn 0 == &&bZYour actions in Bleaker's Way have spoiled Mephala's schemes. She will not hear your plea.9 rnnNothing happens. X:r 85 ==s 6 X:r 90 ==s 8 rXP 15 <E=Mephala demands a more powerful champion to begin this quest.I s 1 == s X  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0f f X  - ) f 0 <= X:r 10 <=  s 1 ==a f rX3rnr ns 2  s 2 == f rX3rnr ns 3  s 3 == f rX3rnr ns 4  s 4 == f rX3rnr ns 5  s 5 ==`9 rn!!  X:r 85 ==  s 6 ==a f rX3rnr ns 7  s 7 ==`9 rnd r nn X:r 90 ==  s 8 ==a f rX3rnr ns 9  s 9 ==`9 rniSCTXr ScriptName DAMephalaStatueScript short MephalaSpeech short button short messageOn float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DAMephala < 20 ) && ( Player.GetLevel >= 15 ) if ( Gamehour >= 0 && Gamehour < 6 ) && ( GetStageDone DAMephala 5 == 0 ) if ( player.getitemcount Nightshade == 0 ) MessageBox "You do not have the proper offering Mephala requires." elseif ( player.getitemcount Nightshade > 0 ) MessageBox "Do you wish to offer Nightshade to the altar of Mephala?" "Yes" "No" set messageOn to 1 endif elseif ( GetStageDone DAMephala 5 == 1 ) && ( GetStageDone DAMephala 110 == 0 ) MessageBox "Your actions in Bleaker's Way have spoiled Mephala's schemes. She will not hear your plea." SetStage DAMephala 110 else MessageBox "Nothing happens." endif elseif ( GetStage DAMephala == 85 ) set MephalaSpeech to 6 elseif ( GetStage DAMephala == 90 ) set MephalaSpeech to 8 elseif ( Player.GetLevel < 15 ) MessageBox "Mephala demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MephalaSpeech == 0 ) Player.RemoveItem Nightshade 1 ;MessageBox "TOOK YOUR NIGHTSHADE." set button to 0 set MephalaSpeech to 1 else set button to 0 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DAMephala <= 10 ) if ( MephalaSpeech == 1 ) DisablePlayerControls ;PLAY AUDIO set timer to DAMephalaShrineRef.say DAMephalaSpeech 1 DAMephalaVoice 1 set MephalaSpeech to 2 elseif ( MephalaSpeech == 2 ) ;PLAY AUDIO2 set timer to DAMephalaShrineRef.say DAMephalaSpeech 1 DAMephalaVoice 1 set MephalaSpeech to 3 elseif ( MephalaSpeech == 3 ) ;PLAY AUDIO3 set timer to DAMephalaShrineRef.say DAMephalaSpeech 1 DAMephalaVoice 1 set MephalaSpeech to 4 elseif ( MephalaSpeech == 4 ) ;PLAY AUDIO4 set timer to DAMephalaShrineRef.say DAMephalaSpeech 1 DAMephalaVoice 1 set MephalaSpeech to 5 elseif ( MephalaSpeech == 5 ) EnablePlayerControls SetStage DAMephala 20 UlfgarRingREF.enable NivanDaggerRef.enable endif elseif ( GetStage DAMephala == 85 ) if ( MephalaSpeech == 6 ) DisablePlayerControls ;PLAY END AUDIO1 set timer to DAMephalaShrineRef.say DAMephalaSpeech 1 DAMephalaVoice 1 set MephalaSpeech to 7 elseif ( MephalaSpeech == 7 ) EnablePlayerControls SetStage DAMephala 100 Player.AddItem DAEbonyBlade 1 ModPCFame 1 endif elseif ( GetStage DAMephala == 90 ) if ( MephalaSpeech == 8 ) DisablePlayerControls ;PLAY LOSER AUDIO set timer to DAMephalaShrineRef.say DAMephalaSpeech 1 DAMephalaVoice 1 set MephalaSpeech to 9 elseif ( MephalaSpeech == 9 ) EnablePlayerControls SetStage DAMephala 105 endif endif endif End SLSDeSCVRMephalaSpeechSLSDSCVRbuttonSLSDeSCVR messageOnSLSDeSCVRtimerSCROSCROSCRO SCROFSCRO8SCRO6SCROskSCROSCROSCRO qSCPT EDIDDAMephalaUlfgarFactionScriptSCHRSCDA 2rs rs 1 +rs rs 1 +1- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 11- Xw rr 1 == Xw rr 1 == ||s 1QM X:r 20 >= s 1 == && X; rnZ 0 == && X; rnU 0 == &&9 rnZ84 X:r 20 < s 1 == && X; rn 0 == &&9 rn%! X; rnU 1 == s 0 == &&Zns 1 rs 5 >= s 0 == &&Zns 2SCTXScriptname DAMephalaUlfgarFactionScript short BleakerCrime Short StartFight Short EndFight ; reports death to quest script for faction death tally Begin OnDeath set DAMephala.UlfgarDead to ( DAMephala.UlfgarDead + 1 ) set DAMephala.BleakersDead to ( DAMephala.BleakersDead + 1 ) End Begin GameMode ;if NPC detects any crime against Nivan Dalvilu or Hrol Ulfgar... If ( GetCrimeKnown 0 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 0 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 1 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 1 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 2 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 2 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 3 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 3 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 4 Player NivanDalviluRef == 1 ) || ( GetCrimeKnown 4 Player HrolUlfgarRef == 1 ) Set BleakerCrime to 1 endif ;... report quest failure through a journal if the quest has started but the war has not begun, or... If ( GetStage DAMephala >= 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 85 == 0 ) setstage DAMephala 90 endif ;... prevent the quest from starting if it has not been started. If ( GetStage DAMephala < 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 5 == 0 ) setstage DAMephala 5 endif ;Makes Ulfgars alert for faction fight If ( GetStageDone DAMephala 85 == 1 ) && ( StartFight == 0 ) setAlert 1 set StartFight to 1 endif If ( DAMephala.DalviluDead >= 5 ) && ( EndFight == 0 ) setAlert 0 set EndFight to 2 endif endSLSDSCVR BleakerCrimeSLSDSCVR StartFightSLSDSCVR EndFightSCROFSCROSCROSCROSCPTb EDIDDAMephalaUlfgarRingSCRIPTSCHRSCDA wr]Y X; rnZ 0 == X; rns 0 == && X; rn2 0 == && X:r 20 >= &&9 rn2 ra] X; rnZ 0 == X; rns 0 == && X; rn< 1 == && X; rnA 0 == &&9 rnASCTXscn DAMephalaUlfgarRingSCRIPT begin OnAdd player if ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 115 == 0 ) && ( GetStageDone DAMephala 50 == 0 ) && ( GetStage DAMephala >= 20 ) SetStage DAMephala 50 endif end begin OnAdd NivanDalviluREF if ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 115 == 0 ) && ( GetStageDone DAMephala 60 == 1 ) && ( GetStageDone DAMephala 65 == 0 ) SetStage DAMephala 65 RemoveMe endif end SCROSCROFSCROSCPTqkEDIDDAMephalaUlfgarScriptSCHR1SCDA1 1- X; rns 0 == X; rnZ 0 == &&9 rnFXrrs rs 1 +rs rs 1 + Xw rr 1 ==s 1 Xw rr 1 ==s 1 Xw rr 1 ==s 1 Xw rr 1 ==s 1 Xw rr 1 ==s 1QM X:r 20 >= s 1 == && X; rnZ 0 == && X; rnU 0 == &&9 rnZ84 X:r 20 < s 1 == && X; rn 0 == &&9 rnSCTX:ScriptName DAMephalaUlfgarScript short BleakerCrime Begin OnDeath if ( GetStageDone DAMephala 115 == 0 ) && ( GetStageDone DAMephala 90 == 0 ) SetStage DAMephala 70 addtopic HrolUlfgarTOPIC endif set DAMephala.UlfgarDead to ( DAMephala.UlfgarDead + 1 ) set DAMephala.BleakersDead to ( DAMephala.BleakersDead + 1 ) End Begin GameMode ;if NPC detects any crime against Nivan Dalvilu or Hrol Ulfgar... If ( GetCrimeKnown 0 Player NivanDalviluRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 1 Player NivanDalviluRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 2 Player NivanDalviluRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 3 Player NivanDalviluRef == 1 ) Set BleakerCrime to 1 endif If ( GetCrimeKnown 4 Player NivanDalviluRef == 1 ) Set BleakerCrime to 1 endif ;... report quest failure through a journal if the quest has started but the war has not begun, or... If ( GetStage DAMephala >= 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 90 == 0 ) && ( GetStageDone DAMephala 85 == 0 ) setstage DAMephala 90 endif ;... prevent the quest from starting if it has not been started. If ( GetStage DAMephala < 20 ) && ( BleakerCrime == 1 ) && ( GetStageDone DAMephala 5 == 0 ) setstage DAMephala 5 endif endSLSDion:ACTIONPSCVR BleakerCrimeSCROFSCROSCROSCROSCPTEDIDDAMeridiaNecroScriptSCHR+SCDA+ rs rs 1 +SCTXsScriptname DAMeridiaNecroScript Begin Ondeath set DAMeridia.necrodead to ( DAMeridia.necrodead + 1 ) EndSCROFSCPToEDIDDAMeridiaScriptSCHRRSCDARD  s 5 >= X:r 20 ==9 rnSCTXScriptname DAMeridiaScript short necrodead Begin GameMode if ( necrodead >= 5 ) if ( GetStage DAMeridia == 20 ) SetStage DAMeridia 30 endif endif EndSLSDBBOBASCVR necrodeadSCROFSCPTV*EDIDDAMeridiaStatueScriptSCHR SCDA% Xir 1 ==&" X:r 20 < rXP 10 >= &&C? rX/r 0 == rX/r 0 == && rX/r 0 == &&=5You do not have the proper offering Meridia requires.@< rX/r 0 > rX/r 0 > && rX/r 0 > &&8Do you wish to make an offering to the altar of Meridia?Offer BonemealOffer EctoplasmOffer Mort Flesh Do Nothings 1s 1B> rX/r 0 > rX/r 0 == && rX/r 0 == &&a8Do you wish to make an offering to the altar of Meridia?Offer Ectoplasm Do Nothings 2s 1B> rX/r 0 > rX/r 0 == && rX/r 0 == &&`8Do you wish to make an offering to the altar of Meridia?Offer Bonemeal Do Nothings 3s 1A= rX/r 0 > rX/r 0 > && rX/r 0 == &&u8Do you wish to make an offering to the altar of Meridia?Offer EctoplasmOffer Mort Flesh Do Nothings 4s 1A= rX/r 0 > rX/r 0 > && rX/r 0 == &&t8Do you wish to make an offering to the altar of Meridia?Offer BonemealOffer Mort Flesh Do Nothings 5s 1B> rX/r 0 > rX/r 0 == && rX/r 0 == &&b8Do you wish to make an offering to the altar of Meridia?Offer Mort Flesh Do Nothings 6s 1A= rX/r 0 > rX/r 0 > && rX/r 0 == &&s8Do you wish to make an offering to the altar of Meridia?Offer BonemealOffer Ectoplasm Do Nothings 7s 1 X:r 30 ==s 7 rXP 10 <E=Meridia demands a more powerful champion to begin this quest.p c s 1 == s X  s 1 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1 s 1 == s 0 == &&R rns 0s 1 s 2 == s 0 == &&R rns 0s 1s 0 s 2 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0 s 3 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0  s 4 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1 s 1 == s 0 == &&R rns 0s 1s 0  s 5 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1 s 1 == s 0 == &&R rns 0s 1s 0 s 6 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0  s 7 ==  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1 s 1 == s 0 == &&R rns 0s 1s 0f f X  -  f 0 <= X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == f rX3rnrns 5  s 5 ==`s 69 rn  X:r 30 ==  s 7 ==a f rX3rnrns 8  s 8 ==`9 rnd r nnSCTXPScriptName DAMeridiaStatueScript short MeridiaSpeech short button short messageOn short offering float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DAMeridia < 20 ) && ( Player.GetLevel >= 10 ) if ( player.getitemcount Ectoplasm == 0 ) && (player.getitemcount Bonemeal == 0 ) && ( player.getitemcount MortFlesh == 0 ) MessageBox "You do not have the proper offering Meridia requires." elseif ( player.getitemcount Bonemeal > 0 ) && (player.getitemcount Ectoplasm > 0 ) && ( player.getitemcount MortFlesh > 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Bonemeal" "Offer Ectoplasm" "Offer Mort Flesh" "Do Nothing" set offering to 1 set messageOn to 1 elseif ( player.getitemcount Ectoplasm > 0 ) && (player.getitemcount Bonemeal == 0 ) && ( player.getitemcount MortFlesh == 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Ectoplasm" "Do Nothing" set offering to 2 set messageOn to 1 elseif ( player.getitemcount Bonemeal > 0 ) && (player.getitemcount Ectoplasm == 0 ) && ( player.getitemcount MortFlesh == 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Bonemeal" "Do Nothing" set offering to 3 set messageOn to 1 elseif ( player.getitemcount Ectoplasm > 0 ) && ( player.getitemcount MortFlesh > 0 ) && ( player.getitemcount BoneMeal == 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Ectoplasm" "Offer Mort Flesh" "Do Nothing" set offering to 4 set messageOn to 1 elseif ( player.getitemcount BoneMeal > 0 ) && ( player.getitemcount MortFlesh > 0 ) && ( player.getitemcount Ectoplasm == 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Bonemeal" "Offer Mort Flesh" "Do Nothing" set offering to 5 set messageOn to 1 elseif ( player.getitemcount MortFlesh > 0 ) && ( player.getitemcount Bonemeal == 0 ) && ( player.getitemcount Ectoplasm == 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Mort Flesh" "Do Nothing" set offering to 6 set messageOn to 1 elseif ( player.getitemcount BoneMeal > 0 ) && ( player.getitemcount Ectoplasm > 0 ) && ( player.getitemcount MortFlesh == 0 ) MessageBox "Do you wish to make an offering to the altar of Meridia?" "Offer Bonemeal" "Offer Ectoplasm" "Do Nothing" set offering to 7 set messageOn to 1 endif elseif ( GetStage DAMeridia == 30 ) set MeridiaSpeech to 7 elseif ( Player.GetLevel < 10 ) MessageBox "Meridia demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( offering == 1 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem Bonemeal 1 ;MessageBox "TOOK YOUR BONEMEAL" set button to 0 set MeridiaSpeech to 1 elseif ( button == 1 ) && (MeridiaSpeech == 0 ) Player.RemoveItem Ectoplasm 1 ;MessageBox "TOOK YOUR ECTOPLASM" set button to 0 set MeridiaSpeech to 1 elseif ( button == 2 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem MortFlesh 1 set button to 0 set MeridiaSpeech to 1 else set button to 0 endif elseif ( offering == 2 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem Ectoplasm 1 ;MessageBox "TOOK YOUR ECTOPLASM" set button to 0 set MeridiaSpeech to 1 else set button to 0 endif elseif ( offering == 3 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem Bonemeal 1 ;MessageBox "TOOK YOUR BONEMEAL" set button to 0 set MeridiaSpeech to 1 else set button to 0 endif elseif ( offering == 4 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem Ectoplasm 1 set button to 0 set MeridiaSpeech to 1 elseif ( button == 1 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem MortFlesh 1 set button to 0 set MeridiaSpeech to 1 else set button to 0 endif elseif ( offering == 5 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem BoneMeal 1 set button to 0 set MeridiaSpeech to 1 elseif ( button == 1 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem MortFlesh 1 set button to 0 set MeridiaSpeech to 1 else set button to 0 endif elseif ( offering == 6 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem MortFlesh 1 set button to 0 set MeridiaSpeech to 1 else set button to 0 endif elseif ( offering == 7 ) if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem Bonemeal 1 set button to 0 set MeridiaSpeech to 1 elseif ( button == 1 ) && ( MeridiaSpeech == 0 ) Player.RemoveItem Ectoplasm 1 set button to 0 set MeridiaSpeech to 1 else set button to 0 endif endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DAMeridia <= 10 ) if ( MeridiaSpeech == 1 ) DisablePlayerControls ;PLAY AUDIO set timer to DAMeridiaShrineREF.say DAMeridiaSpeech 1 DAMeridiaVoice 1 set MeridiaSpeech to 2 elseif ( MeridiaSpeech == 2 ) ;PLAY AUDIO2 set timer to DAMeridiaShrineREF.say DAMeridiaSpeech 1 DAMeridiaVoice 1 set MeridiaSpeech to 3 elseif ( MeridiaSpeech == 3 ) ;PLAY AUDIO3 set timer to DAMeridiaShrineREF.say DAMeridiaSpeech 1 DAMeridiaVoice 1 set MeridiaSpeech to 4 elseif ( MeridiaSpeech == 4 ) set timer to DAMeridiaShrineREF.say DAMeridiaSpeech 1 DAMeridiaVoice 1 set MeridiaSpeech to 5 elseif ( MeridiaSpeech == 5 ) EnablePlayerControls set MeridiaSpeech to 6 SetStage DAMeridia 20 endif elseif ( GetStage DAMeridia == 30 ) if ( MeridiaSpeech == 7 ) DisablePlayerControls ;PLAY END AUDIO ;MessageBox "PLAYING LAST AUDIO AND GIVING JOURNAL" set timer to DAMeridiaShrineREF.say DAMeridiaSpeech 1 DAMeridiaVoice 1 set MeridiaSpeech to 8 elseif ( MeridiaSpeech == 8 ) EnablePlayerControls SetStage DAMeridia 100 Player.AddItem DARingKhajiiti 1 ModPCFame 1 endif endif endif End SLSD SCVRMeridiaSpeechSLSDxfSCVRbuttonSLSDSCVR messageOnSLSDfSCVR offeringSLSDxfSCVRtimerSCROSCROFSCROSCROSCRO6SCRO qSCROySCROySCROqSCPTy EDIDDAMolagBalMaceScriptSCHR%SCDA% r rs 1SCTXcscn DAMolagBalMaceScript Begin OnEquip MelusPetilusREF set DAMolagBal.maceequip to 1 EndSCROoSCROFSCPTk oEDIDDAMolagBalMelusPetilusScriptSCHR,SCDA,R  s 0 ==f rXs 1" Xr 300 <= s 0 == &&s 1! Xr 300 > s 1 == &&s 0 s 1 == s 0 == &&s 0s 1Vrr s 1 == s 1 == &&s 0s 2Vrr  s 3 ==rs 4 A'# X:r 0 > X:r 100 < &&9 rnn pr Xr 1 ==s 1 s 3 != s 4 != &&f f X -s 1SCTXxScriptName DAMolagBalMelusPetilusScript float melushealth float newhealth short gothealth short fighting short fightgreet short neargrave short idleVAR ;Begin OnActivate ;if ( GetIsCurrentPackage DAMolagPetiliusWaitAtGrave == 1 ) && ( idleVAR == 0 ) ; set idleVAR to 1 ;endif ;End Begin GameMode ;if ( GetDistance DAMolagGraveREF <= 200 ) && ( GetIsCurrentPackage DAMolagPetiliusWaitAtGrave == 1 ) ; set idleVAR to 1 ;endif ;if ( GetIsCurrentPackage DAMolagPetiliusWaitAtGrave == 1 ) && ( GetCurrentAiPackage != 5 ) && ( GetCurrentAiPackage != 6 ) && ( idleVAR == 0 ) ; PickIdle ;endif if ( gothealth == 0 ) set melushealth to meluspetilusref.getav health set gothealth to 1 endif if ( GetDistance DAMolagGraveREF <= 300 ) && ( neargrave == 0 ) set neargrave to 1 elseif ( GetDistance DAMolagGraveREF > 300 ) && ( neargrave == 1 ) set neargrave to 0 endif if ( fighting == 1 ) && ( neargrave == 0 ) StopCombat Player set fighting to 0 set fightgreet to 1 StartConversation Player Greeting elseif ( fighting == 1 ) && ( neargrave == 1 ) StopCombat Player set fighting to 0 set fightgreet to 2 StartConversation Player Greeting endif if ( fightgreet == 3 ) StartCombat Player set fightgreet to 4 endif End Begin OnDeath if ( GetStage DAMolagBal > 0 ) && ( GetStage DAMolagBal < 100 ) SetStage DAMolagBal 110 endif End Begin OnHit Player if ( GetIsCurrentPackage DAMolagPetiliusWaitAtGrave == 1 ) set IdleVAR to 1 endif if ( fightgreet != 3 ) && ( fightgreet != 4 ) set newhealth to ( melushealth - getav health ) set fighting to 1 endif EndSLSD set SCVR melushealthSLSDSCVR newhealthSLSD@Y SCVR gothealthSLSDat PetiSCVR fightingSLSDSCVR fightgreetSLSDthat, iSCVR neargraveSLSDlt.SCVRidleVARSCROoSCROoSCROSCROSCROFSCROySCPTEkEDIDDAMolagBalScriptSCHRSCDA rX/r 0 >  s 0 ==s 1 rs 4 ==  s 0 ==f rXs 1! s 2 == X:r 20 >= &&f f X  + f 1.0 >9 rn<s 3 rs 4 ==  X:r 0 >  rX 20 < X:r 60 < rX 0 <Ps 2rSCTXEScriptname DAMolagBalScript short hasmace short maceequip float playerhealth float currenthealth short doOnce short melustalk float fquestdelaytime float timer Begin GameMode if ( meluspetilusref.GetItemCount DAMolagBalCursedMace > 0 ) if ( hasmace == 0 ) set hasmace to 1 endif endif if ( meluspetilusref.fightgreet == 4 ) if ( doOnce == 0 ) set playerhealth to player.getav health set doOnce to 1 endif endif if ( doOnce == 2 ) && ( GetStage DAMolagBal >= 20 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.0 ) SetStage DAMolagBal 60 set doOnce to 3 endif endif if ( meluspetilusref.fightgreet == 4 ) if ( GetStage DAMolagBal > 0 ) if ( player.GetAV Health < 20 ) if ( GetStage DAMolagBal < 60 ) if ( player.getav health < 0 ) player.resurrect endif ;player.ModAV Health playerhealth player.resethealth MelusPetilusREF.StopCombat Player set doOnce to 2 Player.MoveTo DAMolagShrineMarkerREF ;SetStage DAMolagBal 60 endif endif endif endif EndSLSDSCVRhasmaceSLSD|SCVR maceequipSLSD5@SCVR playerhealthSLSDSCVRcurrenthealthSLSDSCVRdoOnceSLSD|SCVR melustalkSLSD|SCVRfquestdelaytimeSLSDif endSCVRtimerSCROSCROoSCROoSCROFSCROoSCPT?kEDIDDAMolagBalStatueScriptSCHR SCDA7 Xir 1 ==&" X:r 20 < rXP 17 >= && rX/r 0 ==?7You do not have the proper offering Molag Bal requires. rX/r 0 >P;Do you wish to offer a Lion Hide to the altar of Molag Bal?YesNos 1$ X:r 60 == rs 1 == &&s 6$ X:r 60 == rs 0 == &&s 1062 X:r 105 >= X:r 110 <= && s 0 > &&s 10 rXP 17 <G?Molag Bal demands a more powerful champion to begin this quest.m s 1 == s X  s 0 >=s 0 s 0 == s 0 == &&R rns 0s 1s 0 s 1 ~ ==` s 2 ~ 4 s 0 >f f X  - 1 f 0 < X:r 10 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 ==s 4 f rX3rnrn  s 4 ==s 5 f rX3rnrn  s 5 == X:r 20 < &&`9 rn rnXr$ X:r 60 == rs 1 == &&  s 6 ==a f rX3rnrns 7  s 7 == f rX3rnrns 8  s 8 ==`9 rnd r nn$ X:r 60 == rs 0 == && s 10 ==a f rX3rnrns 11 s 11 ==9 rni s 1 ~ X:r 110 == s 10 == f rX3rnrn s 1 ~SCTXScriptName DAMolagBalStatueScript short MolagBalSpeech short button short messageOn float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DAMolagBal < 20 ) && ( Player.GetLevel >= 17 ) if ( player.getitemcount LionHide01 == 0 ) MessageBox "You do not have the proper offering Molag Bal requires." elseif ( player.getitemcount LionHide01 > 0 ) MessageBox "Do you wish to offer a Lion Hide to the altar of Molag Bal?" "Yes" "No" set messageOn to 1 endif elseif ( GetStage DAMolagBal == 60 ) && ( DAMolagBal.maceequip == 1 ) set MolagBalSpeech to 6 elseif ( GetStage DAMolagBal == 60 ) && ( DAMolagBal.maceequip == 0 ) set MolagBalSpeech to 10 elseif ( GetStage DAMolagBal >=105 ) && ( GetStage DAMolagBal <= 110 ) && ( MolagBalSpeech > 0 ) set MolagBalSpeech to 10 elseif ( Player.GetLevel < 17 ) MessageBox "Molag Bal demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) && ( MolagBalSpeech == 0 ) Player.RemoveItem LionHide01 1 ;MessageBox "TOOK YOUR LION HIDE." set button to 0 set MolagBalSpeech to 1 else set button to 0 endif endif if ( MolagBalSpeech == -1 ) EnablePlayerControls set MolagBalSpeech to -2 endif if ( MolagBalSpeech > 0 ) set timer to ( timer - GetSecondsPassed ) if ( timer < 0 ) if ( GetStage DAMolagBal <= 10 ) if ( MolagBalSpeech == 1 ) DisablePlayerControls ;PLAY AUDIO set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 set MolagBalSpeech to 2 elseif ( MolagBalSpeech == 2 ) ;PLAY AUDIO2 set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 set MolagBalSpeech to 3 elseif ( MolagBalSpeech == 3 ) ;PLAY AUDIO3 set MolagBalSpeech to 4 set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 elseif ( MolagBalSpeech == 4 ) ;PLAY AUDIO4 set MolagBalSpeech to 5 set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 elseif ( MolagBalSpeech == 5 ) && ( GetStage DAMolagBal < 20 ) EnablePlayerControls SetStage DAMolagBal 20 Player.AddItem DAMolagBalCursedMace 1 AddTopic MelusPetiliusTOPIC endif elseif ( GetStage DAMolagBal == 60 ) && ( DAMolagBal.maceequip == 1 ) if ( MolagBalSpeech == 6 ) DisablePlayerControls ;PLAY END AUDIO ;MessageBox "PLAYING LAST AUDIO AND GIVING JOURNAL" set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 set MolagBalSpeech to 7 elseif ( MolagBalSpeech == 7 ) ;PLAY END AUDIO ;MessageBox "PLAYING LAST AUDIO AND GIVING JOURNAL" set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 set MolagBalSpeech to 8 elseif ( MolagBalSpeech == 8 ) EnablePlayerControls SetStage DAMolagBal 100 Player.AddItem DAMolagBalMace 1 ModPCFame 1 endif elseif ( GetStage DAMolagBal == 60 ) && ( DAMolagBal.maceequip == 0 ) if ( MolagBalSpeech == 10 ) DisablePlayerControls set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 set MolagBalSpeech to 11 elseif ( MolagBalSpeech == 11 ) SetStage DAMolagBal 105 set MolagBalSpeech to -1 endif elseif ( GetStage DAMolagBal == 110 ) if ( MolagBalSpeech == 10 ) set timer to DAMolagBalShrineREF.say DAMolagBalSpeech 1 DAMolagBalVoice 1 set MolagBalSpeech to -1 endif endif endif endif End SLSD bSCVRMolagBalSpeechSLSD bSCVRbuttonSLSD bSCVR messageOnSLSDSCVRtimerSCROSCROFSCRO(SCROoSCRO xSCROGxSCROoSCRO`SCROqSCPT EDIDDANamiraForgottenScriptSCHR SCDA" X Z == rX2 1 == && "n^  s 0 == "nds 1.* s 50 < s 0 > && rXCr 1 == &&4rr s 1 ~ rs 1 == s 0 == && "nd #ndrs 1 s XMf f X  - s 1 == f 0 < &&s 0 rs 0<8 s 0 == f 0 < && rXCr 1 == && X. 0 == &&%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= r s 0 == &&f X4r r rs 1s 1d@< Xr 200 <= rX2 1 == && X. 0 == && f 0 < &&f X4rr rs 1s 1d /r X:r 100 <9 rnnSCTXscn DANamiraForgottenScript short attack float timer short reset short talkvar short confidenceVAR Begin GameMode if ( GetCombatTarget == Player ) && ( Player.IsActorUsingATorch == 1 ) SetAV Confidence 0 evp endif if ( confidenceVAR == 0 ) SetAV Confidence 100 set confidenceVAR to 1 endif if ( talkvar < 50 ) && ( talkvar > 0 ) && ( player.GetInCell Anga == 1 ) SayTo Priest1REF DANamiraReactions set talkvar to -1 endif if ( DANamira.priest1 == 1 ) && ( attack == 0 ) SetAV Confidence 100 SetAV Energy 100 StartCombat Priest1REF set attack to 1 set talkvar to GetRandomPercent endif set timer to ( timer - GetSecondsPassed ) if ( reset == 1 ) && ( timer < 0 ) set reset to 0 set DANamira.cower to 0 endif if ( attack == 0 ) && ( timer < 0 ) && ( player.GetInCell Anga == 1 ) && ( GetDead == 0 ) if ( GetDistance Priest1REF <= 200 ) && ( Priest1REF.dead == 0 ) set timer to SayTo Priest1REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest2REF <= 200 ) && ( Priest2REF.dead == 0 ) set timer to SayTo Priest2REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest3REF <= 200 ) && ( Priest3REF.dead == 0 ) set timer to SayTo Priest3REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest4REF <= 200 ) && ( Priest4REF.dead == 0 ) set timer to SayTo Priest4REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle ;elseif ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) ; set timer to SayTo Player DANamiraSpeech ; set DANamira.cower to 1 ; set reset to 1 ; PickIdle endif endif if ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) && ( GetDead == 0 ) && ( timer < 0 ) set timer to SayTo Player DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle endif End Begin OnDeath Player if ( GetStage DANamira < 100 ) SetStage DANamira 110 endif EndSLSDSCVRattackSLSD XMSCVRtimerSLSDSCVRresetSLSDDoSCVRtalkvarSLSDSCVRconfidenceVARSCROSCRO@fSCROSCROJSCROFSCROSCROSCROSCROSCPT EDIDDANamiraForgottenScript2SCHR SCDA" X Z == rX2 1 == && "n^  s 0 == "nds 1.* s 50 < s 0 > && rXCr 1 == &&4rr s 1 ~ rs 1 == s 0 == && "nd #ndrs 1 s XMf f X  - s 1 == f 0 < &&s 0 rs 0<8 s 0 == f 0 < && rXCr 1 == && X. 0 == &&%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= r s 0 == &&f X4r r rs 1s 1d@< Xr 200 <= rX2 1 == && X. 0 == && f 0 < &&f X4rr rs 1s 1d /r X:r 100 <9 rnnSCTXscn DANamiraForgottenScript2 short attack float timer short reset short talkvar short confidenceVAR Begin GameMode if ( GetCombatTarget == Player ) && ( Player.IsActorUsingATorch == 1 ) SetAV Confidence 0 evp endif if ( confidenceVAR == 0 ) SetAV Confidence 100 set confidenceVAR to 1 endif if ( talkvar < 50 ) && ( talkvar > 0 ) && ( player.GetInCell Anga == 1 ) SayTo Priest1REF DANamiraReactions set talkvar to -1 endif if ( DANamira.priest2 == 1 ) && ( attack == 0 ) SetAV Confidence 100 SetAV Energy 100 StartCombat Priest2REF set attack to 1 set talkvar to GetRandomPercent endif set timer to ( timer - GetSecondsPassed ) if ( reset == 1 ) && ( timer < 0 ) set reset to 0 set DANamira.cower to 0 endif if ( attack == 0 ) && ( timer < 0 ) && ( player.GetInCell Anga == 1 ) && ( GetDead == 0 ) if ( GetDistance Priest1REF <= 200 ) && ( Priest1REF.dead == 0 ) set timer to SayTo Priest1REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest2REF <= 200 ) && ( Priest2REF.dead == 0 ) set timer to SayTo Priest2REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest3REF <= 200 ) && ( Priest3REF.dead == 0 ) set timer to SayTo Priest3REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest4REF <= 200 ) && ( Priest4REF.dead == 0 ) set timer to SayTo Priest4REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle ;elseif ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) ; set timer to SayTo Player DANamiraSpeech ; set DANamira.cower to 1 ; set reset to 1 ; PickIdle endif endif if ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) && ( GetDead == 0 ) && ( timer < 0 ) set timer to SayTo Player DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle endif End Begin OnDeath Player if ( GetStage DANamira < 100 ) SetStage DANamira 110 endif EndSLSDSCVRattackSLSDlaSCVRtimerSLSD== rXSCVRresetSLSDXCSCVRtalkvarSLSD0 == &&SCVRconfidenceVARSCROSCRO@fSCROSCROJSCROFSCROSCROSCROSCROSCPT EDIDDANamiraForgottenScript3SCHR SCDA" X Z == rX2 1 == && "n^  s 0 == "nds 1.* s 50 < s 0 > && rXCr 1 == &&4rr s 1 ~ rs 1 == s 0 == && "nd #ndrs 1 s XMf f X  - s 1 == f 0 < &&s 0 rs 0<8 s 0 == f 0 < && rXCr 1 == && X. 0 == &&%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= r s 0 == &&f X4r r rs 1s 1d@< Xr 200 <= rX2 1 == && X. 0 == && f 0 < &&f X4rr rs 1s 1d /r X:r 100 <9 rnnSCTXscn DANamiraForgottenScript3 short attack float timer short reset short talkvar short confidenceVAR Begin GameMode if ( GetCombatTarget == Player ) && ( Player.IsActorUsingATorch == 1 ) SetAV Confidence 0 evp endif if ( confidenceVAR == 0 ) SetAV Confidence 100 set confidenceVAR to 1 endif if ( talkvar < 50 ) && ( talkvar > 0 ) && ( player.GetInCell Anga == 1 ) SayTo Priest1REF DANamiraReactions set talkvar to -1 endif if ( DANamira.priest3 == 1 ) && ( attack == 0 ) SetAV Confidence 100 SetAV Energy 100 StartCombat Priest3REF set attack to 1 set talkvar to GetRandomPercent endif set timer to ( timer - GetSecondsPassed ) if ( reset == 1 ) && ( timer < 0 ) set reset to 0 set DANamira.cower to 0 endif if ( attack == 0 ) && ( timer < 0 ) && ( player.GetInCell Anga == 1 ) && ( GetDead == 0 ) if ( GetDistance Priest1REF <= 200 ) && ( Priest1REF.dead == 0 ) set timer to SayTo Priest1REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest2REF <= 200 ) && ( Priest2REF.dead == 0 ) set timer to SayTo Priest2REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest3REF <= 200 ) && ( Priest3REF.dead == 0 ) set timer to SayTo Priest3REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest4REF <= 200 ) && ( Priest4REF.dead == 0 ) set timer to SayTo Priest4REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle ;elseif ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) ; set timer to SayTo Player DANamiraSpeech ; set DANamira.cower to 1 ; set reset to 1 ; PickIdle endif endif if ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) && ( GetDead == 0 ) && ( timer < 0 ) set timer to SayTo Player DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle endif End Begin OnDeath Player if ( GetStage DANamira < 100 ) SetStage DANamira 110 endif EndSLSDSCVRattackSLSD}SCVRtimerSLSDa SCVRresetSLSDa SCVRtalkvarSLSDa SCVRconfidenceVARSCROSCRO@fSCROSCROJSCROFSCROSCROSCROSCROSCPT EDIDDANamiraForgottenScript4SCHR SCDA" X Z == rX2 1 == && "n^  s 0 == "nds 1.* s 50 < s 0 > && rXCr 1 == &&4rr s 1 ~ rs 1 == s 0 == && "nd #ndrs 1 s XMf f X  - s 1 == f 0 < &&s 0 rs 0<8 s 0 == f 0 < && rXCr 1 == && X. 0 == &&%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d%! Xr 200 <= r s 0 == &&f X4r r rs 1s 1d%! Xr 200 <= rs 0 == &&f X4rr rs 1s 1d@< Xr 200 <= rX2 1 == && X. 0 == && f 0 < &&f X4rr rs 1s 1d /r X:r 100 <9 rnnSCTXscn DANamiraForgottenScript4 short attack float timer short reset short talkvar short confidenceVAR Begin GameMode if ( GetCombatTarget == Player ) && ( Player.IsActorUsingATorch == 1 ) SetAV Confidence 0 evp endif if ( confidenceVAR == 0 ) SetAV Confidence 100 set confidenceVAR to 1 endif if ( talkvar < 50 ) && ( talkvar > 0 ) && ( player.GetInCell Anga == 1 ) SayTo Priest1REF DANamiraReactions set talkvar to -1 endif if ( DANamira.priest4 == 1 ) && ( attack == 0 ) SetAV Confidence 100 SetAV Energy 100 StartCombat Priest4REF set attack to 1 set talkvar to GetRandomPercent endif set timer to ( timer - GetSecondsPassed ) if ( reset == 1 ) && ( timer < 0 ) set reset to 0 set DANamira.cower to 0 endif if ( attack == 0 ) && ( timer < 0 ) && ( player.GetInCell Anga == 1 ) && ( GetDead == 0 ) if ( GetDistance Priest1REF <= 200 ) && ( Priest1REF.dead == 0 ) set timer to SayTo Priest1REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest2REF <= 200 ) && ( Priest2REF.dead == 0 ) set timer to SayTo Priest2REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest3REF <= 200 ) && ( Priest3REF.dead == 0 ) set timer to SayTo Priest3REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle elseif ( GetDistance Priest4REF <= 200 ) && ( Priest4REF.dead == 0 ) set timer to SayTo Priest4REF DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle ;elseif ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) ; set timer to SayTo Player DANamiraSpeech ; set DANamira.cower to 1 ; set reset to 1 ; PickIdle endif endif if ( GetDistance Player <= 200 ) && ( Player.IsActorUsingATorch == 1 ) && ( GetDead == 0 ) && ( timer < 0 ) set timer to SayTo Player DANamiraSpeech set DANamira.cower to 1 set reset to 1 PickIdle endif End Begin OnDeath Player if ( GetStage DANamira < 100 ) SetStage DANamira 110 endif EndSLSDMSCVRattackSLSD&sSCVRtimerSLSD 1 == &SCVRresetSLSD X4SCVRtalkvarSLSDs 0 SCVRconfidenceVARSCROSCRO@fSCROSCROJSCROFSCROSCROSCROSCROSCPTEDIDDANamiraPriestScriptSCHR SCDA0f f X  -($ f 4 ~ < s 0 == && X. 0 == &&f X3r.* s 0 == X/r 0 == && X. 0 == &&3rs 1 X:r 30 ==! rXr rs 0 == && rs 1R rn r n! rXr rs 0 == && rs 1R rn r n! rXr rs 0 == && rs 1R rn r n! rXr rs 0 == && rs 1R rn r n &rs rs 1 +s 1 r 9 rniSCTX$scn DANamiraPriestScript float timer short dead short reactvar Begin GameMode set timer to ( timer - GetSecondsPassed ) if ( timer < -4 ) && ( reactvar == 0 ) && ( GetDead == 0 ) set timer to Say DANamiraSpeech endif if ( reactvar == 0 ) && ( GetItemCount Torch02 == 0 ) && ( GetDead == 0 ) Say DANamiraReactions set reactvar to 1 endif if ( GetStage DANamira == 30 ) If ( Priest1REF.IsSpellTarget DANamiraDarkness ) && ( DANamira.priest1 == 0 ) Set DANamira.priest1 to 1 Priest1REF.RemoveItem Torch02 1 Priest1REF.AddItem DATorch02 1 endif If ( Priest2REF.IsSpellTarget DANamiraDarkness ) && ( DANamira.priest2 == 0 ) Set DANamira.priest2 to 1 Priest2REF.RemoveItem Torch02 1 Priest2REF.AddItem DATorch02 1 endif If ( Priest3REF.IsSpellTarget DANamiraDarkness ) && ( DANamira.priest3 == 0 ) Set DANamira.priest3 to 1 Priest3REF.RemoveItem Torch02 1 Priest3REF.AddItem DATorch02 1 endif If ( Priest4REF.IsSpellTarget DANamiraDarkness ) && ( DANamira.priest4 == 0 ) Set DANamira.priest4 to 1 Priest4REF.RemoveItem Torch02 1 Priest4REF.AddItem DATorch02 1 endif endif End Begin OnDeath set DANamira.priestsdead to ( DANamira.priestsdead + 1 ) set dead to 1 End Begin OnDeath Player SetStage DANamira 105 EndSLSDs SCVRtimerSLSDX2SCVRdeadSLSDREF <= SCVR reactvarSCROSCROSCROSCROSCROSCROSCROJSCROFSCROSCROJSCROSCPTE EDIDDANamiraScriptSCHRlSCDAl^  s 4 == X:r 0 > X:r 40 <9 rn(SCTX_ScriptName DANamiraScript short priest1 short priest2 short priest3 short priest4 short cower short priestsdead short target Begin GameMode if ( priestsdead == 4 ) if ( GetStage DANamira > 0 ) if ( GetStage DANamira < 40 ) SetStage DANamira 40 endif endif endif ;if ( target == Priest1REF ) ; MessageBox "You hit PRIEST 1" ;endif ;if ( GetStage DANamira == 30 ) ; If ( Priest1REF.IsSpellTarget DANamiraDarkness ) && ( priest1 == 0 ) ; Set priest1 to 1 ; Priest1REF.RemoveItem Torch02 1 ; Priest1REF.AddItem DATorch02 1 ; endif ; ; If ( Priest2REF.IsSpellTarget DANamiraDarkness ) && ( priest2 == 0 ) ; Set priest2 to 1 ; Priest2REF.RemoveItem Torch02 1 ; Priest2REF.AddItem DATorch02 1 ; endif ; ; If ( Priest3REF.IsSpellTarget DANamiraDarkness ) && ( priest3 == 0 ) ; Set priest3 to 1 ; Priest3REF.RemoveItem Torch02 1 ; Priest3REF.AddItem DATorch02 1 ; endif ; ; If ( Priest4REF.IsSpellTarget DANamiraDarkness ) && ( priest4 == 0 ) ; Set priest4 to 1 ; Priest4REF.RemoveItem Torch02 1 ; Priest4REF.AddItem DATorch02 1 ; endif ;endif EndSLSD s 0SCVRpriest1SLSDSCVRpriest2SLSDSCVRpriest3SLSDSCVRpriest4SLSDkSCVRcowerSLSDkSCVR priestsdeadSLSDSCVRtargetSCROFSCPTEDIDDANamiraSpellSCHR$SCDA$rs XSCTXuscn DANamiraSpell Begin ScriptEffectStart Set DANamira.target to GetSelf ;MessageBox "SPELL CAST" End SCROFSCPTK EDIDDANamiraStatueScriptSCHR vSCDAvO  Xir 1 ==%! X:r 30 < rXP 5 >= && rX 20 >91You are not the type of follower Namira requires. rX 20 <=s 1 X:r 40 ==s 8 rXP 5 <D<Namira demands a more powerful champion to begin this quest.   s 1 ==s 0  s 0 ==s 1f f X  - ) f 0 <= X:r 20 <=  s 1 ==a f rX3rnrns 2  s 2 == f rX3rnrns 3  s 3 == f rX3rnrns 4  s 4 == f rX3rnrns 5  s 5 == f rX3rnrns 6  s 6 ==`!9 rns 7XrXrr   X:r 40 ==  s 8 ==a f rX3rnrns 9  s 9 == f rX3rnrns 10 s 10 ==`9 rnd r nr SCTX ScriptName DANamiraStatueScript short NamiraSpeech short messageOn float timer ;This section will control what happens when the player activates the statue Begin OnActivate if isActionRef player == 1 if ( GetStage DANamira < 30 ) && ( Player.GetLevel >= 5 ) if ( player.getAV Personality > 20 ) MessageBox "You are not the type of follower Namira requires." elseif ( player.getAV Personality <= 20 ) set messageOn to 1 endif elseif ( GetStage DANamira == 40 ) set NamiraSpeech to 8 elseif ( Player.GetLevel < 5 ) MessageBox "Namira demands a more powerful champion to begin this quest." endif endif End ;This section will control the audio files played when the statue is activated Begin GameMode if ( messageOn == 1 ) set messageOn to 0 if ( NamiraSpeech == 0 ) set NamiraSpeech to 1 endif endif set timer to ( timer - GetSecondsPassed ) if ( timer <= 0 ) if ( GetStage DANamira <= 20 ) if ( NamiraSpeech == 1 ) DisablePlayerControls ;PLAY AUDIO set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 2 elseif ( NamiraSpeech == 2 ) ;PLAY AUDIO2 set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 3 elseif ( NamiraSpeech == 3 ) ;PLAY AUDIO3 set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 4 elseif ( NamiraSpeech == 4 ) set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 5 elseif ( NamiraSpeech == 5 ) set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 6 elseif ( NamiraSpeech == 6 ) EnablePlayerControls AngaExRef.Enable SetStage DANamira 30 set NamiraSpeech to 7 AddTopic TheForgottenOnesTOPIC AddTopic AngaTOPIC Player.AddSpell DANamiraDarkness endif elseif ( GetStage DANamira == 40 ) if ( NamiraSpeech == 8 ) DisablePlayerControls ;PLAY END AUDIO ;MessageBox "PLAYING LAST AUDIO AND GIVING JOURNAL" set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 9 elseif ( NamiraSpeech == 9 ) set timer to DANamiraShrineREF.say DANamiraSpeech 1 DANamiraVoice 1 set NamiraSpeech to 10 elseif ( NamiraSpeech == 10 ) EnablePlayerControls SetStage DANamira 100 Player.AddItem DARingNamira 1 Player.RemoveSpell DANamiraDarkness endif endif endif End SLSDControlSCVR NamiraSpeechSLSD 1 DABoSCVR messageOnSLSD7 ) SCVRtimerSCROuSCROSCROFSCRO SCROS