Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # VV23_AristTeleportVault =====================================================
- Begin VV23_AristTeleportVault
- short done
- if ( MenuMode )
- return
- endif
- if ( done )
- return
- endif
- if ( GetJournalIndex "vv23_vault" < 5 )
- return
- endif
- if ( GetPCCell "Monastery of Order, Vault Entrance" )
- set done to 1
- vv23_artist->PositionCell 6726 4000 16258 5400 "Monastery of Order, Vault Entrance"
- StopScript VV23_AristTeleportVault
- endif
- End
- # VV23_ArmourGuardDead ========================================================
- Begin VV23_ArmourGuardDead
- short doonce
- short foundonce
- if ( doOnce == 0 )
- disable
- endif
- if ( doOnce == 0 )
- if ( GetJournalIndex "VV23_ArmourRecovery" >= 10 )
- set doOnce to 1
- enable
- endif
- endif
- if ( foundonce == 0 )
- if ( GetJournalIndex "VV23_ArmourRecovery" == 10 )
- if ( GetDistance player <= 250 )
- journal VV23_ArmourRecovery 15
- set foundonce to 1
- endif
- endif
- endif
- end
- # VV23_artifactspin ===========================================================
- begin VV23_artifactspin
- if ( MenuMode )
- return
- endif
- ; spin around
- Rotate z 5
- End
- # VV23_ArtistTeleport =========================================================
- Begin VV23_ArtistTeleport
- ; adapted from a script by The Other Felix
- float Timer
- short port
- float oldgamehour
- If ( MenuMode )
- return
- elseif ( GameHour == oldgamehour )
- return
- endif
- set oldgamehour to GameHour
- if ( port == 0 )
- if ( Timer == 0 )
- vv23_artist->Cast "recall" vv23_artist
- Set Timer to 1
- elseif ( Timer < 3.5 )
- Set Timer to ( Timer + GetSecondsPassed )
- else
- if ( GetJournalIndex "vv23_vault" == 150 )
- vv23_artist->disable
- else
- vv23_artist->PositionCell -4042 -6370 16099 0 "Bthumzchekar"
- endif
- Set Timer to 0
- set port to 1
- endif
- endif
- if ( port == 1 )
- set Timer to Timer + GetSecondsPassed
- if ( Timer > 1 )
- Set Timer to 0
- set port to 0
- StopScript vv23_ArtistTeleport
- endif
- endif
- End
- # VV23_BoardNotice_ILLU =======================================================
- begin VV23_BoardNotice_ILLU
- short doOnce
- short done
- if ( doOnce == 0 )
- set doOnce to 1
- disable
- endif
- if ( doOnce == 1 )
- if ( GetPCRank "Thieves Guild" > 3 )
- if ( GetJournalIndex "vv23_tg_intro" >= 20 )
- enable
- set doOnce to 2
- endif
- endif
- endif
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal "VV23_TGTombIllusion" 5
- AddTopic "Gem of Greedbane"
- set done to 1
- activate
- endif
- end
- # VV23_BoardNotice_Inan =======================================================
- begin VV23_BoardNotice_Inan
- short doOnce
- short done
- if ( doOnce == 0 )
- set doOnce to 1
- disable
- endif
- if ( doOnce == 1 )
- if ( GetPCRank "Thieves Guild" > 1 )
- enable
- set doOnce to 2
- endif
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal "VV23_TGInanius" 5
- AddTopic "Inanius Item Recovery"
- set done to 1
- activate
- endif
- endif
- end
- # VV23_BoardNotice_TURQ =======================================================
- begin VV23_BoardNotice_TURQ
- short doOnce
- short done
- if ( doOnce == 0 )
- set doOnce to 1
- disable
- endif
- if ( doOnce == 1 )
- if ( GetPCRank "Thieves Guild" > 4 )
- if ( GetJournalIndex "vv23_tg_intro" >= 20 )
- enable
- set doOnce to 2
- endif
- endif
- endif
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal "VV23_TGDwemTurq" 5
- AddTopic "Turquoise of Lies"
- set done to 1
- activate
- endif
- end
- # vv23_CaretakerControl_s =====================================================
- begin vv23_CaretakerControl_s
- if ( CellChanged )
- if ( GetSoundPlaying "T_SndObj_HauntedChoir" )
- StopSound "T_SndObj_HauntedChoir"
- endif
- if ( GetSoundPlaying "VV23_ghostsoundLOUDER" )
- StopSound "VV23_ghostsoundLOUDER"
- endif
- endif
- if ( GetTarget Player )
- Return
- endif
- if ( GetDistance player >= 512 )
- if ( GetSoundPlaying "T_SndObj_HauntedChoir" == 0 )
- PlayLoopSound3DVP "T_SndObj_HauntedChoir" 1.0 1.0
- endif
- if ( GetSoundPlaying "VV23_ghostsoundLOUDER" )
- StopSound "VV23_ghostsoundLOUDER"
- endif
- return
- endif
- if ( player->GetInvisible )
- if ( GetSoundPlaying "T_SndObj_HauntedChoir" == 0 )
- PlayLoopSound3DVP "T_SndObj_HauntedChoir" 1.0 1.0
- endif
- if ( GetSoundPlaying "VV23_ghostsoundLOUDER" )
- StopSound "VV23_ghostsoundLOUDER"
- endif
- return
- endif
- if ( GetDistance player >= 192 )
- if ( GetSoundPlaying "VV23_ghostsoundLOUDER" == 0 )
- PlayLoopSound3DVP "VV23_ghostsoundLOUDER" 1.0 1.0
- endif
- if ( GetSoundPlaying "T_SndObj_HauntedChoir" )
- StopSound "T_SndObj_HauntedChoir"
- endif
- return
- endif
- Set vv23_catacombstealthfail to 1
- PlaySound3D "bonelord scream"
- SetFight 100
- StartCombat Player
- if ( GetSoundPlaying "T_SndObj_HauntedChoir" )
- StopSound "T_SndObj_HauntedChoir"
- endif
- if ( GetSoundPlaying "VV23_ghostsoundLOUDER" )
- StopSound "VV23_ghostsoundLOUDER"
- endif
- end
- # VV23_CatacombGhostAttack ====================================================
- Begin VV23_CatacombGhostAttack
- short doOnce
- if ( doOnce == 0 )
- Disable
- set doOnce to 1
- endif
- if ( doOnce == 1 )
- if ( vv23_catacombstealthfail > 0 )
- Enable
- playsound3d "conjuration hit"
- set doOnce to 2
- endif
- endif
- End
- # vv23_CatacombTrickwall1_s ===================================================
- begin vv23_CatacombTrickwall1_s
- float timer
- short state
- if ( MenuMode )
- return
- endif
- if ( state == 2 )
- return
- endif
- if ( OnActivate )
- if ( state == 0 )
- if ( Player->GetItemCount "VV23_CatacombKey" )
- set state to 1
- set timer to 15 ; edit this to make the wall move longer
- playSound3D "Stone Door Open 1"
- else
- playSound3D "LockedDoor"
- endif
- endif
- endif
- if ( state == 1 )
- set timer to ( timer - GetSecondsPassed )
- if ( timer > 0 )
- Move Z -32 ; edit this to make the wall move faster
- else
- set state to 2
- endif
- endif
- end
- # VV23_ChaosGreeting ==========================================================
- begin VV23_ChaosGreeting
- short once
- short nolore
- if ( MenuMode )
- return
- endif
- if ( once )
- return
- endif
- if ( GetJournalIndex "vv23_codex_chaos" >= 5 )
- return
- endif
- if ( GetJournalIndex "vv23_guilty" < 100 )
- return
- endif
- if ( GetJournalIndex "vv23_opposites" < 100 )
- return
- endif
- if ( GetDistance Player <= 700 )
- set once to 1
- forcegreeting
- endif
- end
- # vv23_Codex_s ================================================================
- Begin vv23_Codex_s
- short enhanced
- short doonce
- short state
- short messageOn
- short button
- float timer
- if ( MenuMode )
- Return
- endif
- if ( OnActivate )
- if ( state == 0 )
- LoopGroup Idle2 0 ; open book
- set timer to 1.3333
- set state to 1
- elseif ( state == 1 )
- if ( enhanced == 0 )
- if ( GetJournalIndex "vv23_vault" == 20 ) ; player will be asked to destroy The Codex
- MessageBox "Destroy the Codex?" "Yes." "No."
- set messageOn to 3
- else
- if ( GetJournalIndex "vv23_vault" == 25 ) ; player will be asked to enhance The Codex
- if ( Player->GetItemCount "vv23_w_CrystalSword" > 0 )
- MessageBox "Enhance the Sword of Order?" "Yes." "No."
- set messageOn to 2
- endif
- else
- MessageBox "The Codex does nothing."
- endif
- endif
- elseif ( enhanced == 1 )
- LoopGroup Idle3 0 ; close book
- set timer to 1.3333
- set state to 0
- endif
- endif
- endif
- if ( timer > 0 ) ; can't activate book while animation is playing
- set timer to ( timer - GetSecondsPassed )
- Return
- endif
- if ( doonce == 0 )
- if ( state == -1 )
- disable
- setdelete 1
- set doonce to 1
- endif
- endif
- if ( messageOn == 1 )
- set button to GetButtonPressed
- if ( button >= 0 )
- set messageOn to 0
- endif
- if ( button == 0 )
- ; Player->AddItem "vv23_bk_codex" 1
- PlaySound "Item Book Up"
- Disable
- elseif ( button == 1 )
- LoopGroup Idle3 0 ; close book
- set timer to 1.3333
- set state to 0
- set button to 0
- endif
- endif
- if ( messageOn == 2 )
- set button to GetButtonPressed
- if ( button >= 0 )
- set messageOn to 0
- endif
- if ( button == 0 )
- LoopGroup Idle5 0
- PlaySound "vv23_codexExplosion"
- Player->RemoveItem "vv23_w_CrystalSword" 1
- Player->AddItem "vv23_w_CrystalSwordEnhanced" 1
- Journal vv23_vault 150 ; change to whatever entry covers the enhancement of The Codex
- set enhanced to 1
- elseif ( button == 1 )
- LoopGroup Idle3 0 ; close book
- set timer to 1.3333
- set state to 0
- set button to 0
- endif
- endif
- if ( messageOn == 3 )
- set button to GetButtonPressed
- if ( button >= 0 )
- set messageOn to 0
- endif
- if ( button == 0 )
- LoopGroup Idle4 0
- PlaySound "vv23_codexExplosion"
- Journal vv23_vault 100 ; change to whatever entry covers the destruction of The Codex
- vv23_keeper->disable
- set state to -1
- set timer to 1.6667
- elseif ( button == 1 )
- LoopGroup Idle3 0 ; close book
- set timer to 1.3333
- set state to 0
- set button to 0
- endif
- endif
- End
- # VV23_CodexPlaceholder =======================================================
- begin VV23_CodexPlaceholder
- short done
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal vv23_vault 100
- Activate
- ; set once to 1
- set done to 1
- endif
- end
- # vv23_coinDwrv005_s ==========================================================
- Begin vv23_coinDwrv005_s
- Short State
- if ( MenuMode )
- Return
- endif
- if ( State == 1 )
- if ( GetDisabled )
- SetDelete 1
- set State to 2
- endif
- endif
- if ( OnActivate )
- Player->AddItem "misc_dwrv_coin00" 5
- PlaySound "Item Gold Up"
- Disable
- set State to 1
- endif
- End
- # vv23_coinDwrv010_s ==========================================================
- Begin vv23_coinDwrv010_s
- Short State
- if ( MenuMode )
- Return
- endif
- if ( State == 1 )
- if ( GetDisabled )
- SetDelete 1
- set State to 2
- endif
- endif
- if ( OnActivate )
- Player->AddItem "misc_dwrv_coin00" 10
- PlaySound "Item Gold Up"
- Disable
- set State to 1
- endif
- End
- # vv23_coinDwrv025_s ==========================================================
- Begin vv23_coinDwrv025_s
- Short State
- if ( MenuMode )
- Return
- endif
- if ( State == 1 )
- if ( GetDisabled )
- SetDelete 1
- set State to 2
- endif
- endif
- if ( OnActivate )
- Player->AddItem "misc_dwrv_coin00" 25
- PlaySound "Item Gold Up"
- Disable
- set State to 1
- endif
- End
- # vv23_coinDwrv100_s ==========================================================
- Begin vv23_coinDwrv100_s
- Short State
- if ( MenuMode )
- Return
- endif
- if ( State == 1 )
- if ( GetDisabled )
- SetDelete 1
- set State to 2
- endif
- endif
- if ( OnActivate )
- Player->AddItem "misc_dwrv_coin00" 100
- PlaySound "Item Gold Up"
- Disable
- set State to 1
- endif
- End
- # VV23_floorwarpdown ==========================================================
- begin VV23_floorwarpdown
- if ( MenuMode )
- return
- endif
- if ( GetDistance player <= 500 )
- Player->setpos z 14832
- endif
- end
- # VV23_floorwarpdowntombstair =================================================
- begin VV23_floorwarpdowntombstair
- if ( MenuMode )
- return
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- if ( GetDistance player <= 255 )
- Player->setpos z 16256
- endif
- endif
- end
- # VV23_floorwarpexitdown ======================================================
- begin VV23_floorwarpexitdown
- if ( MenuMode )
- return
- endif
- if ( GetDistance player <= 500 )
- Player->setpos z -14272
- endif
- end
- # vv23_floorwarpup ============================================================
- Begin vv23_floorwarpup
- if ( MenuMode )
- return
- endif
- if ( GetDistance player <= 500 )
- Player->setpos z 20976
- endif
- end
- # vv23_GillesCombat ===========================================================
- Begin vv23_GillesCombat
- if ( vv23_gilles->GetDistance "Player" > 1000 )
- return
- endif
- if ( vv23_gilles->GetHealth > 0 )
- vv23_Fau_SpiderGilles->StartCombat vv23_gilles
- vv23_Fau_Spiderl1Gilles->StartCombat vv23_gilles
- vv23_Fau_Spiderl2Gilles->StartCombat vv23_gilles
- else
- return
- endif
- float timer
- If ( GetHealth > 0 )
- If ( vv23_gilles->GetWeaponDrawn == 0 )
- If ( vv23_gilles->GetSpellReadied == 0 )
- set timer to ( timer + GetSecondsPassed )
- If ( timer < 1 )
- return
- endif
- vv23_gilles->StartCombat vv23_Fau_SpiderGilles
- vv23_gilles->StartCombat vv23_Fau_Spiderl1Gilles
- vv23_gilles->StartCombat vv23_Fau_Spiderl2Gilles
- StopScript vv23_GillesCombat
- endif
- endif
- endif
- End
- # vv23_GillesScript ===========================================================
- Begin vv23_GillesScript
- short nolore
- short once
- short OnPCHitMe
- if ( MenuMode )
- return
- endif
- ; if ( once == 1 )
- ; return
- ; endif
- if ( GetJournalIndex "vv23_guilty" < 15 )
- disable
- endif
- if ( once == 0 )
- if ( GetJournalIndex "vv23_guilty" >= 15 )
- enable
- set once to 1
- endif
- endif
- ; Gilles dies in one hit after player agrees to kill him
- if ( OnPCHitMe == 1 )
- if ( GetJournalIndex "vv23_guilty_brother" == 25 )
- setHealth 0
- Set OnPCHitMe to 0
- Journal vv23_guilty_brother 35
- endif
- endif
- ; If player helps Lucien escape before speaking to Gilles
- if ( GetJournalIndex "vv23_guilty_brother" == 125 )
- if ( GetHealth > 0 )
- setHealth 0
- endif
- endif
- End
- # VV23_GolemEnabler ===========================================================
- Begin VV23_GolemEnabler
- short doonce
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "VV23_slaythegolem" >= 10 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- end
- # VV23_GolemNotice ============================================================
- begin VV23_GolemNotice
- short done
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal "VV23_slaythegolem" 5
- AddTopic "Crystal Golem"
- set done to 1
- activate
- endif
- end
- # VV23_GreedBaneGem ===========================================================
- Begin VV23_GreedBaneGem
- short doOnce
- short done
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" > 1 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- if ( OnActivate )
- if ( done == 0 )
- Journal "VV23_TGTombIllusion" 15
- set done to 1
- player->additem VV23_TrueGreedbaneItem 1
- player->removeitem VV23_FakeWarning 1
- journal VV23_TGTombIllusion 10
- disable
- endif
- endif
- End
- # VV23_greedbanetreasurecursed ================================================
- Begin VV23_greedbanetreasurecursed
- short doonce
- if ( doOnce == 0 )
- if ( GetJournalIndex "VV23_TGTombIllusion" > 1 )
- set doOnce to 1
- enable
- else
- disable
- endif
- endif
- if ( OnActivate )
- Cast "AB_trap_Runestone_01" Player
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- disable
- endif
- end
- # VV23_GuardNotice ============================================================
- begin VV23_GuardNotice
- short done
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal "VV23_ArmourRecovery" 5
- AddTopic "Missing Guardian"
- set done to 1
- activate
- endif
- end
- # vv23_hauntedbooksounds ======================================================
- begin vv23_hauntedbooksounds
- float timer
- short doOnce
- if ( doOnce == 2 )
- return
- endif
- if ( timer == 0 )
- set timer to Random 100
- endif
- if ( GetJournalIndex "VV23_TGInanius" == 10 )
- if ( CellChanged == 0 )
- set timer to timer - GetSecondsPassed
- if ( timer < 1 )
- if ( GetSoundPlaying "T_SndEnv_DirenniHaunted" == 0 )
- PlayLoopSound3DVP "T_SndEnv_DirenniHaunted" 0.5 1.0
- endif
- endif
- endif
- endif
- if ( doOnce == 0 )
- set doOnce to 1
- endif
- if ( doOnce == 1 )
- if ( GetJournalIndex "VV23_TGInanius" == 15 )
- stopsound "T_SndEnv_DirenniHaunted"
- disable
- set doOnce to 2
- endif
- endif
- end
- # VV23_IlluOff ================================================================
- begin VV23_IlluOff
- Short DoOnce
- if ( GetJournalIndex "VV23_TGTombIllusion" < 4 )
- disable
- Endif
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 4 )
- if ( GetJournalIndex "VV23_TGTombIllusion" < 10 )
- enable
- endif
- endif
- If ( Doonce == 0 )
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- if ( GetDistance player > 500 )
- Set Doonce to 1
- disable
- endif
- endif
- endif
- If ( Doonce == 1 )
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- if ( GetDistance player <= 500 )
- Set Doonce to 0
- enable
- endif
- endif
- endif
- end
- # VV23_IlluOn =================================================================
- begin VV23_IlluOn
- Short DoOnce
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 4 )
- if ( GetJournalIndex "VV23_TGTombIllusion" < 10 )
- disable
- endif
- endif
- If ( Doonce == 0 )
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- if ( GetDistance player > 500 )
- Set Doonce to 1
- enable
- endif
- endif
- endif
- If ( Doonce == 1 )
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- if ( GetDistance player <= 500 )
- Set Doonce to 0
- disable
- endif
- endif
- endif
- end
- # vv23_jygDoorSmall_s =========================================================
- Begin vv23_jygDoorSmall_s
- float timer
- ; a variable to prevent the door from frequently getting opened and closed by npcs
- short state
- ; 0 = initial state
- ; 1 = opening
- ; 2 = open
- ; 3 = closing
- ; 4 = closed
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- if ( getLocked > 0 )
- if ( timer >= 1 )
- set timer to 0
- playSound3D "LockedDoor"
- endif
- elseif ( state > 2 )
- if ( timer >= 1 )
- set state to 1
- set timer to 0
- playSound3D "Door Metal Open"
- endif
- elseif ( state < 3 )
- if ( getCollidingActor == 0 ) ; to prevent the closing while an npc collides with the door
- if ( timer >= 1 )
- set state to 3
- set timer to 0
- playSound3D "Door Metal Close"
- endif
- endif
- endif
- endif
- if ( timer < 1 )
- set timer to ( timer + getSecondsPassed )
- endif
- if ( state == 0 ) ; set the door to closed
- set state to 4
- set timer to 1
- endif
- if ( state == 1 ) ; the door is opening
- playGroup, idle2, 0
- set state to 2
- return
- endif
- if ( state == 2 ) ; the door has finished opening
- playGroup, idle4, 0
- return
- endif
- if ( state == 3 ) ; the door is closing
- playGroup, idle3, 0
- set state to 4
- return
- endif
- if ( state == 4 ) ; the door has finished closing
- playGroup, idle, 0
- endif
- end
- # vv23_KeeperMark_s ===========================================================
- Begin vv23_KeeperMark_s
- short button
- short messageOn
- short reset
- short OnPCEquip
- ;if ( MenuMode )
- ; Return
- ;endif
- if ( OnPCEquip == 0 )
- set reset to 0
- endif
- if ( reset == 1 )
- return
- endif
- if ( OnPCEquip == 1 )
- if ( reset == 0 )
- Set OnPCEquip to 0
- MessageBox "Would you like to return to the Monastery of Order?" "Yes" "No"
- set messageOn to 1
- endif
- endif
- if ( messageOn == 1 )
- set button to GetButtonPressed
- if ( button >= 0 )
- set messageOn to 0
- endif
- if ( button == 0 )
- Player->PositionCell 3840 12800 15856 0 "Monastery of Order"
- set reset to 1
- elseif ( button == 1 )
- set reset to 1
- return
- endif
- endif
- End
- # VV23_KeeperScript ===========================================================
- Begin VV23_KeeperScript
- short done
- short nolore
- if ( MenuMode )
- return
- endif
- if ( done == 1 )
- return
- endif
- if ( done == 0 )
- if ( GetJournalIndex vv23_introductions < 5 )
- if ( GetDistance "Player" < 500 )
- set done to 1
- vv23_keeper->ForceGreeting
- endif
- else
- return
- endif
- endif
- End
- # VV23_KeeperTeleport =========================================================
- Begin VV23_KeeperTeleport
- ; adapted from a script by The Other Felix
- float Timer
- short port
- float oldgamehour
- If ( MenuMode )
- return
- elseif ( GameHour == oldgamehour )
- return
- endif
- set oldgamehour to GameHour
- if ( port == 0 )
- if ( Timer == 0 )
- vv23_keeper->Cast "recall" vv23_keeper
- Set Timer to 1
- elseif ( Timer < 4.5 )
- Set Timer to ( Timer + GetSecondsPassed )
- else
- vv23_keeper->PositionCell 4094.88, 4089.65, 11650, 10800, "Monastery of Order, Keeper's Study"
- player->PositionCell 4092, 3801.41, 11650, 0, "Monastery of Order, Keeper's Study"
- Set Timer to 0
- set port to 1
- endif
- endif
- if ( port == 1 )
- set Timer to Timer + GetSecondsPassed
- if ( Timer > 1 )
- Set Timer to 0
- set port to 0
- StopScript VV23_KeeperTeleport
- endif
- endif
- End
- # VV23_KeeperTeleport_2 =======================================================
- Begin VV23_KeeperTeleport_2
- short done
- short nolore
- if ( MenuMode )
- return
- endif
- if ( done == 1 )
- return
- endif
- if ( done == 0 )
- if ( GetJournalIndex vv23_vault >= 5 )
- set done to 1
- vv23_keeper->PositionCell, 7054.45, 4088.19, 16258, 16200, "Monastery of Order, Vault Entrance"
- vv23_artist->PositionCell, 5072.87, 12657.33, 15346, 5400, "Monastery of Order"
- StopScript VV23_KeeperTeleport_2
- else
- return
- endif
- endif
- End
- # VV23_lightsoff ==============================================================
- Begin VV23_lightsoff
- short doOnce
- if ( doOnce == 0 )
- set doOnce to 1
- endif
- if ( doOnce == 1 )
- if ( VV23_stabbajackspookyoff == 1 )
- disable
- set doOnce to 2
- endif
- endif
- End
- # VV23_MoveLucien =============================================================
- begin VV23_MoveLucien
- if ( GetJournalIndex, "vv23_guilty" == 100 )
- if ( cellChanged == 1 )
- "vv23_lucien"->PositionCell -2701.38, 7561.95, -525.77, 0 "Suran Depths, Crystal Grotto"
- StopScript VV23_MoveLucien
- endif
- endif
- if ( GetJournalIndex, "vv23_guilty" == 115 )
- if ( cellChanged == 1 )
- "vv23_lucien"->PositionCell -2701.38, 7561.95, -525.77, 0 "Suran Depths, Crystal Grotto"
- StopScript VV23_MoveLucien
- endif
- endif
- end
- # VV23_NotArcheologist01 ======================================================
- Begin VV23_NotArcheologist01
- short doOnce
- short greetonce
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" == 5 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" == 5 )
- if ( greetonce == 0 )
- if ( GetDistance player <= 300 )
- ForceGreeting
- set greetonce to -1
- endif
- endif
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- disable
- endif
- End
- # VV23_NotArcheologistOther ===================================================
- Begin VV23_NotArcheologistOther
- short doOnce
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" == 5 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- if ( GetJournalIndex "VV23_TGTombIllusion" >= 10 )
- disable
- endif
- End
- # VV23_OrderGreeting ==========================================================
- begin VV23_OrderGreeting
- short once
- short nolore
- if ( MenuMode )
- return
- endif
- if ( once == 1 )
- return
- endif
- if ( GetJournalIndex "vv23_codex_chaos" >= 15 )
- if ( GetJournalIndex "vv23_codex_chaos" <= 25 )
- if ( GetJournalIndex "vv23_codex_order" < 5 )
- if ( once == 0 )
- if ( GetDistance, Player <= 750 )
- forcegreeting
- set once to 1
- endif
- endif
- endif
- endif
- endif
- end
- # VV23_pitfighter01_s =========================================================
- Begin VV23_pitfighter01_s
- ; By Nigedo, with adjustments by JOG to prevent incorrect npc-behaviour by enabling/disabling. This script is for each kid that practices dueling with another kid
- ; It must be altered in each case to include the unique ID of the dueling partner - see below
- ; scripts disable/enable while unseen and timing reworked by abot
- Short nolore
- Short knowyou
- Short OnPCHitMe
- Short removeDay
- Short count
- Short extraBounty
- Short combatState
- short weapvar
- short state
- if ( MenuMode )
- return
- endif
- ;--------------------- Dueling scripting
- If ( chargenstate != -1 )
- return
- endif
- if ( Player->GetWeaponDrawn )
- set weapvar to 1
- elseif ( Player->GetSpellReadied )
- set Weapvar to 1
- else
- set Weapvar to 0
- endif
- If ( GetDistance Player < 256 )
- If ( combatState != 1 )
- If ( weapvar == 1 )
- StopCombat
- Set combatState to 1
- endif
- endif
- Elseif ( GetDistance Player > 1024 )
- If ( combatState != 2 )
- StopCombat
- Set combatState to 2
- Endif
- Else
- If ( combatState != 3 )
- if ( GetTarget Player == 0 )
- StartCombat "VV23_PitFighter2"; **This must be unique ID of dueling partner NPC
- Set combatState to 3
- endif
- Endif
- Endif
- if ( GetTarget Player == 0 )
- SetHealth 87; Prevent dueling from killing NPC
- elseif ( GetTarget Player == 1 )
- return
- endif
- End
- # VV23_pitfighter02_s =========================================================
- Begin VV23_pitfighter02_s
- ; By Nigedo, with adjustments by JOG to prevent incorrect npc-behaviour by enabling/disabling. This script is for each kid that practices dueling with another kid
- ; It must be altered in each case to include the unique ID of the dueling partner - see below
- ; scripts disable/enable while unseen and timing reworked by abot
- Short nolore
- Short knowyou
- Short OnPCHitMe
- Short removeDay
- Short count
- Short extraBounty
- Short combatState
- short weapvar
- short state
- if ( MenuMode )
- return
- endif
- ; Dueling scripting
- If ( chargenstate != -1 )
- return
- endif
- if ( Player->GetWeaponDrawn )
- set weapvar to 1
- elseif ( Player->GetSpellReadied )
- set Weapvar to 1
- else
- set Weapvar to 0
- endif
- If ( GetDistance Player < 256 )
- If ( combatState != 1 )
- If ( weapvar == 1 )
- StopCombat
- Set combatState to 1
- endif
- endif
- Elseif ( GetDistance Player > 1024 )
- If ( combatState != 2 )
- StopCombat
- Set combatState to 2
- Endif
- Else
- If ( combatState != 3 )
- if ( GetTarget Player == 0 )
- StartCombat "VV23_PitFighter1"; **This must be unique ID of dueling partner NPC
- Set combatState to 3
- endif
- Endif
- Endif
- if ( GetTarget Player == 0 )
- Sethealth 87; Prevent dueling from killing NPC
- elseif ( GetTarget Player == 1 )
- return
- endif
- End
- # VV23_quieterhauntedsound ====================================================
- Begin VV23_quieterhauntedsound
- if ( CellChanged == 0 )
- if ( GetSoundPlaying "T_SndEnv_DirenniHaunted" == 0 )
- PlayLoopSound3DVP "T_SndEnv_DirenniHaunted", 0.5, 1.0
- endif
- endif
- end
- # VV23_RiddleDoorScr ==========================================================
- Begin VV23_RiddleDoorScr
- ; note changed the script ID to be unique /abot
- if ( OnActivate )
- if ( GetJournalIndex "vv23_tg_intro" < 17 )
- vv23_riddle_door->ForceGreeting
- elseif ( GetJournalIndex "vv23_tg_intro" >= 17 )
- Activate
- endif
- endif
- End
- # VV23_RiftNotice =============================================================
- begin VV23_RiftNotice
- short done
- if ( done == 1 )
- return
- endif
- if ( OnActivate )
- Journal "VV23_SheoRift" 5
- AddTopic "Open Rift"
- set done to 1
- activate
- endif
- end
- # vv23_RiftSheoOpen_s =========================================================
- Begin vv23_RiftSheoOpen_s
- short doonce
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "vv23_sheorift" == 10 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- if ( GetJournalIndex "vv23_sheorift" == 15 )
- disable
- endif
- end
- # VV23_RopeClimb ==============================================================
- Begin VV23_RopeClimb
- short doonce
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "vv23_codex_chaos" >= 10 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- end
- # vv23_sheoriftsounds =========================================================
- begin vv23_sheoriftsounds
- float timer
- short doOnce
- if ( doOnce == 2 )
- return
- endif
- if ( GetJournalIndex "VV23_SheoRift" == 10 )
- if ( CellChanged == 0 )
- if ( GetSoundPlaying "T_SndObj_DirenniCrystal" == 0 )
- PlayLoopSound3DVP "T_SndObj_DirenniCrystal", 0.5, 1.0
- endif
- endif
- endif
- if ( doOnce == 0 )
- set doOnce to 1
- endif
- if ( doOnce == 1 )
- if ( GetJournalIndex "VV23_SheoRift" == 15 )
- stopsound "T_SndObj_DirenniCrystal"
- disable
- set doOnce to 2
- endif
- endif
- end
- # vv23_SoundAxiomGears_s ======================================================
- begin vv23_SoundAxiomGears_s
- if ( CellChanged == 0 )
- if ( GetSoundPlaying "vv23_AxiomGears" == 0 )
- PlayLoopSound3DVP "vv23_AxiomGears", 1.0, 1.0
- endif
- endif
- end
- # vv23_SpiderScript ===========================================================
- Begin vv23_SpiderScript
- float timer
- short once
- if ( MenuMode )
- return
- endif
- if ( once == 1 )
- return
- endif
- if ( GetJournalIndex "vv23_guilty" < 15 )
- disable
- endif
- if ( once == 0 )
- if ( GetJournalIndex "vv23_guilty" >= 15 )
- enable
- set once to 1
- endif
- endif
- End
- # VV23_stabbajackfloat_s ======================================================
- Begin VV23_stabbajackfloat_s
- DontSaveObject
- if ( MenuMode )
- return
- endif
- if ( GetDistance, Player > 2000 )
- return
- endif
- Rotate z, 5
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- Journal "vv23_codex_chaos" 100
- Journal "vv23_vault" 5
- StartScript VV23_KeeperTeleport_2
- StartScript VV23_AristTeleportVault
- player->additem "vv23_w_TheStabbajack" 1
- PlaySound3D, "Item Weapon Shortblade Up"
- set VV23_StabbajackSpookyOff to 1
- disable
- endif
- end
- end VV23_stabbajackfloat_s
- # VV23_stabbajacksound ========================================================
- begin VV23_stabbajacksound
- float timer
- short doOnce
- if ( doOnce == 2 )
- return
- endif
- if ( timer == 0 )
- set timer to Random 100
- endif
- if ( CellChanged == 0 )
- set timer to timer - GetSecondsPassed
- if ( timer < 1 )
- if ( GetSoundPlaying "T_SndEnv_DirenniHaunted" == 0 )
- PlayLoopSound3DVP "T_SndEnv_DirenniHaunted", 0.5, 1.0
- endif
- endif
- endif
- if ( doOnce == 0 )
- set doOnce to 1
- endif
- if ( doOnce == 1 )
- if ( VV23_StabbajackSpookyOff == 1 )
- stopsound "T_SndEnv_DirenniHaunted"
- set doOnce to 2
- endif
- endif
- end
- # VV23_StoreroomScript ========================================================
- Begin VV23_StoreroomScript
- float timer
- if ( MenuMode )
- return
- endif
- If ( timer < 10 )
- set timer to ( timer + GetSecondsPassed )
- return
- endif
- if ( GetPCCell, "Monastery of Order" == 1 )
- if ( GetDistance "Player" < 750 )
- if ( GetJournalIndex "vv23_guilty" < 5 )
- MessageBox "Is someone out there? Help! I'm trapped in this storeroom!"
- set timer to 0
- else
- return
- endif
- endif
- endif
- End
- # VV23_TGBook =================================================================
- Begin VV23_TGBook
- short doOnce
- short done
- if ( doOnce == 0 )
- disable
- endif
- if ( GetJournalIndex "VV23_TGInanius" > 1 )
- if ( doOnce == 0 )
- set doOnce to 1
- enable
- endif
- endif
- if ( OnActivate )
- if ( done == 0 )
- Journal "VV23_TGInanius" 15
- set done to 1
- player->additem VV23_Misc_BookofMagic 1
- journal VV23_TGInanius 15
- StopSound "T_SndEnv_DirenniHaunted"
- disable
- endif
- endif
- End
- # VV23_towerupperlock =========================================================
- Begin VV23_towerupperlock
- if ( OnActivate )
- if ( GetJournalIndex "vv23_tg_intro" < 17 )
- playsound "lockeddoor"
- return
- elseif ( GetJournalIndex "vv23_tg_intro" >= 17 )
- Activate
- endif
- endif
- End
- # vv23_Trickwall1_s ===========================================================
- begin vv23_Trickwall1_s
- float timer
- short state
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- if ( state == 0 )
- if ( Player->GetItemCount "VV23_vivecpoetry" == 0 )
- playSound3D "vv23_DoorVivec"
- elseif ( Player->GetItemCount "VV23_vivecpoetry" > 0 )
- MessageBox "The Wall of Mastery recognizes your grasp of poetry."
- set state to 1
- set timer to 10 ;edit this to make the wall move longer
- playSound3D "Stone Door Open 1"
- endif
- endif
- endif
- if ( state == 1 )
- set timer to timer - GetSecondsPassed
- if ( timer > 0 )
- Move Z -64 ;edit this to make the wall move faster
- else
- set state to 2
- endif
- endif
- end
- # vv23_Trickwall2_s ===========================================================
- begin vv23_Trickwall2_s
- float timer
- short state
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- if ( state == 0 )
- if ( Player->GetItemCount "AB_IngFlor_Pomegranate01" == 0 )
- playSound3D "vv23_DoorAlma"
- elseif ( Player->GetItemCount "AB_IngFlor_Pomegranate01" > 0 )
- MessageBox "The Wall of Mercy recognizes the pomegranate you carry."
- set state to 1
- set timer to 10 ;edit this to make the wall move longer
- playSound3D "Stone Door Open 1"
- endif
- endif
- endif
- if ( state == 1 )
- set timer to timer - GetSecondsPassed
- if ( timer > 0 )
- Move Z -64 ;edit this to make the wall move faster
- else
- set state to 2
- endif
- endif
- end
- # vv23_Trickwall3_s ===========================================================
- begin vv23_Trickwall3_s
- float timer
- short state
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- if ( state == 0 )
- if ( Player->GetItemCount "VV23_Misc_ChiselGlass" == 0 )
- playSound3D "vv23_DoorSotha"
- elseif ( Player->GetItemCount "VV23_Misc_ChiselGlass" > 0 )
- MessageBox "The Wall of Mystery recognizes the chisel you carry."
- set state to 1
- set timer to 10 ;edit this to make the wall move longer
- playSound3D "Stone Door Open 1"
- endif
- endif
- endif
- if ( state == 1 )
- set timer to timer - GetSecondsPassed
- if ( timer > 0 )
- Move Z -64 ;edit this to make the wall move faster
- else
- set state to 2
- endif
- endif
- end
- # VV23_VaultCombat ============================================================
- Begin VV23_VaultCombat
- short state
- if ( MenuMode )
- return
- endif
- if ( GetJournalIndex "vv23_vault" == 10 )
- if ( state == 0 )
- vv23_keeper->StartCombat Player
- vv23_Cre_Golem_Vault_01->StartCombat Player
- vv23_Cre_Golem_Vault_02->StartCombat vv23_artist
- set state to 1
- elseif ( state == 1 )
- if ( vv23_artist->GetHealth < 100 )
- vv23_artist->SetHealth 100
- endif
- if ( vv23_keeper->GetHealth < 100 )
- vv23_keeper->SetFatigue -5000
- vv23_keeper->SetHealth 30
- if ( GetJournalIndex "vv23_vault" < 20 )
- Journal "vv23_vault" 20
- endif
- endif
- endif
- endif
- if ( GetJournalIndex "vv23_vault" == 15 )
- if ( state == 0 )
- vv23_Cre_Golem_Vault_01->StartCombat vv23_artist
- vv23_Cre_Golem_Vault_02->StartCombat vv23_artist
- set state to 1
- elseif ( state == 1 )
- vv23_artist->SetHealth 100
- MessageBox "The Artist: No, you shall not take me! Farewell, my love, until we meet again."
- StartScript VV23_ArtistTeleport
- if ( GetJournalIndex "vv23_vault" < 25 )
- Journal "vv23_vault" 25
- endif
- endif
- endif
- End
- # vv23_VaultDoor_s ============================================================
- begin vv23_VaultDoor_s
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- if ( Player->GetItemCount "vv23_w_TheStabbajack" < 1 )
- MessageBox "The shield is impenetrable."
- Return
- else
- MessageBox "The shield dissipates when pierced by the chaotic energy of the Fragment of The Wabbajack"
- PlaySound3DVP "alteration area" 1.0 1.0
- Disable
- endif
- endif
- end
- # vv23_VaultDoor_s_02 =========================================================
- begin vv23_VaultDoor_s_02
- if ( MenuMode )
- return
- endif
- if ( OnActivate )
- if ( GetJournalIndex "vv23_vault" < 20 )
- MessageBox "The shield is impenetrable."
- Return
- else
- if ( Player->GetItemCount "vv23_w_TheStabbajack" < 1 )
- MessageBox "The shield is impenetrable."
- Return
- else
- MessageBox "The shield dissipates when pierced by the chaotic energy of the Fragment of The Wabbajack"
- PlaySound3DVP "alteration area" 1.0 1.0
- Disable
- endif
- endif
- endif
- end
- # vv23_VaultDoorExit_s ========================================================
- Begin vv23_VaultDoorExit_s
- Short DoOnce
- if ( OnActivate )
- if ( DoOnce == 0 )
- if ( GetJournalIndex "vv23_vault" == 100 )
- vv23_artist->PositionCell 4094.88, 4089.65, 11650, 90, "Monastery of Order, Keeper's Study"
- Activate
- set DoOnce to 1
- elseif ( GetJournalIndex "vv23_vault" == 150 )
- vv23_keeper->PositionCell 4094.88, 4089.65, 11650, 90, "Monastery of Order, Keeper's Study"
- Activate
- set DoOnce to 1
- endif
- else
- Activate
- endif
- endif
- End
- # VV23_warpexit ===============================================================
- begin VV23_warpexit
- if ( MenuMode )
- return
- endif
- if ( GetDistance player <= 500 )
- PlaySound3DVP "vv23_AxiomTeleport" 1.0 1.0
- Player->setpos z -9312
- endif
- end
- # VV_dwrvcoin05_s =============================================================
- Begin VV_dwrvcoin05_s
- Short State
- if ( MenuMode )
- Return
- endif
- if ( State == 1 )
- if ( GetDisabled )
- SetDelete 1
- set State to 2
- endif
- endif
- if ( OnActivate )
- Player->AddItem "misc_dwrv_coin00" 5
- PlaySound "Item Gold Up"
- Disable
- set State to 1
- endif
- End
- # VV_dwrvcoin10_s =============================================================
- Begin VV_dwrvcoin10_s
- Short State
- if ( MenuMode )
- Return
- endif
- if ( State == 1 )
- if ( GetDisabled )
- SetDelete 1
- set State to 2
- endif
- endif
- if ( OnActivate )
- Player->AddItem "misc_dwrv_coin00" 10
- PlaySound "Item Gold Up"
- Disable
- set State to 1
- endif
- End
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement