Trending Games
Release Countdowns
Florida Man Death Clocks Funko PoP!


The Elder Scrolls III: Morrowind Game of the Year Edition

Bloodmoon dB


336 Results
For SCPT:SCTX

NumberEDIDText
1aeslipScriptBegin aeslipScript float timer short doOnce short index if ( OnDeath == 1 ) if ( AeslipTalk == 0 ) Journal "BM_Draugr" 90 elseif ( AeslipTalk > 0 ) if ( GetJournalIndex BM_Draugr < 80 ) Journal BM_Draugr 90 endif endif endif if ( doOnce > 0 ) return endif if ( GetJournalIndex BM_Draugr >= 40 ) if ( GetJournalIndex BM_Draugr <= 50 ) if ( AeslipTalk == 0 ) if ( GetDistance Player <= 512 ) ForceGreeting endif endif endif endif if ( GetJournalIndex "BM_Draugr" == 80 ) set timer to ( timer + GetSecondsPassed ) if ( timer >= 3 ) ForceGreeting set doOnce to 1 endif endif End aeslipScript
2AirshipJournalScriptBegin AirshipJournalScript short done if ( done == 1 ) return endif if ( GetJournalIndex BM_Airship >= 0 ) if ( GetJournalIndex BM_Airship < 40 ) if ( onactivate == 1 ) Journal "BM_Airship" 5 ShowMap "Hrothmund's Bane" set done to 1 activate endif endif endif if ( GetJournalIndex BM_Airship >= 40 ) if ( onactivate == 1 ) Journal "BM_Airship" 60 ShowMap "Hrothmund's Bane" set done to 1 activate endif endif End AirshipJournalScript
3artoriaScriptBegin artoriaScript short doOnce short gavebooze short nolore if ( OnDeath == 1 ) ;THIS IS TO KEEP HER FROM GREETING IF SHE'S A CORPSE, WHICH IS TACKY set doOnce to -1 if ( luciuschosen >= 0 ) if ( GetJournalIndex BM_Smugglers < 30 ) set luciuschosen to -9 endif endif endif if ( artoriachosen == -9 ) StartCombat Player SetFight 100 ;MessageBox "Setting WANDER" ;AiWander 0 0 0 0 0 0 endif if ( doOnce == 0 ) if ( GetJournalIndex BM_Smugglers == 100 ) if ( artoriachosen == 1 ) if ( GetDistance Player <= 256 ) set artoriachosen to 2 set doOnce to 1 ForceGreeting endif endif endif endif End artoriaScript
4aspect1ScriptBegin aspect1Script float xposi float yposi float zposi float zrotposi short doOnce float timer if ( OnDeath == 1 ) if ( GetJournalIndex BM_WildHunt < 92 ) Journal BM_WildHunt 92 set doOnce to 1 endif endif set xposi to ( GetPos X ) set yposi to ( GetPos Y ) set zposi to ( GetPos Z ) set zrotposi to ( GetAngle Z ) if ( MenuMode == 1 ) return endif if ( doOnce == 1 ) if ( Player->GetItemCount key_hircine3 > 0 ) PlaceItem "BM_wereeffect3" xposi yposi zposi zrotposi set doOnce to 2 endif endif if ( doOnce == 2 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.5 ) Disable set doOnce to 3 endif endif End aspect1Script
5aspect2ScriptBegin aspect2Script float xposi float yposi float zposi float zrotposi short doOnce float timer if ( OnDeath == 1 ) if ( GetJournalIndex BM_WildHunt < 92 ) Journal BM_WildHunt 93 set doOnce to 1 endif endif set xposi to ( GetPos X ) set yposi to ( GetPos Y ) set zposi to ( GetPos Z ) set zrotposi to ( GetAngle Z ) if ( MenuMode == 1 ) return endif if ( doOnce == 1 ) if ( Player->GetItemCount key_hircine3 > 0 ) PlaceItem "BM_wereeffect3" xposi yposi zposi zrotposi set doOnce to 2 endif endif if ( doOnce == 2 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.5 ) Disable set doOnce to 3 endif endif End aspect2Script
6aspect3ScriptBegin aspect3Script float xposi float yposi float zposi float zrotposi short doOnce float timer if ( OnDeath == 1 ) if ( GetJournalIndex BM_WildHunt < 92 ) Journal BM_WildHunt 94 set doOnce to 1 endif endif set xposi to ( GetPos X ) set yposi to ( GetPos Y ) set zposi to ( GetPos Z ) set zrotposi to ( GetAngle Z ) if ( MenuMode == 1 ) return endif if ( doOnce == 1 ) if ( Player->GetItemCount key_hircine3 > 0 ) PlaceItem "BM_wereeffect3" xposi yposi zposi zrotposi set doOnce to 2 endif endif if ( doOnce == 2 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.5 ) Disable set doOnce to 3 endif endif End aspect3Script
7bearheartScriptBegin bearheartScript short doOnce if ( player->GetItemCount BM_bearheart_UNIQUE > 0 ) if ( doOnce == 0 ) Journal BM_BearHunt1 80 set doOnce to 1 endif endif End bearheartScript
8beastbearScriptBegin beastbearScript ;CHECKS RIEKLINGS KILLED, GIVES BEAR TRAVEL PACKAGE, SETS JOURNALS, CHECKS BEAR HEALTH, DEATH short doOnce short followOnce short companion if ( OnDeath == 1 ) if ( GetJournalIndex BM_Beasts < 100 ) Journal BM_Beasts 105 endif endif if ( GetJournalIndex BM_Beasts == 40 ) if ( GetHealth > 800 ) ;THIS IS WHERE TO CHECK IF BEAR IS HEALED Journal BM_Beasts 50 endif endif ;THIS IS THE PART WHERE WE CHECK TO SEE IF PLAYER GOT THE ARROW OUT if ( Player->GetItemCount "BM_Arrow_riekling_uni" > 0 ) if ( GetJournalIndex BM_Beasts < 40 ) Journal BM_Beasts 40 set companion to 0 endif endif if ( riekkilled >= 5 ) if ( GetJournalIndex BM_Beasts < 30 ) Journal BM_Beasts 30 set companion to 1 endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Beasts < 10 ) Disable elseif ( GetJournalIndex BM_Stones >= 100 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Beasts >= 10 ) if ( GetJournalIndex BM_Beasts < 100 ) Enable endif endif endif if ( GetDistance Player <= 512 ) if ( GetJournalIndex BM_Beasts == 10 ) if ( doOnce == 0 ) StartCombat BM_riekling_be_UNIQUE1 set doOnce to 1 Journal BM_Beasts 20 endif endif endif if ( GetJournalIndex BM_Beasts == 50 ) if ( followOnce == 0 ) AiFollow Player 0 0 0 0 0 0 set followOnce to 1 endif endif if ( GetJournalIndex BM_Beasts == 100 ) if ( followOnce == 1 ) AiWander 128 6 0 40 30 20 0 0 0 0 0 0 set followOnce to 2 endif endif End beastbearScript
9beastriekScriptBegin beastriekScript ;ENABLES/DISABLES, STARTS COMBAT, SETS RIEKKILLED VARIABLE short doOnce if ( OnDeath == 1 ) set riekkilled to ( riekkilled + 1 ) endif if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Beasts < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Beasts >= 10 ) Enable endif endif if ( GetDistance Player <= 1500 ) if ( doOnce == 0 ) StartCombat BM_bear_be_UNIQUE set doOnce to 1 endif endif End beastriekScript
10BedDisableBegin BedDisable if (MenuMode == 0) if (OnActivate == 1 ) ShowRestMenu endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_Retribution" >= 100 ) Disable endif endif End BedDisable
11BedEnableBegin BedEnable if (MenuMode == 0) if (OnActivate == 1 ) ShowRestMenu endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_Retribution" < 100 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "BM_Retribution" >= 100 ) Enable endif endif End BedEnable
12BloodmoonMainBegin BloodmoonMain short disablestate short newstate ;by default, enable teleport and levitate set newstate to 0 ;only need to check cells in interiors if ( GetInterior ) if ( GetPCCell "Solstheim, Mortrag Glacier" == 1 ) ;disable teleport and levitate here set newstate to 1 endif endif ;if state should change if ( disablestate != newstate ) if ( newstate == 1 ) DisableTeleporting DisableLevitation elseif ( newstate == 0 ) EnableTeleporting EnableLevitation endif set disablestate to newstate endif End BloodmoonMain
13bloodmoonScriptBegin bloodmoonScript short doOnce if ( GetJournalIndex BM_FrostGiant1 >= 70 ) if ( doOnce == 0 ) TurnMoonRed set doOnce to 1 endif endif if ( GetJournalIndex BM_FrostGiant2 >= 70 ) if ( doOnce == 0 ) TurnMoonRed set doOnce to 1 endif endif if ( doOnce == 1 ) if ( GetJournalIndex BM_WildHunt >= 100 ) TurnMoonWhite set doOnce to 2 endif endif End bloodmoonScript
14BMFrostDaedraScriptBegin BMFrostDaedraScript short doOnce if ( doOnce == 1 ) return endif if ( OnDeath == 1 ) set deaddaedra to ( deaddaedra + 1 ) endif if ( deaddaedra >= 10 ) if ( GetJournalIndex BM_Draugr < 80 ) Journal BM_Draugr 80 set doOnce to 1 endif endif End BMFrostDaedraScript
15BMStartUpScriptBegin BMStartUpScript StartScript wereCheckScript StartScript bloodmoonScript ;to fix Tribunal stuff if ( GetJournalIndex TR_DBAttack < 30 ) StartScript dbFixScript endif ;for Colony disables if ( GetJournalIndex CO_11 < 60 ) if ( ColonyState < 20 ) if ( GratianGuard == 0 ) "Gratian Caerellius_guar"->Disable endif if ( AferGuard == 0 ) "Afer Flaccus_guard"->Disable endif if ( GarnasGuard == 0 ) "Garnas Uvalen_guard"->Disable endif endif endif if ( GetJournalIndex BM_Smugglers < 10 ) "Gaea Artoria"->Disable "Saenus Lusius"->Disable endif if ( GetJournalIndex BM_Bearhunt1 < 10 ) "rolf long-tooth"->Disable "sattir the bold"->Disable "grerid axe-wife"->Disable endif ;for BM_Smugglers if ( GetJournalIndex BM_Smugglers < 10 ) "mus roscius"->Disable "sorian"->Disable "mol gro-shat"->Disable "mazorn gro-gar"->Disable "gualtierus spurius"->Disable endif ;for BM_Trees if ( GetJournalIndex BM_Trees < 100 ) Act_BM_Tree_01->Disable Act_BM_Tree_02->Disable Act_BM_Tree_03->Disable endif ;for BM_WildHunt if ( GetJournalIndex BM_WildHunt < 85 ) bm_hircine_huntaspect->Disable bm_hircine_straspect->Disable bm_hircine_spdaspect->Disable bm_hircine2->Disable endif if ( GetJournalIndex BM_WildHunt < 100 ) bm_ex_iceberg_collapsed->Disable endif ;for BM_Stones if ( GetJournalIndex BM_Stones < 10 ) Act_BM_Wind_parts->Disable Act_BM_Earth_parts->Disable Act_BM_Water_parts->Disable Act_BM_Beast_parts->Disable Act_BM_Sun_parts->Disable Act_BM_Tree_parts->Disable endif ;for BM_Earth Act_BM_steam_01->Disable Act_BM_steam_02->Disable Act_BM_steam_03->Disable Act_BM_steam_04->Disable Act_BM_steam_05->Disable Act_BM_steam_06->Disable ;for BM_Trial if ( GetJournalIndex BM_Trial < 70 ) BM_wolf_caenlorn1->Disable BM_wolf_caenlorn2->Disable BM_wolf_caenlorn3->Disable endif ;for BM_FrostGiant2 if ( GetJournalIndex BM_FrostGiant2 < 10 ) bm_ex_karstaag_dooropen->Disable endif StopScript BMStartUpScript End BMStartUpScript
16bm_bloodskal_creaturesBegin bm_bloodskal_creatures ;enables draugr and skeletons in Bloodskal Barrow short doonce if (doonce==1) return endif if ( GetJournalIndex "BM_Bloodskal01" < 10 ) Disable endif if ( GetJournalIndex "BM_Bloodskal01" == 10 ) set doonce to 1 Enable endif End
17bm_bloodskal_swordBegin bm_bloodskal_sword ;activates the draugr and skeletons when player picks up sword short OnPCAdd short doonce if (doonce==1) return endif if (OnPCAdd == 1) set doonce to 1 Journal BM_Bloodskal01 10 return endif End
18BrandrScriptBegin BrandrScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_WomanScorned >= 30 ) Journal BM_WomanScorned 45 endif endif End
19BrynjolfrScriptbegin BrynjolfrScript short SnowBearCuirass short SnowBearLeftPauldron short SnowBearRightPauldron short SnowBearLeftGauntlet short SnowBearRightGauntlet short SnowBearGreaves short SnowBearBoots short SnowBearHelm short SnowWolfCuirass short SnowWolfLeftPauldron short SnowWolfRightPauldron short SnowWolfLeftGauntlet short SnowWolfRightGauntlet short SnowWolfGreaves short SnowWolfBoots short SnowWolfHelm short currentDay short localdaysPassed short busy Short NoLore short change if ( currentDay != Day ) set currentDay to Day set localdaysPassed to localdaysPassed + 1 endif end BrynjolfrScript
20caenScriptBegin caenScript float posx float posy float posz float poszrot float timer short doOnce if ( OnDeath == 1 ) set caenlornDead to ( caenlornDead + 1 ) endif set posy to ( GetPos y ) set posx to ( GetPos x ) set posz to ( GetPos z ) set poszrot to ( GetAngle z ) if ( GetDeadCount "rigmor halfhand" == 1 ) if ( doOnce == 0 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 3 ) AiWander 0 0 0 0 0 0 PlaceItem "bm_wereeffect2" posx posy posz poszrot set doOnce to 1 set timer to 0 endif endif endif if ( doOnce == 1 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.2 ) Disable endif endif End caenScript
21cariusgoneScriptBegin cariusgoneScript short doOnce if ( doOnce == 0 ) if ( GetJournalIndex BM_Smugglers >= 93 ) if ( GetJournalIndex BM_Smugglers < 100 ) if ( GetDistance Player <=1028 ) Journal BM_Smugglers 100 "falx carius"->Disable if ( luciuschosen > 0 ) "gaea artoria"->Enable elseif ( artoriachosen > 0 ) "saenus lusius"->Enable endif set doOnce to 1 endif endif endif endif End cariusgoneScript
22cariushuntScriptBegin cariushuntScript short doOnce float timer short nolore short playerwolf short AllowWerewolfForceGreeting if ( GetJournalIndex BM_WildHunt < 30 ) return endif if ( OnDeath == 1 ) Journal BM_WildHunt 49 endif if ( GetJournalIndex BM_WildHunt == 30 ) if ( player->IsWerewolf == 0 ) if ( GetDistance Player <= 512 ) if ( doOnce == 0 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.5 ) ForceGreeting set doOnce to 1 endif endif endif elseif ( player->IsWerewolf == 1 ) ;StartCombat Player if ( GetDistance Player <= 512 ) if ( doOnce == 0 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.5 ) set playerwolf to 1 ForceGreeting set doOnce to -1 endif endif endif endif endif if ( doOnce == 1 ) if ( Player->IsWerewolf == 0 ) if ( GetCurrentAiPackage == 3 ) if ( GetDistance active_BM_carius <= 512 ) if ( Player->GetDistance BM_mazegate_01 <= 800 ) if ( GetDistance Player <= 512 ) set cariustalk to 1 AiWander 0 0 0 0 0 0 ForceGreeting endif endif endif endif endif endif End cariushuntScript
23CavernIncarnateDoorBegin CavernIncarnateDoor float timer short state short talking ;run the timer, can only talk after 6 seconds if ( talking == 1 ) set timer to timer + GetSecondsPassed if ( timer > 6 ) set talking to 0 set timer to 0 endif endif if ( OnActivate == 1 ) ;if not on main quest, door cannot open if ( GetJournalIndex A2_6_Incarnate < 15 ) Say "vo\misc\A2-6_cave_closed.mp3", "The door is locked, and will not open. The star is the key." return endif if ( GameHour > 6 ) if ( GameHour < 8 ) ;hour is 6 to 8 AM Say "vo\misc\A2-6_cave_open.mp3" , "In the dawn hour under Azura's Star, the door is opened." set state to 10 endif endif if ( GameHour > 18 ) if ( GameHour < 20 ) ; hour is 6 to 8 PM Say "vo\misc\A2-6_cave_open.mp3" , "In the dawn hour under Azura's Star, the door is opened." set state to 10 endif endif ;gets here if the hour is wrong if ( state != 10 ) if ( talking = 0 ) Say "vo\misc\A2-6_cave_closed.mp3", "The door is locked, and will not open. The star is the key." set talking to 1 endif endif endif if ( state == 10 ) ;need to make them wait if the door needs to open so they hear the voice Disableplayercontrols set timer to timer + getsecondspassed if ( timer > 5 ) set state to 0 set timer to 0 enableplayercontrols Activate endif endif End
24ColonyAenarBegin ColonyAenar ;controls timing and variables for Stalhrim armor crafting ;also contains Journal update for killing all three nords in quest CO_8a short OnPCHitMe short scuirass short sgreaves short slpauld short srpauld short slbracer short srbracer short sboots short shelm short busy short currentday short localdayspassed short nolore if ( busy == 1 ) if ( currentday != day ) set currentday to day set localdayspassed to ( localdayspassed + 1 ) endif endif if ( OnPCHitMe == 1 ) "Hidar"->SetFight 100 "Hidar"->StartCombat Player "Graring"->SetFight 100 "Graring"->StartCombat Player endif End ColonyAenar
25ColonyAferBegin ColonyAfer short nolore if ( AferGuard == 0 ) if ( GetJournalIndex "CO_5" < 80 ) if ( GetDisabled == 0 ) Disable endif elseif ( GetJournalIndex "CO_5" >= 80 ) if ( GetDisabled == 1 ) Enable endif endif endif End
26ColonyAldamBegin ColonyAldam short enabled short doonce short torch short factorestate short nolore short aldammove short initialized float timer if ( enabled == 0 ) if ( GetJournalIndex "CO_5" < 70 ) if ( GetDisabled == 0 ) Disable endif elseif ( GetJournalIndex "CO_5" >= 70 ) if ( GetDisabled == 1 ) Enable set enabled to 1 endif endif endif if ( MenuMode == 1 ) return endif if ( initialized == 0 ) if ( GetJournalIndex CO_6 == 40 ) if ( GetDistance "Uryn Maren" <= 1200 ) set initialized to 1 endif endif endif if ( initialized == 1 ) if ( timer >= 10 ) set aldammove to 1 set initialized to 2 else set timer to ( timer + GetSecondsPassed ) endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_6a" == 40 ) if ( GetItemCount "potion_cyro_whiskey_01" >= 1 ) set aldammove to 1 set doonce to 1 endif endif endif if ( aldammove == 1 ) AITravel 4477.963 3933.645 12776.582 0 set aldammove to 2 elseif ( aldammove == 2 ) if ( GetAIPackageDone == 1 ) set aldammove to 3 endif elseif ( aldammove == 3 ) AITravel 4470.814 4736.078 12776.582 0 set aldammove to 4 elseif ( aldammove == 4 ) if ( GetAIPackageDone == 1 ) set aldammove to 5 endif elseif ( aldammove == 5 ) AITravel 5626.625 4726.434 12776.582 0 set aldammove to 6 elseif ( aldammove == 6 ) if ( GetAIPackageDone == 1 ) set aldammove to 7 AiWander 0 0 0 0 0 0 endif endif if ( GetJournalIndex "CO_Estate" == 30 ) if ( GetDistance "Colony_torch_1" <= 1000 ) set torch to 1 elseif ( GetDistance "Colony_torch_2" <= 1000 ) set torch to 2 elseif ( GetDistance "Colony_torch_3" <= 1000 ) set torch to 3 else set torch to 0 endif endif End ColonyAldam
27ColonyAlfbrandBegin ColonyAlfbrand short nolore short alfbrandequip short doonce short attackinit short OnPCHitMe if ( "toralf".nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( OnPCHitMe == 1 ) set "toralf".nordhit to 1 "Toralf"->Forcegreeting endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_13a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_13a" == 10 ) if ( GameHour > 20 ) if ( GameHour < 22 ) Enable endif endif endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_13a" == 30 ) SetFight 100 StartCombat Player set doonce to 1 endif endif if ( GetJournalIndex "CO_13a" == 30 ) if ( OnDeath == 1 ) if ( GetDeadCount "Audmund" == 1 ) if ( GetDeadCount "Bryngrim" == 1 ) if ( GetDeadCount "Ormvard" == 1 ) if ( GetDeadCount "Toralf" == 1 ) if ( GetDeadCount "Valgeir" == 1 ) Journal CO_13a 40 endif endif endif endif endif endif endif End
28ColonyAproniaBegin ColonyApronia short nolore short following if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_3" < 30 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_3" >= 30 ) Enable endif endif if ( following == 0 ) if ( GetCurrentAIPackage == 3 ) set following to 1 endif endif if ( following == 1 ) if ( GetDistance "Falco Galenus" <= 1024 ) AiWander 512 0 0 40 20 20 0 0 0 0 0 0 Journal CO_3b 20 set following to 2 ForceGreeting endif endif End ColonyApronia
29ColonyAssassinBegin ColonyAssassin ;controls NPC actions and Journal Updates for quest CO_12a ;controls NPC actions, timer, and Journal Updates for quest CO_12 short falcoguard short initialized float timer if ( MenuMode == 1 ) return endif if ( initialized == 0 ) if ( GetJournalIndex "CO_12a" >= 10 ) "Falco Galenus"->Position -199788.719 160287.656 995.345 90 "Falco Galenus"->AiWander 0 0 0 0 0 0 if ( GetDeadCount "Afer Flaccus_guard" < 1 ) if ( aferguard == 1 ) "Afer Flaccus_guard"->Position -199694.875 160428.859 929.144 270 "Afer Flaccus_guard"->AIWander 0 0 0 0 0 0 endif endif if ( GetDeadCount "Garnas Uvalen_guard" < 1 ) if ( garnasguard == 1 ) "Garnas Uvalen_guard"->Position -199844.016 160130.328 929.144 270 "Garnas Uvalen_guard"->AiWander 0 0 0 0 0 0 endif endif if ( GetDeadCount "Gratian Caerellius_guar" < 1 ) if ( gratianguard == 1 ) "Gratian Caerellius_guar"->AiWander 0 0 0 0 0 0 endif endif if ( GetDeadCount "Gidar Verothan" < 1 ) "Gidar Verothan"->PositionCell -195.465 -9.815 137.121 0 "Raven Rock, Gidar Verothan's House" endif if ( GetDeadCount "Sabinus Oranius" < 1 ) "Sabinus Oranius"->PositionCell -91.973 -66.313 164.140 0 "Raven Rock, Sabinus Oranius' House" endif if ( GetDeadCount "Gamin Girith" < 1 ) "Gamin Girith"->PositionCell 327.068 -25 135.6 0 "Raven Rock, Mine Entrance" endif if ( GetDeadCount "Apronia Alfena" < 1 ) "Apronia Alfena"->PositionCell 846.221 486.647 179.991 0 "Raven Rock, Bar" endif set initialized to 1 endif endif if ( initialized == 1 ) if ( "ac_furn_rug_colony2"->GetStandingPC == 1 ) if ( player->GetWeaponDrawn == 1 ) if ( player->HasItemEquipped "steel longbow_carnius" == 1 ) Journal CO_12a 20 set initialized to 2 endif endif endif endif if ( initialized == 2 ) "Falco Galenus"->setagility 5 "Falco Galenus"->setwillpower 40 "Baslod"->Enable "Baslod"->StartCombat "Falco Galenus" set initialized to 3 endif if ( GetJournalIndex "CO_12a" == 20 ) if ( "Falco Galenus"->GetTarget "Baslod" == 1 ) "Falco Galenus"->StopCombat "Afer Flaccus_guard"->StopCombat "Garnas Uvalen_guard"->StopCombat "Gratian Caerellius_guar"->StopCombat "Falco Galenus"->SetFight 0 Journal CO_12a 30 endif endif if ( GetJournalIndex "CO_12a" == 30 ) if ( initialized == 3 ) "Baslod"->StopCombat "Baslod"->ForceRun "Baslod"->AiTravel -197897.141 160923.078 952.194 0 set initialized to 4 endif endif if ( GetJournalIndex "CO_12a" == 30 ) if ( initialized >= 3 ) if ( "Falco Galenus"->GetDistance Player < 512 ) Journal CO_12a 150 endif endif endif if ( initialized == 4 ) if ( timer < 2 ) set timer to ( timer + GetSecondsPassed ) else set initialized to 6 endif endif if ( initialized == 6 ) "Garnas Uvalen_guard"->StartCombat "Baslod" "Afer Flaccus_guard"->StartCombat "Baslod" "Gratian Caerellius_guar"->StartCombat "Baslod" set initialized to 7 endif if ( initialized == 7 ) if ( "Baslod"->OnDeath == 1 ) "Afer Flaccus_guard"->AiTravel -199694.875 160428.859 929.144 0 "Garnas Uvalen_guard"->AiTravel -199844.016 160130.328 929.144 0 set initialized to 8 endif endif if ( initialized == 8 ) if ( "Afer Flaccus_guard"->GetAiPackageDone == 1 ) if ( GetJournalIndex "CO_12a" < 40 ) Journal CO_12a 100 set initialized to 9 StopScript ColonyAssassin endif endif endif if ( GetJournalIndex "CO_12a" == 40 ) StopScript ColonyAssassin endif ;The following covers quest CO_12 if ( falcoguard == 0 ) if ( GetJournalIndex "CO_12" >= 10 ) if ( timer < 10 ) set timer to ( timer + GetSecondsPassed ) else "Baslod"->Enable "Baslod"->additem "bonemold long bow" 1 "Baslod"->additem "dire viperarrow" 5 "Baslod"->StartCombat "Falco Galenus" set timer to 0 set falcoguard to 1 endif endif endif if ( GetJournalIndex "CO_12" == 10 ) if ( "Falco Galenus"->GetTarget "Baslod" == 1 ) "Falco Galenus"->StopCombat "Afer Flaccus_guard"->StopCombat "Garnas Uvalen_guard"->StopCombat "Gratian Caerellius_guar"->StopCombat "Falco Galenus"->SetFight 0 Journal CO_12 20 elseif ( timer > 3 ) if ( falcoguard == 1 ) Journal CO_12 20 set timer to 0 endif else set timer to ( timer + GetSecondsPassed ) endif endif if ( GetJournalIndex "CO_12" == 20 ) if ( falcoguard == 1 ) "Baslod"->StopCombat "Baslod"->ForceRun "Baslod"->AiTravel -197936.141 161803.359 952.194 0 set falcoguard to 2 endif endif if ( falcoguard == 2 ) if ( timer < 2 ) set timer to ( timer + GetSecondsPassed ) else set falcoguard to 3 endif elseif ( falcoguard == 3 ) "Garnas Uvalen_guard"->StartCombat "Baslod" "Afer Flaccus_guard"->StartCombat "Baslod" "Gratian Caerellius_guar"->StartCombat "Baslod" set falcoguard to 4 elseif ( falcoguard == 4 ) "Capiton Popillius"->Enable "Capiton Popillius"->StartCombat "Falco Galenus" "Cimber Valerius"->Enable "Cimber Valerius"->StartCombat "Falco Galenus" set falcoguard to 5 endif if ( GetJournalIndex "CO_12" >= 20 ) if ( falcoguard >= 4 ) if ( "Baslod"->OnDeath == 1 ) set "Falco Galenus".guarded to 10 "Garnas Uvalen_guard"->AiWander 0 0 0 0 0 0 "Afer Flaccus_guard"->AiWander 0 0 0 0 0 0 "Gratian Caerellius_guar"->AiWander 0 0 0 0 0 0 endif endif endif if ( falcoguard == 5 ) if ( GetDeadCount "Capiton Popillius" == 1 ) if ( GetDeadCount "Cimber Valerius" == 1 ) Journal CO_12 100 set falcoguard to 6 StopScript ColonyAssassin endif endif endif End
30ColonyAssassinItemsBegin ColonyAssassinItems ;Controls enabling/disabling of items and NPC needed for quest CO_12/CO_12a if ( GetJournalIndex "CO_12" < 10 ) if ( GetDisabled "Cimber Valerius" == 0 ) "Cimber Valerius"->Disable "Capiton Popillius"->Disable endif endif if ( GetJournalIndex "CO_12a" < 10 ) if ( "steel arrow_carnius"->GetDisabled == 0 ) "steel arrow_carnius"->Disable "steel longbow_carnius"->Disable "sc_hiddenkiller"->Disable "Baslod"->Disable endif endif if ( GetJournalIndex "CO_12a" >= 10 ) if ( "steel arrow_carnius"->GetDisabled == 1 ) "steel arrow_carnius"->Enable "steel longbow_carnius"->Enable "sc_hiddenkiller"->Enable endif endif if ( GetJournalIndex "CO_12a" == 20 ) if ( "Baslod"->GetDisabled == 1 ) "Baslod"->Enable endif endif StopScript ColonyAssassinItems End
31ColonyAudmundBegin ColonyAudmund short nolore short audmundequip short doonce short attackinit short OnPCHitMe if ( "toralf".nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( OnPCHitMe == 1 ) set "toralf".nordhit to 1 "Toralf"->Forcegreeting endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_13a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_13a" == 10 ) if ( GameHour > 20 ) if ( GameHour < 22 ) Enable endif endif endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_13a" == 30 ) SetFight 100 StartCombat Player set doonce to 1 endif endif if ( GetJournalIndex "CO_13a" == 30 ) if ( OnDeath == 1 ) if ( GetDeadCount "Toralf" == 1 ) if ( GetDeadCount "Bryngrim" == 1 ) if ( GetDeadCount "Ormvard" == 1 ) if ( GetDeadCount "Alfbrand" == 1 ) if ( GetDeadCount "Valgeir" == 1 ) Journal CO_13a 40 endif endif endif endif endif endif endif End
32ColonyBaroBegin ColonyBaro short nolore short weaponout short saberout short questdone if ( GetJournalIndex CO_5 >= 70 ) if ( GetJournalIndex CO_5 < 200 ) set questdone to 1 endif endif if ( Ondeath == 1 ) Journal CO_5 200 endif if ( MenuMode == 1 ) return endif if ( GetDisabled == 0 ) if ( ColonyService < 5 ) Disable endif endif if ( questdone == 0 ) if ( GetDisabled == 1 ) if ( ColonyService >= 5 ) Enable endif endif endif if ( questdone == 1 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetDistance Player < 512 ) if ( player->GetWeaponDrawn == 1 ) if ( player->HasItemEquipped "steel saber_elberoth" == 1 ) set saberout to 1 else if ( player->GetWeaponType == -1 ) set weaponout to 1 else set weaponout to 2 endif endif else set saberout to 0 endif endif End ColonyBaro
33ColonyBaroShipBegin ColonyBaroShip if ( "Baro Egnatius"->GetDisabled == 1 ) if ( GetDisabled == 0 ) Disable endif elseif ( "Baro Egnatius"->GetDisabled == 0 ) if ( GetDisabled == 1 ) Enable endif endif End
34ColonyBryngrimBegin ColonyBryngrim short attackinit short nolore short bryngrimequip short doonce short OnPCHitMe if ( "toralf".nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( OnPCHitMe == 1 ) set "toralf".nordhit to 1 "Toralf"->Forcegreeting endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_13a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_13a" == 10 ) if ( GameHour > 20 ) if ( GameHour < 22 ) Enable endif endif endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_13a" == 30 ) SetFight 100 StartCombat Player set doonce to 1 endif endif if ( GetJournalIndex "CO_13a" == 30 ) if ( OnDeath == 1 ) if ( GetDeadCount "Audmund" == 1 ) if ( GetDeadCount "Toralf" == 1 ) if ( GetDeadCount "Ormvard" == 1 ) if ( GetDeadCount "Alfbrand" == 1 ) if ( GetDeadCount "Valgeir" == 1 ) Journal CO_13a 40 endif endif endif endif endif endif endif End
35ColonyCarniusBegin ColonyCarnius short nordhit short failedfirst short Armorwarning short weaponwarning short PCHasStalhrim short Stalhrimgiven short shipwreck short nolore if ( PCHasStalhrim == 1 ) set Stalhrimgiven to ( Stalhrimgiven + 1 ) set PCHasStalhrim to 0 endif if ( nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( "Toralf".nordhit == 1 ) if ( GetDeadCount "Toralf" > 0 ) set nordhit to 1 endif endif endif endif if ( OnDeath == 1 ) if ( GetJournalIndex "CO_13a" == 40 ) Journal CO_13a 50 elseif ( GetJournalIndex "CO_13" == 40 ) Journal CO_13 60 endif endif End ColonyCarnius
36ColonyChestMarynBegin ColonyChestMaryn ;controls chest for quests CO_6/CO_6a ;quest CO_6 - update journal when chest is opened and found empty ;quest CO_6a - update journal when ore has been removed from chest short enabled short doonce if ( enabled == 0 ) if ( GetJournalIndex "CO_6" < 10 ) if ( GetDisabled == 0 ) Disable endif elseif ( GetJournalIndex "CO_6" >= 10 ) if ( GetDisabled == 1 ) Enable set enabled to 1 endif endif endif if ( enabled == 0 ) if ( GetJournalIndex "CO_6a" >= 10 ) if ( GetDisabled == 1 ) Enable set enabled to 1 endif endif endif if ( OnActivate == 1 ) if ( GetJournalIndex "CO_6" == 20 ) Journal CO_6 30 Activate else Activate endif endif if ( GetJournalIndex "CO_6a" >= 10 ) if ( doonce == 0 ) additem "ingred_raw_ebony_01" 5 set doonce to 1 elseif ( doonce == 1 ) if ( "Com_chest_02_maryn"->GetItemCount "ingred_raw_ebony_01" == 0 ) Journal CO_6a 20 set doonce to 2 endif endif endif End ColonyChestMaryn
37ColonyConstansBegin ColonyConstans short nolore short enabled short rugtrap if ( enabled == 0 ) if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_9" < 10 ) Disable endif endif endif if ( enabled == 0 ) if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_9" >= 10 ) Enable set enabled to 1 endif endif endif if ( enabled == 0 ) if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_12a" >= 40 ) Enable set enabled to 1 endif endif endif End ColonyConstans
38ColonyCoventinaBegin ColonyCoventina short nolore short doonce if ( GetJournalIndex "CO_8" < 10 ) If ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_8" == 10 ) if ( GetDisabled == 1 ) Enable endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_8" == 10 ) StartCombat "Graring" set doonce to 1 endif elseif ( doonce == 1 ) if ( GetDeadCount "Graring" == 1 ) StartCombat "aenar" set doonce to 2 endif elseif ( doonce == 2 ) if ( GetDeadCount "Aenar" == 1 ) StartCombat "hidar" set doonce to 3 endif endif if ( OnDeath == 1 ) if ( GetDeadCount "Graring" == 0 ) Journal CO_8 20 endif endif End ColonyConventina
39ColonyDockBegin ColonyDock if ( ColonyService < 5 ) if ( GetDisabled == 0 ) Disable endif elseif ( ColonyService >= 5 ) if ( GetDisabled == 1 ) Enable endif endif End
40ColonyDraloraBegin ColonyDralora ; controls enabling of NPC for quest CO_7, and initial force dialogue short draltalked short nolore if ( ColonyState < 10 ) if ( GetDisabled == 0 ) Disable endif elseif ( ColonyState >= 10 ) if ( GetDisabled == 1 ) Enable endif endif if ( draltalked == 0 ) if ( GetJournalIndex "CO_7" >= 10 ) if ( GetJournalIndex "CO_7" < 50 ) if ( GetDistance "Player" <= 512 ) ForceGreeting set draltalked to 1 endif endif endif endif End ColonyDralora
41ColonyElberothBegin ColonyElberoth if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_3" < 30 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_3" >= 30 ) Enable endif endif End ColonyElberoth
42ColonyEquipBagBegin ColonyEquipBag ;IF IT'S NOT TIME FOR QUEST YET, DISABLE BAG if ( GetJournalIndex "CO_12a" < 50 ) if ( GetDisabled == 0 ) Disable endif endif ;IF VARIABLES ARE SET FOR START OF QUEST, ENABLE BAG if ( GetJournalIndex "CO_12a" >= 50 ) if ( ColonyState >= 21 ) if ( GetDisabled == 1 ) Enable endif endif endif End
43ColonyEstateTimerBegin ColonyEstateTimer ;controls updates for ColonyState var. relating to values for Factor's Estate Construction short done short currentday short dayspassed float timer if ( done == 0 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed < 2 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed >= 2 ) set dayspassed to 0 set done to 1 endif elseif ( done == 1 ) if ( GetPCCell "Raven Rock" == 0 ) if ( "Aldam Berendus".factorestate == 1 ) set ColonyState to 31 set done to 2 endif if ( "Aldam Berendus".factorestate == 2 ) set ColonyState to 32 set done to 2 endif if ( "Aldam Berendus".factorestate == 3 ) set ColonyState to 33 set done to 2 endif endif elseif ( done == 2 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed < 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed >= 3 ) set dayspassed to 0 set done to 3 endif elseif ( done == 3 ) if ( GetPCCell "Raven Rock" == 0 ) if ( ColonyState == 31 ) set ColonyState to 34 Journal CO_Estate 50 set done to 4 StopScript ColonyEstateTimer elseif ( ColonyState == 32 ) set ColonyState to 35 Journal CO_Estate 50 set done to 4 StopScript ColonyEstateTimer elseif ( ColonyState == 33 ) set ColonyState to 36 Journal CO_Estate 50 set done to 4 StopScript ColonyEstateTimer endif endif endif End ColonyEstateTimer
44ColonyFactor1_DBegin ColonyFactor1_D if ( GetDisabled == 0 ) if ( ColonyState == 31 ) Disable elseif ( ColonyState == 34 ) Disable endif endif End
45ColonyFactor1_FinalBegin ColonyFactor1_Final if ( GetDisabled == 0 ) if ( ColonyState < 34 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 34 ) Enable endif endif if ( GetDisabled == 0 ) if ( ColonyState > 34 ) Disable endif endif End
46ColonyFactor1_MidBegin ColonyFactor1_Mid if ( GetDisabled == 0 ) if ( ColonyState < 31 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 31 ) Enable endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 32 ) Disable endif endif End
47ColonyFactor2_DBegin ColonyFactor2_D if ( GetDisabled == 0 ) if ( ColonyState == 32 ) Disable elseif ( ColonyState == 35 ) Disable endif endif End
48ColonyFactor2_FinalBegin ColonyFactor2_Final if ( GetDisabled == 0 ) if ( ColonyState < 35 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 35 ) Enable endif endif if ( GetDisabled == 0 ) if ( ColonyState > 35 ) Disable endif endif End
49ColonyFactor2_MidBegin ColonyFactor2_Mid if ( GetDisabled == 0 ) if ( ColonyState < 32 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 32 ) Enable endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 33 ) Disable endif endif End
50ColonyFactor3_DBegin ColonyFactor3_D if ( GetDisabled == 0 ) if ( ColonyState >= 33 ) Disable elseif ( ColonyState == 36 ) Disable endif endif End
51ColonyFactor3_FinalBegin ColonyFactor3_Final if ( GetDisabled == 0 ) if ( ColonyState < 36 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 36 ) Enable endif endif End
52ColonyFactor3_MidBegin ColonyFactor3_Mid if ( GetDisabled == 0 ) if ( ColonyState < 33 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 33 ) Enable endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 34 ) Disable endif endif End
53ColonyFalcoBegin ColonyFalco short nolore short picks short guarded short service short shipwreck float falcotimer if ( MenuMode == 1 ) return endif if ( OnDeath == 1 ) if ( GetJournalIndex "CO_12" >= 10 ) if ( GetJournalIndex "CO_12" < 100 ) Journal CO_12 200 endif endif endif if ( GetJournalIndex "CO_12a" >=10 ) ; if ( GetDetected "Player" == 0 ) if ( geteffect sEffectPoison == 1 ) if ( GetEffect sEffectBlind == 1 ) sethealth 0 Journal CO_12a 40 endif endif ; elseif ( GetDetected "Player" == 1 ) ; Journal CO_12a 150 ; endif endif if ( guarded == 0 ) if ( GetJournalIndex "CO_12" == 10 ) if ( GetDistance "Player" > 512 ) set guarded to 1 endif endif elseif ( guarded == 1 ) ForceGreeting set guarded to 2 elseif ( guarded == 2 ) if ( falcotimer < 10 ) set timer to ( falcotimer + GetSecondsPassed ) else set guarded to 0 endif endif if ( guarded < 10 ) if ( GetJournalIndex "CO_12" >= 20 ) if ( GetJournalIndex "CO_12" < 100 ) if ( GetDistance "Player" > 512 ) set guarded to 10 ForceGreeting endif endif endif elseif ( guarded == 10 ) if ( GetDistance "Player" <= 512 ) set guarded to 9 endif endif End ColonyFalco
54ColonyGarnasBegin ColonyGarnas short nolore if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_10" < 90 ) Disable endif endif if ( GarnasGuard == 0 ) if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_10" >= 90 ) if ( GetJournalIndex "CO_11" < 60 ) Enable endif endif endif endif End
55ColonyGraringBegin ColonyGraring short nolore short doonce short target short OnPCHitMe if ( doonce == 0 ) if ( GetJournalIndex "CO_8" == 10 ) if ( GetDisabled "Coventina Celata" == 0 ) StartCombat "Coventina Celata" set doonce to 1 endif endif endif if ( GetHealth < 1 ) if ( GetTarget "Coventina Celata" == 1 ) set target to 1 endif endif if ( GetJournalIndex "CO_8" >= 10 ) if ( GetJournalIndex "CO_8" < 50 ) if ( OnDeath == 1 ) if ( target == 1 ) Journal CO_8 100 else Journal CO_8 150 endif endif endif endif if ( OnPCHitMe == 1 ) "Hidar"->SetFight 100 "Hidar"->StartCombat Player "Aenar"->SetFight 100 "Aenar"->StartCombat Player endif End ColonyGraring
56ColonyGratianBegin ColonyGratian short nolore if ( GratianGuard == 0 ) if ( GetJournalIndex "CO_5" < 70 ) if ( GetDisabled == 0 ) Disable endif elseif ( GetJournalIndex "CO_5" >= 70 ) if ( GetDisabled == 1 ) Enable endif endif endif End
57ColonyGuardsBegin ColonyGuards short doonce if ( doonce == 0 ) if ( GetJournalIndex "CO_11" >= 60 ) if ( ColonyState == 20 ) if aferguard == 1 "Afer Flaccus"->Disable "Afer Flaccus_guard"->Enable endif if gratianguard == 1 "Gratian Caerellius"->Disable "Gratian Caerellius_guar"->Enable endif if garnasguard == 1 "Garnas Uvalen"->Disable "Garnas Uvalen_guard"->Enable endif set doonce to 1 StopScript ColonyGuards endif endif endif End
58ColonyHidarBegin ColonyHidar ;controls timing and variables for Stalhrim weapon smithing ;also contains Journal update for killing all three nords in quest CO_8a short OnPCHitMe short s_axe short s_waraxe short s_dagger short s_sword short s_mace short localdayspassed short currentday short busy short nolore if ( busy == 1 ) if ( currentday != day ) set currentday to day set localdayspassed to ( localdayspassed + 1 ) endif endif if ( OnPCHitMe == 1 ) "Graring"->SetFight 100 "Graring"->StartCombat Player "Aenar"->SetFight 100 "Aenar"->StartCombat Player endif End ColonyHidar
59ColonyHroldar_BBegin ColonyHroldar_B short OnPCHitMe short doonce short hroldarmove short nolore if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_9a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_9a" == 10 ) Enable endif endif if ( OnDeath == 1 ) if ( GetJournalIndex "CO_9a" >= 70 ) Journal CO_9a 80 endif endif if ( hroldarmove == 0 ) if ( GetJournalIndex "CO_9a" == 20 ) set hroldarmove to 1 endif elseif ( hroldarmove == 1 ) AIEscort Player 0 -175218.828 144654.516 1005.164 0 set hroldarmove to 2 elseif ( hroldarmove == 2 ) if ( GetAiPackageDone == 1 ) set hroldarmove to 3 endif elseif ( hroldarmove == 3 ) AiEscort Player 0 -178127.469 146951.734 1025.390 0 set hroldarmove to 4 elseif ( hroldarmove == 4 ) if ( GetAIPackageDone == 1 ) set hroldarmove to 5 endif elseif ( Hroldarmove == 5 ) AiWander 0 0 0 0 0 0 0 0 0 Journal CO_9a 30 set hroldarmove to 10 forcegreeting endif if ( GetJournalIndex "CO_9a" >= 10 ) if ( OnPCHitMe == 1 ) SetFight 100 StartCombat Player endif endif End
60ColonyMineBoulder1Begin ColonyMineBoulder1 if ( ColonySide == 1 ) if ( GetJournalIndex "CO_8" >= 10 ) if ( GetDisabled == 0 ) Disable endif endif elseif ( ColonySide == 2 ) if ( GetJournalIndex "CO_8a" >= 10 ) if ( GetDisabled == 0 ) Disable endif endif endif End ColonyMineBoulder1
61ColonyMineBoulder2Begin ColonyMineBoulder2 ;Controls enabling/disabling of blocking boulders used in quest CO_10 if ( GetJournalIndex "CO_10" >= 10 ) if ( GetDisabled == 0 ) Disable endif endif End ColonyMineBoulder2
62ColonyMineDoorBegin ColonyMineDoor ;enables door and controls entry to mine during quest CO_2 if ( GetDisabled == 0 ) if ( ColonyState < 1 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 2 ) Enable endif endif if ( GetJournalIndex CO_2 >= 10 ) if ( GetJournalIndex CO_2 < 50 ) if ( GetDistance "Hroldar the Strange" <= 256 ) If ( OnActivate == 1 ) MessageBox "The door cannot be opened. Hroldar is blocking the way." endif endif endif endif if ( GetJournalIndex CO_2 >= 50 ) if ( OnActivate == 1 ) Activate endif endif End ColonyDoorMine
63ColonyNordAttackBegin ColonyNordAttack short nolore if ( GetDisabled == 0 ) if ( ColonyState < 22 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 22 ) if ( ColonySide == 1 ) Enable endif endif endif if ( OnDeath == 1 ) set ColonyNord to ( ColonyNord + 1 ) endif End
64ColonyNordAxeBegin ColonyNordAxe if ( GetJournalIndex "CO_8a" == 10 ) if ( GetDeadCount "Graring" >= 1 ) if ( GetDeadCount "Hidar" >= 1 ) if ( GetDeadCount "Aenar" >= 1 ) if ( player->GetItemCount "BM nordic pick" == 1 ) Journal CO_8a 20 StopScript ColonyNordAxe endif endif endif endif endif End
65ColonyNordEquipBegin ColonyNordEquip if ( GetJournalIndex "CO_13a" == 20 ) if ( "ormvard".ormvardequip == 1 ) if ( "Bryngrim".bryngrimequip == 1 ) if ( "audmund".audmundequip == 1 ) if ( "alfbrand".alfbrandequip == 1 ) if ( "valgeir".valgeirequip == 1 ) Journal CO_13a 25 endif endif endif endif endif endif End
66ColonyOrmvardBegin ColonyOrmvard short attackinit short nolore short ormvardequip short doonce short OnPCHitMe if ( "toralf".nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( OnPCHitMe == 1 ) set "toralf".nordhit to 1 "Toralf"->Forcegreeting endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_13a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_13a" == 10 ) if ( GameHour > 20 ) if ( GameHour < 22 ) Enable endif endif endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_13a" == 30 ) SetFight 100 StartCombat Player set doonce to 1 endif endif if ( GetJournalIndex "CO_13a" == 30 ) if ( OnDeath == 1 ) if ( GetDeadCount "Audmund" == 1 ) if ( GetDeadCount "Bryngrim" == 1 ) if ( GetDeadCount "Ormvard" == 1 ) if ( GetDeadCount "Alfbrand" == 1 ) if ( GetDeadCount "Valgeir" == 1 ) Journal CO_13a 40 endif endif endif endif endif endif endif End
67ColonyReportTimerBegin ColonyReportTimer ; handles the timing for quest CO_9 - returns journal entry failing quest after 10 minutes pass ; also randomly determines location of NPC for finishing quest and handles returning him to original location if quest is failed float starthour float currenthour float timepassed float timer short initialized if ( initialized == 0 ) if ( GetJournalIndex "CO_9" >= 10 ) set starthour to GameHour if ( starthour < 10 ) set starthour to ( starthour + 24 ) endif set Carniusloc to Random 3 if ( Carniusloc == 0 ) "Carnius Magius"->PositionCell -182810.047 170592.203 999.986 0 "Solstheim, Brodir Grove" elseif ( Carniusloc == 1 ) "Carnius Magius"->PositionCell -215704.859 178240.875 455.276 90 "Solstheim, Hirstaang Forest" elseif ( Carniusloc == 2 ) "Carnius Magius"->PositionCell -151707.906 164880.609 205.601 0 "Solstheim, Isinfier Plains" endif set initialized to 1 endif elseif ( initialized == 1 ) set currenthour to GameHour if ( currenthour < 10 ) set currenthour to ( currenthour + 24 ) endif set timepassed to ( currenthour - starthour ) if ( timepassed > 5 ) if ( GetJournalIndex "CO_9" < 50 ) Journal CO_9 100 set initialized to 2 endif endif set timer to ( timer + GetSecondsPassed ) if ( timer >= 600 ) if ( GetJournalIndex "CO_9" < 50 ) Journal CO_9 100 set initialized to 2 endif endif elseif ( initialized == 2 ) if ( GetJournalIndex "CO_9" == 110 ) if ( GetPCCell "Fort Frostmoth" == 0 ) "Carnius Magius"->PositionCell 3514.625 4643.781 16470.652 0 "Fort Frostmoth, Imperial Cult Shrine" StopScript ColonyReportTimer endif endif endif if ( GetJournalIndex "CO_9" == 60 ) if ( GetPCCell "Fort Frostmoth" == 0 ) "Carnius Magius"->PositionCell 3514.625 4643.781 16470.652 0 "Fort Frostmoth, Imperial Cult Shrine" set initialized to 2 StopScript ColonyReportTimer endif endif End ColonyReportTimer
68ColonyRoot1Begin ColonyRoot1 short doonce if ( GetJournalIndex "CO_10" == 120 ) if ( GetDisabled == 0 ) Disable endif endif End
69ColonyRoot1aBegin ColonyRoot1a short doonce if ( doonce == 0 ) if ( GetJournalIndex "CO_10" >= 40 ) if ( GetDistance Player <= 1000 ) Journal CO_10 55 set doonce to 1 endif endif endif if ( GetJournalIndex "CO_10" == 120 ) if ( GetDisabled == 0 ) Disable endif endif End
70ColonyRoot2Begin ColonyRoot2 if ( GetJournalIndex "CO_10" < 120 ) if ( GetDisabled == 0 ) Disable endif elseif ( GetJournalIndex "CO_10" == 120 ) if ( GetDisabled == 1 ) Enable endif endif End
71ColonyRootTimerBegin ColonyRootTimer short currentday short dayspassed if ( GetJournalIndex "CO_10" >= 100 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 2 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 2 ) set dayspassed to 0 StopScript ColonyRootTimer endif endif End
72ColonyRugTrapBegin ColonyRugTrap ;controls triggering of trapped rug for quest CO_9 short doonce if ( GetJournalIndex "CO_9" > 10 ) if ( GetJournalIndex "CO_9" < 50 ) if ( doonce == 0 ) if ( GetStandingPC == 1 ) cast, "colony_rug", Player MessageBox "You've set off a trap!" set "Constans Atrius".rugtrap to 1 set doonce to 1 endif endif endif endif End ColonyRugTrap
73ColonySelerBegin ColonySeler ;controls NPC actions during quest CO_7 float startfat float currentfat float targetfat float timer short doonce short combat short nolore short tired short placeonce if ( MenuMode == 1 ) return endif if ( placeonce == 0 ) if ( GetJournalIndex "CO_7" >= 10 ) PositionCell "Raven Rock, Bar" 4480.000 3968.000 15820.000 0 endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_7" >= 10 ) if ( GetDistance Player < 300 ) ForceGreeting set doonce to 1 endif endif endif if ( GetJournalIndex "CO_7" >= 10 ) if ( GetJournalIndex "CO_7" < 80 ) if ( OnDeath == 1 ) Journal CO_7 70 StopScript ColonySeler endif endif endif if ( MenuMode == 1 ) return endif if ( combat == 0 ) if ( GetJournalIndex CO_7 == 40 ) set startfat to ( player->GetFatigue ) set targetfat to ( startfat * 0.66 ) StartCombat Player set combat to 1 endif endif if ( combat == 1 ) set currentfat to ( player->GetFatigue ) if ( currentfat < targetfat ) StopCombat SetFight 30 Journal CO_7 50 AIWander 0 0 0 0 0 0 set combat to 2 ForceGreeting elseif ( tired == 1 ) StopCombat SetFight 30 Journal CO_7 50 AIWander 0 0 0 0 0 0 set combat to 2 ForceGreeting endif endif if ( combat == 1 ) if ( timer >= 30 ) set tired to 1 else set timer to ( timer + GetSecondsPassed ) endif endif End
74ColonyServSmithBegin ColonyServSmith ;enables Smithy if it is chosen in quest CO_5 if ( ColonyService < 5 ) if ( GetDisabled == 0 ) Disable endif endif if ( ColonyService == 5 ) if ( GetDisabled == 1 ) Enable StopScript ColonyServTrader endif endif End ColonyServSmith
75ColonyServSmithConstBegin ColonyServSmithConst ;enables Smithy construction piece if it is chosen in quest CO_5 if ( ColonyService < 3 ) if ( GetDisabled == 0 ) Disable endif endif if ( ColonyService == 3 ) if ( GetDisabled == 1 ) Enable endif endif if ( ColonyService >= 5 ) if ( GetDisabled == 0 ) Disable StopScript ColonyServTraderConst endif endif End ColonyServSmithConst
76ColonyServSmithDisableBegin ColonyServSmithDisable if ( GetDisabled == 0 ) if ( ColonyService == 3 ) Disable endif endif if ( GetDisabled == 0 ) if ( ColonyService == 5 ) Disable endif endif End
77ColonyServTimerBegin ColonyServTimer short dayspassed short currentday short enabled if ( enabled == 0 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed < 2 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed >= 2 ) set dayspassed to 0 set enabled to 1 endif endif if ( enabled == 1 ) if ( ColonyService == 1 ) set ColonyService to 3 elseif ( ColonyService == 2 ) set ColonyService to 4 endif set enabled to 2 endif if ( enabled == 2 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed < 2 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed >= 2 ) set dayspassed to 0 set enabled to 3 if ( ColonyService == 3 ) Journal CO_4 80 elseif ( ColonyService == 4 ) Journal CO_4 90 StopScript ColonyServTimer endif endif endif End ColonyServTimer
78ColonyServTraderBegin ColonyServTrader if ( ColonyService < 6 ) if ( GetDisabled == 0 ) Disable endif endif if ( ColonyService == 6 ) if ( GetDisabled == 1 ) Enable StopScript ColonyServTrader endif endif End ColonyServTrader
79ColonyServTraderConstBegin ColonyServTraderConst ;enables and disables Trader construction piece if trader is selected in quest CO_5 if ( ColonyService < 4 ) if ( GetDisabled == 0 ) Disable endif endif if ( ColonyService == 4 ) if ( GetDisabled == 1 ) Enable endif endif if ( ColonyService >= 6) if ( GetDisabled == 0 ) Disable StopScript ColonyServTraderConst endif endif End ColonyServTraderConst
80ColonyServTraderDisableBegin ColonyServTraderDisable if ( GetDisabled == 0 ) if ( ColonyService == 4 ) Disable endif endif if ( GetDisabled == 0 ) if ( ColonyService == 6 ) Disable endif endif End
81ColonyShipwreckBegin ColonyShipwreck short doonce if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_3" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_3" >= 10 ) Enable endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_3" >= 30 ) if ( GetDistance Player <= 2500 ) Journal CO_3 50 set doonce to 1 endif endif endif End ColonyShipwreck
82ColonyShipwreckDoorBegin ColonyShipwreckDoor if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_3" < 30 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_3" >= 30 ) Enable endif endif End
83ColonySpriggan1Begin ColonySpriggan1 ;handles Spriggans for quest CO_9, includes scripting for regular spriggan short deathvar short playonce float time float xpos float ypos float zpos short doonce short travel If (MenuMode==1) Return Endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_10" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_10" >= 10 ) Enable set travel to 1 endif endif if ( travel == 1 ) SetFight 100 StartCombat Player set travel to 2 endif If (MenuMode==1) Return Endif If (deathvar==3) ;after killed 3 times, she acts like dead creature If (onactivate==1) Activate endif Return elseif (deathvar < 1) If (ondeath==1) set deathvar to 1 ;first death endif Return elseif (deathvar==1) If (onactivate==1) return endif If (playonce==0) If (doonce==0) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +30) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 1 endif set time to ( time + GetSecondsPassed ) If (time>=1) Setscale 1.00 ;increase her size Resurrect ; revives spriggan StartCombat Player ModHealth 2 ModResistParalysis 100 ModResistPoison 100 Set playonce to 1 Set time to 0 endif endif If (ondeath==1) set deathvar to 2 ;second death endif Return elseif (deathvar==2) If (onactivate==1) return endif if (playonce==1) If (doonce==1) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +20) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 2 endif set time to ( time + GetSecondsPassed ) if (time>=1) Resurrect ; revives spriggan when activated by player Setscale 1.20 ;increase her size StartCombat Player ModHealth 3 ModResistParalysis 100 ModResistPoison 100 ModResistMagicka 100 ModResistFire 100 ModResistFrost 100 Set playonce to 2 endif endif endif If (ondeath==1) set deathvar to 3 ;third, final death endif endif End
84ColonySpriggan2Begin ColonySpriggan2 ;handles Spriggans for quest CO_9, includes scripting for regular spriggan short deathvar short playonce float time float xpos float ypos float zpos short doonce short travel If (MenuMode==1) Return Endif if ( GetDisabled == 0 ) if ( "bm_spriggan_co1".deathvar < 1 ) Disable endif endif if ( GetDisabled == 1 ) if ( "bm_spriggan_co1".deathvar >= 1 ) Enable set travel to 1 endif endif if ( travel == 1 ) SetFight 100 StartCombat Player set travel to 2 endif If (deathvar==3) ;after killed 3 times, she acts like dead creature If (onactivate==1) Activate endif Return elseif (deathvar < 1) If (ondeath==1) set deathvar to 1 ;first death endif Return elseif (deathvar==1) If (onactivate==1) return endif If (playonce==0) If (doonce==0) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +30) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 1 endif set time to ( time + GetSecondsPassed ) If (time>=1) Setscale 1.00 ;increase her size Resurrect ; revives spriggan StartCombat Player ModHealth 2 ModResistParalysis 100 ModResistPoison 100 Set playonce to 1 Set time to 0 endif endif If (ondeath==1) set deathvar to 2 ;second death endif Return elseif (deathvar==2) If (onactivate==1) return endif if (playonce==1) If (doonce==1) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +20) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 2 endif set time to ( time + GetSecondsPassed ) if (time>=1) Resurrect ; revives spriggan when activated by player Setscale 1.20 ;increase her size StartCombat Player ModHealth 3 ModResistParalysis 100 ModResistPoison 100 ModResistMagicka 100 ModResistFire 100 ModResistFrost 100 Set playonce to 2 endif endif endif If (ondeath==1) set deathvar to 3 ;third, final death endif endif End
85ColonySpriggan3Begin ColonySpriggan3 ;handles Spriggans for quest CO_9, includes scripting for regular spriggan short deathvar short playonce float time float xpos float ypos float zpos short doonce short travel If (MenuMode==1) Return Endif if ( GetDisabled == 0 ) if ( "bm_spriggan_co2".deathvar < 1 ) Disable endif endif if ( GetDisabled == 1 ) if ( "bm_spriggan_co2".deathvar >= 1 ) Enable set travel to 1 endif endif if ( travel == 1 ) SetFight 100 StartCombat Player set travel to 2 endif If (deathvar==3) ;after killed 3 times, she acts like dead creature If (onactivate==1) Activate endif Return elseif (deathvar < 1) If (ondeath==1) set deathvar to 1 ;first death endif Return elseif (deathvar==1) If (onactivate==1) return endif If (playonce==0) If (doonce==0) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +30) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 1 endif set time to ( time + GetSecondsPassed ) If (time>=1) Setscale 1.00 ;increase her size Resurrect ; revives spriggan StartCombat Player ModHealth 2 ModResistParalysis 100 ModResistPoison 100 Set playonce to 1 Set time to 0 endif endif If (ondeath==1) set deathvar to 2 ;second death endif Return elseif (deathvar==2) If (onactivate==1) return endif if (playonce==1) If (doonce==1) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +20) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 2 endif set time to ( time + GetSecondsPassed ) if (time>=1) Resurrect ; revives spriggan when activated by player Setscale 1.20 ;increase her size StartCombat Player ModHealth 3 ModResistParalysis 100 ModResistPoison 100 ModResistMagicka 100 ModResistFire 100 ModResistFrost 100 Set playonce to 2 endif endif endif If (ondeath==1) set deathvar to 3 ;third, final death endif endif End
86ColonySpriggan4Begin ColonySpriggan4 ;handles Spriggans for quest CO_9, includes scripting for regular spriggan short deathvar short playonce float time float xpos float ypos float zpos short doonce short travel If (MenuMode==1) Return Endif if ( deathvar == 3 ) if ( "BM_Spriggan_co1".deathvar >= 3 ) if ( "BM_Spriggan_co2".deathvar >= 3 ) if ( "BM_Spriggan_co3".deathvar >= 3 ) Journal CO_10 30 set deathvar to 4 endif endif endif endif if ( GetDisabled == 0 ) if ( "bm_spriggan_co2".deathvar < 1 ) Disable endif endif if ( GetDisabled == 1 ) if ( "bm_spriggan_co2".deathvar >= 1 ) Enable set travel to 1 endif endif if ( travel == 1 ) SetFight 100 StartCombat Player set travel to 2 endif If (deathvar==3) ;after killed 3 times, she acts like dead creature If (onactivate==1) Activate endif Return elseif (deathvar < 1) If (ondeath==1) set deathvar to 1 ;first death endif Return elseif (deathvar==1) If (onactivate==1) return endif If (playonce==0) If (doonce==0) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +30) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 1 endif set time to ( time + GetSecondsPassed ) If (time>=1) Setscale 1.00 ;increase her size Resurrect ; revives spriggan StartCombat Player ModHealth 2 ModResistParalysis 100 ModResistPoison 100 Set playonce to 1 Set time to 0 endif endif If (ondeath==1) set deathvar to 2 ;second death endif Return elseif (deathvar==2) If (onactivate==1) return endif if (playonce==1) If (doonce==1) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +20) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 2 endif set time to ( time + GetSecondsPassed ) if (time>=1) Resurrect ; revives spriggan when activated by player Setscale 1.20 ;increase her size StartCombat Player ModHealth 3 ModResistParalysis 100 ModResistPoison 100 ModResistMagicka 100 ModResistFire 100 ModResistFrost 100 Set playonce to 2 endif endif endif If (ondeath==1) set deathvar to 3 ;third, final death endif endif End
87ColonyStalhrimBegin ColonyStalhrim if ( OnActivate == 1 ) if ( player->GetItemCount "BM Nordic Pick" >= 1 ) if ( GetJournalIndex "CO_8a" == 30 ) Activate Journal CO_8a 40 elseif ( GetJournalIndex "CO_8" == 30 ) Activate Journal CO_8 40 else Activate endif else MessageBox "You don't have the tools to do anything with this." endif endif end ColonyStalhrim
88ColonySWDraugrBegin ColonySWDraugr if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_3" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_3" >= 10 ) Enable endif endif if ( OnDeath == 1 ) set DraugrKilled to ( DraugrKilled + 1 ) endif End ColonySWDraugr
89ColonyTimerBegin ColonyTimer short currentday short dayspassed short gidarmove if ( ColonyState == 0 ) set ColonyState to 1 endif if ( ColonyState >= 1 ) if ( gidarmove == 0 ) if ( GetPCCell "Raven Rock" == 0 ) "Gidar Verothan"->Position -199611.578 160405.984 997.603 180 "Gidar Verothan"->AiWander 256 0 0 40 20 20 0 0 0 0 0 0 "Gamin Girith"->Position -198769.141 160514.844 966.327 105 "Gamin Girith"->AiWander 256 0 0 40 20 20 0 0 0 0 0 0 "Sabinus Oranius"->Position -199492.266 161656.625 1133.826 224 "Sabinus Oranius"->AiWander 256 0 0 40 20 20 0 0 0 0 0 0 set gidarmove to 1 endif endif endif if ( ColonyState == 1 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 3 ) set dayspassed to 0 set ColonyState to 2 if ( GetPCRank "East Empire Company" != -1 ) Journal Colony_update 10 endif endif endif if ( ColonyState == 2 ) if ( GetJournalIndex CO_2 >= 90 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 3 ) Journal Colony_update 20 set ColonyState to 3 set dayspassed to 0 endif endif endif if ( ColonyState == 4 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 3 ) set dayspassed to 0 set ColonyState to 5 Journal Colony_update 30 endif endif if ( ColonyState == 9 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 3 ) set dayspassed to 0 set ColonyState to 10 Journal Colony_update 40 endif endif if ( ColonyState == 11 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 2 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 2 ) if ( GetPCCell "Raven Rock" == 0 ) set dayspassed to 0 set ColonyState to 12 endif endif endif if ( ColonyState == 13 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 3 ) if ( GetPCCell "Raven Rock" == 0 ) set dayspassed to 0 set ColonyState to 20 "Falco Galenus"->Position -199788.719 160287.656 995.345 90 "Falco Galenus"->AiWander 0 0 0 0 0 0 if ( ColonySide == 1 ) if ( GetDeadCount "Gidar Verothan" < 1 ) "Gidar Verothan"->PositionCell -195.465 -9.815 137.121 0 "Raven Rock, Gidar Verothan's House" endif if ( GetDeadCount "Sabinus Oranius" < 1 ) "Sabinus Oranius"->PositionCell -91.973 -66.313 164.140 0 "Raven Rock, Sabinus Oranius' House" endif if ( GetDeadCount "Gamin Girith" < 1 ) "Gamin Girith"->PositionCell 327.068 -25 135.6 0 "Raven Rock, Mine Entrance" endif if ( GetDeadCount "Apronia Alfena" < 1 ) "Apronia Alfena"->PositionCell 846.221 486.647 179.991 0 "Raven Rock, Bar" endif endif Journal Colony_update 50 endif endif endif if ( ColonyState == 20 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 2 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 2 ) if ( GetJournalIndex "CO_12a" == 50 ) set dayspassed to 0 set ColonyState to 21 Journal Colony_Update 60 elseif ( GetJournalIndex "CO_12" == 110 ) set dayspassed to 0 set ColonyState to 21 Journal Colony_Update 60 endif endif endif endif if ( ColonyState == 23 ) if ( dayspassed == 0 ) set currentday to day set dayspassed to 1 endif if ( dayspassed <= 3 ) if ( currentday != day ) set dayspassed to dayspassed + 1 set currentday to day endif endif if ( dayspassed > 3 ) set dayspassed to 0 set ColonyState to 30 "Aldam Berendus"->PositionCell -197491.906 160314.453 893.186 180.000 "Raven Rock" "Afer Flaccus_guard"->PositionCell -191427.359 160908.000 1727.809 180.000 "Raven Rock" "Afer Flaccus_guard"->AiWander 0 0 0 0 0 0 "Garnas Uvalen_guard"->PositionCell -193640.766 160407.609 1036.335 0 "Raven Rock" "Garnas Uvalen_guard"->AiWander 512 0 0 0 0 0 "Gratian Caerellius_guar"->PositionCell -198903.063 160203.422 1043.582 0 "Raven Rock" "Gratian Caerellius_guar"->AiWander 512 0 0 0 0 0 Journal Colony_update 70 endif endif End ColonyTimer
90ColonyToralfBegin ColonyToralf short nolore short attackinit short nordhit short OnPCHitMe if ( nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( OnPCHitMe == 1 ) set nordhit to 1 Forcegreeting endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_13a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_13a" == 10 ) if ( GameHour > 20 ) if ( GameHour < 22 ) Enable endif endif endif endif if ( GetJournalIndex "CO_13a" == 30 ) if ( OnDeath == 1 ) if ( GetDeadCount "Audmund" == 1 ) if ( GetDeadCount "Bryngrim" == 1 ) if ( GetDeadCount "Ormvard" == 1 ) if ( GetDeadCount "Alfbrand" == 1 ) if ( GetDeadCount "Valgeir" == 1 ) Journal CO_13a 40 endif endif endif endif endif endif endif End
91ColonyUnelBegin ColonyUnel ;controls enabling of Unel Lloran for quest CO_10, and his behavior throughout the quest. short nolore if ( GetJournalIndex "CO_10" < 10 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_10" >= 10 ) if ( GetDisabled == 1 ) Enable endif endif if ( GetJournalIndex "CO_10" == 60 ) if ( GetCurrentAiPackage == 3 ) if ( GetDistance "act_ex_colony_root_4" <= 1000 ) Journal CO_10 70 AiWander 0 0 0 0 0 0 ForceGreeting endif endif endif End ColonyUnel
92ColonyUrynBegin ColonyUryn ;controls Uryn's movements for quests CO_6 and CO_6a short urynmove short dieroll short sneakskill short nolore short enabled if ( GetJournalIndex "CO_3" < 10 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_3" >= 10 ) if ( GetDisabled == 1 ) Enable endif endif if ( GetJournalIndex "CO_6" >= 70 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_6" == 40 ) if ( MarynDetect == 0 ) if ( urynmove == 0 ) if ( GetDistance "Player" <= 512 ) AiTravel 2432 2176 13056 0 set urynmove to 1 endif elseif ( urynmove == 1 ) if ( GetAIPackageDone == 1 ) set urynmove to 2 endif elseif ( urynmove == 2 ) AITravel 4264.140 2249.811 12784.720 0 set urynmove to 3 elseif ( urynmove == 3 ) if ( GetAIPackageDone == 1 ) set urynmove to 4 endif elseif ( urynmove == 4 ) AITravel 4440.313 2404.410 12779.297 0 set urynmove to 5 endif endif endif if ( GetJournalIndex "CO_6" == 40 ) if ( MarynDetect == 0 ) if ( urynmove == 5 ) if ( GetAIPackageDone == 1 ) set urynmove to 6 endif elseif ( urynmove == 6 ) AITravel 4481.318 2850.009 12791.392 0 set urynmove to 7 elseif ( urynmove == 7 ) if ( GetAIPackageDone == 1 ) set urynmove to 8 endif elseif ( urynmove == 8 ) ForceSneak if ( GetDeadCount "Aldam Berendus" == 0 ) if ( GetDistance "Aldam Berendus" >= 1600 ) set urynmove to 9 endif else set urynmove to 9 endif elseif ( urynmove == 9 ) AITravel 4790.358 3416.469 12791.392 0 set urynmove to 10 elseif ( urynmove == 10 ) if ( GetAIPackageDone == 1 ) set urynmove to 11 endif elseif ( urynmove == 11 ) AiTravel 6003.940 3417.528 12791.392 0 set urynmove to 12 elseif ( urynmove == 12 ) if ( GetAiPackageDone == 1 ) ClearForceSneak set urynmove to 13 endif elseif ( urynmove == 13 ) if ( GetDistance "Player" <= 512 ) Journal CO_6 50 endif endif endif endif ;if ( GetJournalIndex CO_6 == 40 ) ; if ( MarynDetect == 0 ) ; if ( GetDistance "Player" <= 512 ) ; if ( GetDetected "Player" == 1 ) ; ClearForceSneak ; set MarynDetect to 1 ; Journal CO_6 100 ; AiWander 256 0 0 40 20 20 0 0 0 0 0 0 ; ForceGreeting ; endif ; endif ; endif ;endif if ( GetJournalIndex "CO_6a" == 40 ) if ( urynmove == 0 ) AiTravel 2432 2176 13056 0 set urynmove to 1 elseif ( urynmove == 1 ) if ( GetAIPackageDone == 1 ) set urynmove to 2 endif elseif ( urynmove == 2 ) AITravel 4264.140 2249.811 12784.720 0 set urynmove to 3 elseif ( urynmove == 3 ) if ( GetAIPackageDone == 1 ) set urynmove to 4 endif elseif ( urynmove == 4 ) AITravel 4440.313 2404.410 12779.297 0 set urynmove to 5 elseif ( urynmove == 5 ) if ( GetAIPackageDone == 1 ) set urynmove to 6 endif elseif ( urynmove == 6 ) AITravel 4481.318 2850.009 12791.392 0 set urynmove to 7 elseif ( urynmove == 7 ) if ( GetAIPackageDone == 1 ) set urynmove to 8 endif elseif ( urynmove == 8 ) ForceSneak if ( GetDeadCount "Aldam Berendus" == 0 ) if ( GetDistance "Aldam Berendus" >= 1600 ) set urynmove to 9 endif else set urynmove to 9 endif endif endif if ( GetJournalIndex "CO_6a" == 40 ) if ( urynmove == 9 ) AITravel 4790.358 3416.469 12791.392 0 set urynmove to 10 elseif ( urynmove == 10 ) if ( GetAIPackageDone == 1 ) set urynmove to 11 endif elseif ( urynmove == 11 ) AiTravel 6003.940 3417.528 12791.392 0 set urynmove to 12 elseif ( urynmove == 12 ) if ( GetAIPackageDone == 1 ) additem "ingred_raw_ebony_01" 10 set urynmove to 13 endif elseif ( urynmove == 13 ) ClearForceSneak AiTravel 4790.358 3416.469 12791.392 0 set urynmove to 14 elseif ( urynmove == 14 ) if ( GetAIPackageDone == 1 ) set urynmove to 15 endif elseif ( urynmove == 15 ) AiTravel 4449.996 3928.684 12780.577 0 set urynmove to 16 elseif ( urynmove == 16 ) if ( GetAiPackageDone == 1 ) set urynmove to 17 endif elseif ( urynmove == 17 ) AiTravel 4439.355 4739.469 12780.577 0 set urynmove to 18 elseif ( urynmove == 18 ) if ( GetAiPackageDone == 1 ) set urynmove to 19 endif elseif ( urynmove == 19 ) AiTravel 5180.572 4727.381 12776.586 0 set urynmove to 20 elseif ( urynmove == 20 ) if ( GetAiPackageDone == 1 ) set urynmove to 21 endif elseif ( urynmove == 21 ) if ( GetDistance Player < 512 ) set urynmove to 22 ForceGreeting AiWander 512 0 0 0 0 0 0 endif endif endif end
93ColonyValgeirBegin ColonyValgeir short attackinit short nolore short valgeirequip short doonce short OnPCHitMe if ( "toralf".nordhit == 0 ) if ( GetJournalIndex "CO_13a" < 30 ) if ( OnPCHitMe == 1 ) set "toralf".nordhit to 1 "Toralf"->Forcegreeting endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_13a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_13a" == 10 ) if ( GameHour > 20 ) if ( GameHour < 22 ) Enable endif endif endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_13a" == 30 ) SetFight 100 StartCombat Player set doonce to 1 endif endif if ( GetJournalIndex "CO_13a" == 30 ) if ( OnDeath == 1 ) if ( GetDeadCount "Audmund" == 1 ) if ( GetDeadCount "Bryngrim" == 1 ) if ( GetDeadCount "Ormvard" == 1 ) if ( GetDeadCount "Alfbrand" == 1 ) if ( GetDeadCount "Valgeir" == 1 ) Journal CO_13a 40 endif endif endif endif endif endif endif End
94ColonyVeresabegin ColonyVeresa ;she's the travel provider for colony, enabled after stage one short doonce short nolore short moveonce if (doonce == 1) return endif if ( ColonyState < 3 ) if ( GetDisabled == 0 ) Disable endif elseif ( ColonyState >= 3 ) if ( GetDisabled == 1 ) if ( doonce < 1 ) Enable set doonce to 1 endif endif endif if ( moveonce == 0 ) if ( "Ex_colony_pier01"->GetDisabled == 0 ) Position -199640.500 156541.094 269.129 0 set moveonce to 1 endif endif end ColonyVeresa
95ColonyWolfKillBegin ColonyWolfKill short doonce short attack short move if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_9a" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_9a" >= 10 ) Enable endif endif ;if ( move == 0 ) ; if ( GetJournalIndex "CO_9a" == 30 ) ; ForceRun ; AiTravel -178928.891 155303.813 1012.008 0 ; set move to 1 ; endif ;elseif ( move == 1 ) ; if ( GetAIPackageDone == 1 ) ; set move to 2 ; endif ;elseif ( move == 2 ) ; AiTravel -178261.063 152603.547 1034.483 0 ; set move to 3 ;elseif ( move == 3 ) ; if ( GetAiPackageDone == 1 ) ; set move to 4 ; endif ;elseif ( move == 4 ) ; ClearForceRun ; AiWander 0 0 0 0 0 0 0 0 0 0 ; set move to 5 ;endif if ( doonce == 0 ) if ( GetHealth < 1 ) if ( GetTarget "Player" == 1 ) Journal CO_9a 60 else Journal CO_9a 50 endif set doonce to 1 endif endif End
96ColonyWolf_HroldarBegin ColonyWolf_Hroldar short doonce short wolfattack if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_9a" < 40 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_9a" >= 40 ) if ( GetDeadCount "Hroldar the Strange_b" < 1 ) Enable endif endif endif if ( doonce == 0 ) if ( GetDistance "Tirvel Balen" <= 512 ) StartCombat "Tirvel Balen" set doonce to 1 set wolfattack to 1 endif endif if ( doonce == 1 ) if ( GetDeadCount "Tirvel Balen" >= 1 ) StopCombat SetFight 30 set doonce to 2 endif endif End ColonyWolf_Hroldar
97Colony_Door_UrynBegin Colony_Door_Uryn short doonce if ( GetDisabled == 0 ) if ( ColonyState < 3 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 3 ) ;if ( GetPCCell "Raven Rock" == 0 ) Enable ;endif endif endif if ( doonce == 0 ) if ( GetJournalIndex "CO_6" >= 10 ) Lock 100 set doonce to 1 endif endif End
98Colony_D_1_FBegin Colony_D_1_F if ( GetDisabled == 0 ) if ( ColonyState >= 3 ) Disable endif endif End
99Colony_D_1_IBegin Colony_D_1_I if ( GetDisabled == 0 ) if ( ColonyState >= 1 ) Disable endif endif End
100Colony_D_1_mBegin Colony_D_1_m if ( GetDisabled == 0 ) if ( ColonyState >= 2 ) Disable StopScript Colony_D_1_m endif endif End
101Colony_D_1_MineBegin Colony_D_1_Mine if ( GetDisabled == 0 ) if ( ColonyState < 2 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState = 1 ) Enable endif endif if ( GetDisabled == 0 ) if ( ColonyState >=2 ) Disable endif endif End
102Colony_D_2_FBegin Colony_D_2_F if ( GetDisabled == 0 ) if ( ColonyState >= 10 ) Disable endif endif End
103Colony_D_3_FBegin Colony_D_3_F if ( GetDisabled == 0 ) if ( ColonyState >= 20 ) Disable endif endif End
104Colony_E_1_FBegin Colony_E_1_F if ( GetDisabled == 0 ) if ( ColonyState < 3 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 3 ) ;if ( GetPCCell "Raven Rock" == 0 ) Enable ;endif endif endif End
105Colony_E_1_IBegin Colony_E_1_I if ( GetDisabled == 0 ) if ( ColonyState < 1 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 1 ) ;if ( GetPCCell "Raven Rock" == 0 ) Enable ;endif endif endif End
106Colony_E_1_MBegin Colony_E_1_M ;enables mid-stage buildings for Stage 1 of colony development ;objects are disabled when Stage 1 is completed short done if ( GetDisabled == 0 ) if ( ColonyState < 1 ) Disable endif endif if ( done == 0 ) if ( GetDisabled == 1 ) if ( ColonyState >= 1 ) Enable set done to 1 endif endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 3 ) Disable endif endif End
107Colony_E_1_MineBegin Colony_E_1_Mine if ( GetDisabled == 0 ) if ( ColonyState < 2 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 2 ) Enable StopScript Colony_E_1_Mine endif endif End
108Colony_E_2_FBegin Colony_E_2_F if ( GetDisabled == 0 ) if ( ColonyState < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 10 ) Enable endif endif End
109Colony_E_2_MBegin Colony_E_2_M ;enables mid-stage buildings for Stage 2 of colony development ;objects are disabled when Stage 2 is completed short done if ( GetDisabled == 0 ) if ( ColonyState < 3 ) Disable endif endif if ( done == 0 ) if ( GetDisabled == 1 ) if ( ColonyState >= 3 ) Enable set done to 1 endif endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 10 ) Disable endif endif End
110Colony_E_3_FBegin Colony_E_3_F if ( GetDisabled == 0 ) if ( ColonyState < 20 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 20 ) Enable endif endif End
111Colony_E_3_MBegin Colony_E_3_M ;enables mid-stage buildings for Stage 3 of colony development ;objects are disabled when Stage 3 is completed short done if ( GetDisabled == 0 ) if ( ColonyState < 12 ) Disable endif endif if ( done == 0 ) if ( GetDisabled == 1 ) if ( ColonyState >= 12 ) Enable set done to 1 endif endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 20 ) Disable endif endif End
112Colony_E_4_FBegin Colony_E_4_F if ( GetDisabled == 0 ) if ( ColonyState < 30 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 30 ) Enable endif endif End
113Colony_E_4_MBegin Colony_E_4_M ;enables mid-stage buildings for Stage 4 of colony development ;objects are disabled when Stage 4 is completed short done if ( GetDisabled == 0 ) if ( ColonyState < 22 ) Disable endif endif if ( done == 0 ) if ( GetDisabled == 1 ) if ( ColonyState >= 22 ) Enable set done to 1 endif endif endif if ( GetDisabled == 0 ) if ( ColonyState >= 30 ) Disable endif endif End
114Colony_E_TorchBegin Colony_E_Torch if ( ColonyState < 30 ) if ( GetDisabled == 0 ) Disable endif endif if ( ColonyState == 30 ) if ( GetDisabled == 1 ) Enable endif endif if ( ColonyState >= 34 ) if ( GetDisabled == 0 ) SetDelete 1 endif endif End
115Colony_first_boatbegin Colony_first_boat ;boat for first service provider, enabled after stage one short doonce if (doonce == 1 ) return endif if ( ColonyState < 3 ) if ( GetDisabled == 0 ) Disable endif elseif ( ColonyState >= 3 ) if ( GetDisabled == 1 ) if ( doonce < 1 ) Enable set doonce to 1 endif endif endif end Colony_first_boat
116CorprusBeastSafebegin CorprusBeastSafe ; makes corprus monsters stop fighting at Corprusarium when PC makes nice ; Main quest A2_3_CorprusCure if ( GetJournalIndex A2_3_CorprusSafe = 100 ) if ( getdeadcount "corprus_stalker_fyr01" == 0 ) "corprus_stalker_fyr01"->stopcombat "corprus_stalker_fyr01"->setfight 10 "corprus_stalker_fyr01"->setdisposition 30 endif if ( getdeadcount "corprus_stalker_fyr02" == 0 ) "corprus_stalker_fyr02"->stopcombat "corprus_stalker_fyr02"->setfight 10 "corprus_stalker_fyr02"->setdisposition 30 endif if ( getdeadcount "corprus_stalker_fyr03" == 0 ) "corprus_stalker_fyr03"->stopcombat "corprus_stalker_fyr03"->setfight 10 "corprus_stalker_fyr03"->setdisposition 30 endif if ( getdeadcount "corprus_lame_fyr01" == 0 ) "corprus_lame_fyr01"->stopcombat "corprus_lame_fyr01"->setfight 10 "corprus_lame_fyr01"->setdisposition 30 endif if ( getdeadcount "corprus_lame_fyr02" == 0 ) "corprus_lame_fyr02"->stopcombat "corprus_lame_fyr02"->setfight 10 "corprus_lame_fyr02"->setdisposition 30 endif if ( getdeadcount "corprus_lame_fyr03" == 0 ) "corprus_lame_fyr03"->stopcombat "corprus_lame_fyr03"->setfight 10 "corprus_lame_fyr03"->setdisposition 30 endif if ( getdeadcount "corprus_lame_fyr04" == 0 ) "corprus_lame_fyr04"->stopcombat "corprus_lame_fyr04"->setfight 10 "corprus_lame_fyr04"->setdisposition 30 endif endif StopScript CorprusBeastSafe end CorprusBeastSafe
117DagothUrCreature1begin DagothUrCreature1 short state short HaveStuff float timer short OpenDoors if ( Menumode == 1 ) return endif if ( state == 0 ) ;play initial greeting, once if ( GetDistance, Player < 800 ) if ( Player->GetItemCount, "Keening" > 0 ) ;check for keening if ( Player->GetItemCount, "Sunder" > 0 ) ;check for sunder if ( Player->GetItemCount, "Wraithguard" > 0 ) ;check for wraithguard set HaveStuff to 1 endif endif endif if ( HaveStuff == 1 ) Player->Say, "Vo\Misc\Dagoth Ur Welcome B.wav", "Welcome, Moon-and-Star, to this place where destiny is made." else Player->Say, "Vo\Misc\Dagoth Ur Welcome A.wav", "Dagoth Ur welcomes you, Nerevar, my old friend. But to this place where destiny is made, why have you come unprepared?" endif set state to 10 endif endif ;check for death and play effect by doors and sivel them open if ( OnDeath == 1 ) "dagoth ur death sparkles"->enable "dagoth ur death sparkles"->PlayGroup, Death1 set OpenDoors to 1 "Akula door B"->PlaySound3d "Door Stone Open" "Akula door A"->PlaySound3d "Door Stone Open" endif ;doors rotate 45 degrees if ( OpenDoors == 1 ) set timer to timer + GetSecondsPassed if ( GetDisabled == 0 ) if ( timer > 0.5 ) Disable endif endif if ( timer <= 4.5 ) "Akula door B"->Rotate Z -10 "Akula door A"->Rotate Z 10 else set timer to 0 set opendoors to 0 disable ;so dagoth body goes away endif endif end DagothUrCreature1
118dbFixScriptBegin dbFixScript short dbnew if ( CellChanged == 0 ) return endif if ( GetPCCell "Skaal Village" == 1 ) if ( dbattack == 1 ) set dbnew to dbattack set dbattack to 0 endif else if ( dbnew == 1 ) set dbattack to dbnew set dbnew to 0 endif endif End dbFixScript
119deadhorkerScriptBegin deadhorkerScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_BearHunt1 < 50 ) if ( GetJournalIndex BM_BearHunt2 < 50 ) Disable endif endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_BearHunt1 >= 50 ) Enable elseif ( GetJournalIndex BM_BearHunt2 >= 50 ) Enable endif endif End deadHorkerScript
120dulkScriptBegin dulkScript short doOnce short playerwolf short AllowWerewolfForceGreeting if ( GetJournalIndex BM_FrostGiant2 == 10 ) if ( doOnce == 0 ) if ( GetDistance Player <= 512 ) if ( Player->IsWerewolf == 1 ) ForceGreeting set doOnce to 1 endif endif endif elseif ( GetJournalIndex BM_FrostGiant2 == 70 ) if ( doOnce == 1 ) if ( GetDistance Player <= 512 ) ;if ( Player->IsWerewolf == 1 ) ForceGreeting set doOnce to 2 ;endif endif endif endif End dulkScript
121enable_teleportbegin enable_teleport EnableTeleporting end
122EndGamebegin EndGame ;does all the stuff for ending the game in the heart chamber. ;global script is run from heart room when you get near either of two buckets (script DagothDoorDetector) journal C3_DestroyDagoth 20 ;several things in game react to this, including ghostfence ; "heart_Akulakhan"->PlayGroup, Death1 -- should already have played when it died "in_akulakhan00"->PlayGroup, Death1 "in_dagoth_bridge00"->PlayGroup, Death1 ;Todd, commenting out for now until Gary gets the correct ones in "blight cloud"->Disable ;this is the big object outside ModRegion "Red Mountain Region" 50 50 0 0 0 0 0 0 ChangeWeather "Red Mountain Region" 0 ;set ash vampires and such to health of 0 "Dagoth_Ur_2"->SetHealth 0 "Dagoth Uthol"->SetHealth 0 "Dagoth Vemyn"->SetHealth 0 "Dagoth Endus"->SetHealth 0 "Dagoth Odros"->SetHealth 0 "Dagoth Tureynul"->SetHealth 0 "Dagoth Gilvoth"->SetHealth 0 "Dagoth Araynys"->SetHealth 0 EnableTeleporting set DestroyBlight to -1 ;global variable Player->ModReputation 10 ;gives the player reputation reward StopScript EndGame ;script kills itself end EndGame
123ErichScriptBegin ErichScript Short greetonce Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_Missionary >= 10 ) if ( GetJournalIndex BM_Trial < 100 ) Journal BM_Missionary 40 endif endif endif if ( GetJournalIndex "BM_Trial" >= 100 ) SetHealth 0 endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) Disable endif if ( GetJournalIndex BM_Missionary >= 50 ) if ( GetDistance, Player <= 200 ) if ( greetonce == 0 ) ForceGreeting set greetonce to -1 endif endif endif End ErichScript
124ErnaNoteScriptBegin ErnaNoteScript short done if ( done == 1 ) return endif if ( GetJournalIndex BM_WomanScorned >= 30 ) if ( onactivate == 1 ) Journal "BM_WomanScorned" 40 set done to 1 activate endif endif end ErnaNoteScript
125ErnaScriptbegin ErnaScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_WomanScorned >= 30 ) Journal BM_WomanScorned 50 endif endif end
126faustusScriptBegin faustusScript short withlusius short nolore short gavebooze if ( withlusius == 1 ) return endif if ( luciuschosen == 1 ) set withlusius to 1 endif End faustusScript
127fireenableScriptBegin fireenableScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_BearHunt2 < 10 ) Disable elseif ( GetJournalIndex BM_BearHunt2 >= 100 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_BearHunt2 >= 10 ) if ( GetJournalIndex BM_BearHunt2 < 100 ) Enable endif endif endif End fireenableScript
128fireregenScriptBegin fireregenScript short onfire short hasspell if ( GetEffect sEffectFireDamage == 0 ) if ( onfire == 1 ) set onfire to 0 endif elseif ( GetEffect sEffectFireDamage == 1 ) if ( onfire == 0 ) set onfire to 1 endif endif if ( onfire == 1 ) if ( hasspell == 1 ) RemoveSpell "BM_fireregen" set hasspell to 0 endif elseif ( onfire == 0 ) if ( hasspell == 0 ) AddSpell "BM_fireregen" set hasspell to 1 endif endif end fireregenScript
129fjalddoorScriptBegin fjalddoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Draugr >= 20 ) Disable endif endif End fjalddoorScript
130Floatbegin Float float timer float swingTime float swingSpeed float startAngle ;set startAngle to GetStartingAngle, x if ( MenuMode == 0 ) set swingTime to 1 ;set swingSpeed to 30 set timer to ( timer + GetSecondsPassed ) ;rotate up if ( timer < swingTime ) Rotate x,2 ;rotate down elseif ( timer < (swingTime * 3) ) Rotate x, -2 ;up again elseif (timer < (swingTime * 4 ) ) Rotate x, 2 ;reset timer to zero else set timer to 0 SetAtStart endif endif end Float
131forcefieldScriptBegin forcefieldScript float timer float goAway if ( goAway == 0 ) if ( GetJournalIndex BM_Draugr == 70 ) if ( GetDistance Player <= 512 ) set goAway to 1 endif elseif ( GetJournalIndex BM_Draugr == 90 ) if ( GetDistance Player <= 512 ) set goAway to 1 endif endif endif if ( goAway == 1 ) LoopGroup Idle2 2 1 set goAway to 2 endif if ( goAway == 2 ) if ( timer < 2.5 ) set timer to ( timer + GetSecondsPassed ) return else Disable setdelete 1 set goAway to 3 endif endif End forcefieldScript
132fortDisableScriptBegin fortDisableScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Smugglers >= 93 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Smugglers < 93 ) Enable endif endif End fortDisableScript
133fortEnableScriptBegin fortEnableScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Smugglers < 93 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Smugglers >= 93 ) Enable endif endif End fortEnableScript
134fortloreboozeCarn1ScriptBegin fortloreboozeCarn1Script short nolore short gavebooze if ( GetJournalIndex "CO_9" < 10 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_9" >= 10 ) if ( GetJournalIndex "CO_9" < 60 ) if ( Carniusloc == 0 ) if ( GetDisabled == 1 ) Enable endif endif endif endif if ( GetJournalIndex "CO_9" >= 60 ) if ( GetDisabled == 0 ) Disable endif endif End fortloreboozeCarn1Script
135fortloreboozeCarn2ScriptBegin fortloreboozeCarn2Script short nolore short gavebooze if ( GetJournalIndex "CO_9" < 10 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_9" >= 10 ) if ( GetJournalIndex "CO_9" < 60 ) if ( Carniusloc == 1 ) if ( GetDisabled == 1 ) Enable endif endif endif endif if ( GetJournalIndex "CO_9" >= 60 ) if ( GetDisabled == 0 ) Disable endif endif End fortloreboozeCarn2Script
136fortloreboozeCarn3ScriptBegin fortloreboozeCarn3Script short nolore short gavebooze if ( GetJournalIndex "CO_9" < 10 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex "CO_9" >= 10 ) if ( GetJournalIndex "CO_9" < 60 ) if ( Carniusloc == 2 ) if ( GetDisabled == 1 ) Enable endif endif endif endif if ( GetJournalIndex "CO_9" >= 60 ) if ( GetDisabled == 0 ) Disable endif endif End fortloreboozeCarn3Script
137fortloreboozeScriptBegin fortloreboozeScript short nolore short gavebooze End fortloreboozeScript
138GaminScriptBegin GaminScript short OnPCHitMe short Gaminfollow short nolore if ( GetJournalIndex "CO_1" < 10 ) return elseif ( GetJournalIndex "CO_1" < 30 ) if ( Ondeath == 1 ) Journal CO_1 300 endif endif if ( GetJournalIndex "CO_1" == 20 ) if ( Gaminfollow == 0 ) AIfollow "Gidar Verothan" 0 -198017 160157 800 0 set gaminfollow to 1 endif endif if ( gaminfollow == 1 ) if ( GetJournalIndex "CO_1" >= 30 ) if ( GetDistance "Gidar Verothan" < 512 ) AiWander 0 0 0 60 30 20 0 0 0 0 0 0 setalarm 50 set gaminfollow to 2 endif endif endif if ( OnPCHitMe == 1 ) "Gidar Verothan"->StartCombat Player "Sabinus Oranius"->StartCombat Player SetFight 100 StartCombat Player endif End GaminScript
139giantScriptBegin giantScript short doOnce short onfire short hasspell if ( GetJournalIndex BM_WildHunt > 82 ) return endif if ( GetEffect sEffectFireDamage == 0 ) if ( onfire == 1 ) set onfire to 0 endif elseif ( GetEffect sEffectFireDamage == 1 ) if ( onfire == 0 ) set onfire to 1 endif endif if ( onfire == 1 ) if ( hasspell == 1 ) RemoveSpell "BM_fireregen" set hasspell to 0 endif elseif ( onfire == 0 ) if ( hasspell == 0 ) AddSpell "BM_fireregen" set hasspell to 1 endif endif if ( doOnce == 0 ) if ( GetDistance Player <= 1028 ) Journal BM_WildHunt 80 set doOnce to 1 endif endif if ( OnDeath == 1 ) if ( GetJournalIndex BM_WildHunt < 82 ) Journal BM_WildHunt 82 endif endif End giantScript
140GidarScriptBegin GidarScript short Gidarfollow short nolore short minemoveonce short OnPCHitMe if ( MenuMode == 1 ) return endif if ( GetJournalIndex "CO_1" == 20 ) if ( GetCurrentAiPackage == 3 ) set Gidarfollow to 1 else set Gidarfollow to 0 endif endif if (GetJournalIndex "CO_1" < 10 ) return elseif ( GetJournalIndex "CO_1" < 30 ) if ( Ondeath == 1 ) Journal CO_1 300 endif endif if ( GetJournalIndex "CO_1" == 20 ) if ( GetDistance "Falco Galenus" <= 1000 ) Journal CO_1 30 ForceGreeting endif endif if ( OnPCHitMe == 1 ) "Gamin Girith"->StartCombat Player "Sabinus Oranius"->StartCombat Player SetFight 100 StartCombat Player endif End GidarScript
141glendoor2ScriptBegin glendoor2Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Wind >= 10 ) Enable endif endif End glendoor2Script
142glendoorScriptBegin glendoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind >= 10 ) Disable endif endif End glendoorScript
143GlenmorilCaveTeleportBegin GlenmorilCaveTeleport if ( MenuMode == 1 ) return endif playsound "conjuration hit" Player->PositionCell 129 1291 -173 165 "Solstheim, Gloomy Cave" Stopscript GlenmorilCaveTeleport End GlenmorilCaveTeleport
144GlenmorilRavenBegin GlenmorilRaven float xpos float ypos float zpos ; This script changes the Glenmoril Witch from Raven to human form. short controlvar short greetonce short OnPCHitMe short disabling float timer if ( menumode == 1 ) return endif if ( GetJournalIndex "BM_WolfGiver" >= 40 ) ;if ( CellChanged == 1 ) Disable endif endif ;if ( disabling == 2 ) ;if ( GetJournalIndex "BM_WolfGiver" >= 30 ) ;if ( CellChanged == 1 ) ;disable ;Return ;endif ;endif ;endif if ( disabling == 2 ) ;if ( GetJournalIndex "BM_WolfGiver" < 30 ) return endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "BM_WolfGiver" = 10 ) Enable "glenmoril_witch_altar"->Disable endif endif if ( disabling == 1 ) set timer to ( timer + getsecondspassed ) if (timer > .75 ) disable "glenmoril_witch_altar"->Enable "glenmoril_raven_cave"->Disable ;if (timer > 2.75 ) ;"glenmoril_witch_altar"->ForceGreeting set disabling to 2 endif ;return endif endif if ( GetDisabled == 0 ) if ( OnPCHitMe == 1 ) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "glenmoril_ring_bm" xpos ypos zpos 0 set disabling to 1 endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_WolfGiver" < 10 ) Disable ;"glenmoril_witch_altar"->Disable endif endif if ( GetDistance, Player <= 350 ) if ( GetDisabled == 0 ) if ( greetonce == 0 ) ForceGreeting set greetonce to -1 endif endif endif end GlenmorilRaven
145GlenmorilRavenCaveBegin GlenmorilRavenCave float xpos float ypos float zpos ; This script changes the Glenmoril Witch from Raven to human form. short controlvar short greetonce short OnPCHitMe short disabling float timer if ( menumode == 1 ) return endif if ( disabling == 2 ) return endif if ( disabling == 1 ) set timer to ( timer + getsecondspassed ) if (timer > 1.25 ) disable ;"glenmoril_witch_cave"->Enable set disabling to 2 endif return endif endif if ( GetDisabled == 0 ) if ( menumode == 0 ) if ( GetJournalIndex "BM_WolfGiver" = 30 ) set timer to ( timer + getsecondspassed ) if (timer > .75 ) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "glenmoril_ring_bm" xpos ypos zpos 0 set disabling to 1 endif endif endif endif if ( GetDisabled == 0 ) if ( OnPCHitMe == 1 ) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "glenmoril_ring_bm" xpos ypos zpos 0 set disabling to 1 endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_WolfGiver" < 10 ) Disable "glenmoril_witch_cave"->Disable endif endif ;if ( GetDisabled == 1 ) if ( GetJournalIndex "BM_WolfGiver" = 30 ) Enable "glenmoril_witch_cave"->Disable endif endif end GlenmorilRavenCave
146GlenmorilRingBegin GlenmorilRing float ringtimer short castonce if ( castonce == 0 ) ExplodeSpell "glenmoril_ring" Disable set castonce to 1 endif if ( ringtimer > 3 ) SetDelete 1 else set ringtimer to ( ringtimer + GetSecondsPassed ) endif End GlenmorilRing
147GlenmorilRitualBegin GlenmorilRitual short greetonce short nolore if ( GetJournalIndex "BM_Wolfgiver" >= 80 ) if ( GetJournalIndex "BM_Wolfgiver" < 120 ) Enable endif endif if ( GetJournalIndex "BM_Wolfgiver" < 80 ) Disable endif if ( GetDisabled == 0 ) if ( greetonce == 0 ) if ( GetDistance, Player <= 220 ) ForceGreeting set greetonce to -1 endif endif endif if ( GetJournalIndex BM_WolfGiver >= 120 ) if ( GetPCCell "Solstheim, Altar of Thrond" == 0 ) Disable endif endif End Glenmoril Ritual
148GlenmorilWitchAltarBegin GlenmorilWitchAltar short greetonce short nolore float timer if ( greetonce == -1 ) Return endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_WolfGiver" <= 10 ) Disable endif endif if ( GetJournalIndex "BM_WolfGiver" >= 30 ) Disable endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_WolfGiver" >= 20 ) set timer to ( timer + getsecondspassed ) if (timer > .75 ) if ( greetonce == 0 ) ForceGreeting set greetonce to -1 endif endif endif endif return End GlenmorilWitchAltar
149GlenmorilWitchCaveBegin GlenmorilWitchCave float xpos float ypos float zpos ; This script changes the Glenmoril Witch from Raven to human form. short controlvar short nolore short greetonce short disabling float timer if ( menumode == 1 ) return endif if ( GetDistance, Player <= 320 ) if ( GetDisabled == 0 ) if ( greetonce == 0 ) ForceGreeting set greetonce to -1 endif endif endif if ( disabling == 2 ) if ( GetJournalIndex "BM_WolfGiver" >= 80 ) ;if ( GetPCCell "Solstheim, Gloomy Cave" == 0 ) if ( CellChanged == 1 ) disable ;return endif endif endif if ( disabling == 2 ) if ( GetJournalIndex "BM_WolfGiver" < 80 ) enable return endif endif if ( disabling == 1 ) set timer to ( timer + getsecondspassed ) if (timer > 1.75 ) Enable set disabling to 2 endif ;return endif if ( GetDisabled == 1 ) if ( menumode == 0 ) if ( GetJournalIndex "BM_WolfGiver" = 30 ) set timer to ( timer + getsecondspassed ) if (timer > .75 ) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) ;Placeitem "glenmoril_ring_bm" xpos ypos zpos 0 set disabling to 1 endif endif endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_WolfGiver" < 30 ) Disable endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_WolfGiver" = 30 ) Disable endif endif end GlenmorilWitchCave
150GloomyCaveScriptBegin GloomyCaveScript short nolore if ( GetJournalIndex "BM_WolfGiver" < 30 ) Disable "furn_com_cauldron_unique"->Disable endif if ( GetJournalIndex "BM_WolfGiver" >= 30 ) if ( GetJournalIndex "BM_WolfGiver" < 80 ) Enable "furn_com_cauldron_unique"->Enable endif endif if ( GetJournalIndex "BM_WolfGiver" >= 80 ) if ( CellChanged == 1 ) "furn_com_cauldron_unique"->Disable Disable endif endif End GloomyCaveScript
151GrandfatherFrostScriptBegin GrandfatherFrostScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_MoonSugar >= 30 ) if ( GetJournalIndex BM_MoonSugar < 100 ) Journal BM_MoonSugar 80 endif endif endif End
152GrissSkullBegin GrissSkull if ( GetJournalIndex "BM_Trial" >= 100 ) Disable endif End GrissSkull
153heartfangChangeScriptBegin heartfangChangeScript short fangtalk if ( MenuMode == 1 ) return endif if ( fangtalk == 0 ) return endif if ( fangtalk == 1 ) if ( GetDistance Player <= 512 ) set fangtalk to 2 ForceGreeting endif endif end hearfangChangeScript
154heartfanghuntScriptBegin heartfanghuntScript short doOnce short AllowWerewolfForceGreeting float timer short playerwolf short fangtalk short nolore float xpos float ypos float zpos float zrotpos short greetOnce if ( GetJournalIndex BM_Wildhunt < 30 ) return endif if ( MenuMode == 1 ) return endif if ( OnDeath == 1 ) if ( GetJournalIndex BM_WildHunt > 0 ) MessageBox "As Heart-Fang breathes his last breath, the Hircine's Ring disappears from his finger, and has found a new owner." Player->AddItem BM_ring_hircine 1 Journal BM_WildHunt 69 endif endif if ( GetJournalIndex BM_WildHunt == 62 ) if ( GreetOnce == 0 ) if ( GetTarget Player == 1 ) set fangtalk to 2 set greetOnce to 1 ForceGreeting endif endif endif if ( doOnce == 0 ) if ( GetDistance Player <= 1024 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1 ) if ( player->IsWerewolf == 0 ) StopCombat Player SetFight 0 set playerwolf to 0 ForceGreeting set timer to 0 set doOnce to 1 elseif ( player->IsWerewolf == 1 ) set playerwolf to 1 ForceGreeting set timer to 0 set doOnce to 1 endif endif endif endif if ( fangtalk == 0 ) return endif if ( fangtalk == 1 ) if ( GetDistance Player <= 512 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 2 ) set fangtalk to 2 ForceGreeting return endif endif endif if ( fangtalk == 3 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 3 ) set fangtalk to 4 endif endif if ( fangtalk == 4 ) Set xpos to ( GetPos X ) Set ypos to ( GetPos Y ) Set zpos to ( GetPos Z ) Set zrotpos to ( GetAngle Z ) PlaceItem bm_wereeffect xpos ypos zpos zrotpos BecomeWerewolf StartCombat Player set fangtalk to 5 endif End heartfanghuntScript
155hircine1ScriptBegin hircine1Script short speech float timer float posx float posy float posz float posrotz if ( speech == 0 ) return endif if ( speech == 1 ) Say "Vo\Misc\bm_wildhunt1.wav" "Ahhh...you have arrived. The others have been here for days now, and you are the last. It is time for my Hunt, and you are to take part. I have chosen only the most worthy to take part the Hunt--Carius of the Imperials, Heart-Fang of the Skaal, the frost giant Karstaag....and you. You have proven yourself a worthy hunter, and so you have been given this honor." set speech to 2 DisablePlayerControls elseif ( speech == 2 ) if ( SayDone == 1 ) Say "Vo\Misc\bm_wildhunt2.wav" "You and the others are to find your way to my Hunting Grounds. Take great care, as only one of you will earn the glory of facing the Hunter himself in battle while the Bloodmoon lights the sky. The others have gone ahead, so only you remain to begin. Beware, mortal--my Hounds are about, and they hunger for blood. Perhaps I will see you soon. Now go." set speech to 3 endif elseif ( speech == 3 ) if ( SayDone == 1 ) set speech to 4 endif set posx to ( GetPos X ) set posy to ( GetPos Y ) set posz to ( GetPos Z ) set posrotz to ( GetAngle Z ) elseif ( speech == 4 ) PlaceItem BM_wereeffect posx posy posz posrotZ set speech to 5 elseif ( speech == 5 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.2 ) Journal BM_WildHunt 30 Disable StartScript BloodMoonMain EnablePlayerControls "falx carius2"->enable ;"falx carius"->PositionCell 1302.078 124.818 -304.206 1 "Solstheim, Mortrag Glacier: Outer Ring" ;"falx carius2"->AiWander 0 0 0 0 0 0 "tharsten heart-fang2"->enable ;"tharsten heart-fang"->PositionCell 1074.465 -1338.750 -271.974 1 "Solstheim, Mortrag Glacier: Inner Ring" ;"tharsten heart-fang"->AiWander 0 0 0 0 0 0 ;"tharsten heart-fang"->AddItem key_hircine2 1 set speech to 6 endif endif End hircine1Script
156hircine2ScriptBegin hircine2Script short speech short messageOn short button short aspect float posx float posy float posz float posrotz float timer if ( GetDisabled == 1 ) if ( speech < 6 ) set speech to 6 endif endif set posx to ( GetPos X ) set posy to ( GetPos Y ) set posz to ( GetPos Z ) set posrotz to ( GetAngle Z ) if ( speech == 6 ) if ( GetJournalIndex BM_WildHunt == 82 ) ;if ( player->GetDistance BM_mazegate_03 <= 1200 ) if ( GetDistance Player <= 512 ) PlaceItem bm_wereeffect posx posy posz posrotz set speech to 7 DisablePlayerControls endif endif endif if ( speech == 7 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.2 ) Enable set speech to 8 set timer to 0 endif endif if ( speech == 8 ) Say "Vo\Misc\bm_wildhunt3.wav" "So...you are the one. You have escaped my hounds and beaten back the other challengers. I had rather expected the giant to prevail, but no matter. You have proven yourself a worthy hunter, and you have earned the greatest honor that can be bestowed upon a mortal: you are to be my prey." set speech to 9 elseif ( speech == 9 ) if ( SayDone == 1 ) Say "Vo\Misc\bm_wildhunt4.wav" "I ask you, though: what is it that makes a hunter great. Is it his strength? The speed with which he strikes? Or is it his guile, the ability to outwit his prey? Answer me, mortal, and decide your fate." set speech to 10 Journal BM_WildHunt 85 return endif elseif ( speech == 10 ) if ( SayDone == 1 ) MessageBox "What is the hunter's greatest strength?" "Strength" "Speed" "Guile" set messageOn to 1 set speech to 11 endif endif if ( speech == 11 ) if ( messageOn == 1) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) set aspect to 1 Journal BM_WildHunt 87 elseif ( button == 1 ) set aspect to 2 Journal BM_WildHunt 88 elseif ( button == 2 ) set aspect to 3 Journal BM_WildHunt 89 endif endif endif if ( speech == 11 ) if ( aspect > 0 ) set speech to 12 endif endif if ( speech == 12 ) if ( aspect > 0 ) Say "Vo\Misc\bm_wildhunt5.wav" "So you have chosen, and so shall be your fate. To face me in all my glory would be less than sporting, so you shall face but one of my aspects, the one you have chosen. We have little time--the Bloodmoon sinks low in the sky. Prepare yourself, mortal, for now you are the Hunted." set speech to 13 endif elseif ( speech == 13 ) if ( SayDone == 1 ) PlaceItem bm_wereeffect posx posy posz posrotz set speech to 14 set timer to 0 endif endif if ( speech == 14 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 1.2 ) Disable set speech to 15 endif endif if ( speech == 15 ) EnablePlayerControls if ( aspect == 1 ) "bm_hircine_straspect"->Enable set speech to 16 elseif ( aspect == 2 ) "bm_hircine_spdaspect"->Enable set speech to 16 elseif ( aspect == 3 ) "bm_hircine_huntaspect"->Enable set speech to 16 endif endif End hircine2Script
157hircinechestScriptBegin hircinechestScript if ( OnActivate == 1 ) if ( "tharsten heart-fang2".fangtalk == 0 ) set "tharsten heart-fang2".fangtalk to 1 Activate endif endif End hircinechestScript
158hircinekey2ScriptBegin hircinekey2Script short doOnce if ( doOnce == 0 ) if ( player->GetItemCount key_hircine2 > 0 ) if ( GetJournalIndex BM_Wildhunt < 70 ) Journal BM_WildHunt 70 set doOnce to 1 endif endif endif End hircinekey2Script
159hircinekeyScriptBegin hircinekeyScript short doOnce if ( doOnce == 0 ) if ( player->GetItemCount key_hircine1 > 0 ) if ( GetJournalIndex BM_WildHunt < 50 ) Journal BM_WildHunt 50 set doOnce to 1 endif endif endif End hircinekeyScript
160hircineringScriptBegin hircineringScript short button short MessageOn short messageOnce short doOnce short OnPCEquip short reset short usering float timer float hourcheck float changetime if ( OnPCEquip == 0 ) set reset to 0 endif if ( reset == 1 ) return endif if ( OnPCEquip == 1 ) if ( reset == 0 ) if ( messageOnce == 0 ) ;Set OnPCEquip to 0 MessageBox "Would you like to use the Ring of Hircine?" "Yes" "No" set messageOn to 1 set messageOnce to 1 endif endif endif if ( messageOn == 1) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) set usering to 1 ;set reset to 1 elseif ( button == 1 ) set reset to 1 set messageOnce to 0 return endif endif if ( usering == 1 ) if ( OnPCEquip == 1 ) if ( MenuMode == 0 ) DisablePlayerControls FadeOut 5 set usering to 2 Set OnPCEquip to 0 set messageOnce to 0 if ( PCWerewolf == 1 ) set PCWerewolf to -2 endif endif else set usering to 0 set messageOnce to 0 return endif endif if ( usering == 2 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 5 ) PlayBink "bm_werewolf2.bik" 1 set usering to 3 set timer to 0 endif endif if ( usering == 3 ) Player->BecomeWereWolf Player->AddSpell "werewolf vision" Player->AddSpell "werewolf regeneration" Player->SetWereWolfAcrobatics FadeIn 5 set usering to 4 set timer to 0 endif if ( usering == 4 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 5 ) EnablePlayerControls set usering to 5 set hourcheck to ( GameHour + 6 ) if ( hourcheck > 24 ) set ChangeTime to 1 set hourcheck to ( hourcheck - 24 ) endif endif endif if ( usering == 5 ) if ( ChangeTime == 0 ) if ( GameHour > hourcheck ) set usering to 6 set timer to 0 endif elseif ( ChangeTime == 1 ) if ( GameHour < 6 ) if ( GameHour > hourcheck ) set usering to 6 set timer to 0 endif endif endif endif if ( usering == 6 ) DisablePlayerControls FadeOut 5 set usering to 7 endif if ( usering == 7 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 5 ) Player->UndoWerewolf Player->RemoveSpell "werewolf vision" Player->RemoveSpell "werewolf regeneration" set usering to 8 set timer to 0 endif endif if ( usering == 8 ) FadeIn 5 set usering to 9 endif if ( usering == 9 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 5 ) EnablePlayerControls set reset to 1 set usering to 0 set timer to 0 set ChangeTime to 0 if ( PCWerewolf == -2 ) set PCWerewolf to 1 endif endif endif End hircineringScript
161HroldarRingBegin HroldarRing float ringtimer short castonce if ( castonce == 0 ) ExplodeSpell "Hroldar_death" Disable set castonce to 1 endif if ( ringtimer > 3 ) SetDelete 1 else set ringtimer to ( ringtimer + GetSecondsPassed ) endif End HroldarRing
162HroldarScriptBegin HroldarScript short nolore short initialized short OnPCHitMe short hroldargreet short hroldarbeaten short walkonce short hroldardead short castonce short away short atdoor short placed float deathtimer float fatiguestart float healthstart float fatiguecurrent float healthcurrent float xpos float ypos float zpos if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_2" < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_2" >= 10 ) if ( hroldardead == 0 ) if ( hroldarbeaten == 0 ) Enable endif endif endif endif if ( GetJournalIndex CO_2 >=90 ) if ( GetDisabled == 0 ) Disable endif endif if ( GetJournalIndex CO_2 == 10 ) if ( placed == 0 ) Position -198195.625 160980.813 972.612 270 AIWander 0 0 0 0 0 0 0 0 0 set placed to 1 endif endif if ( GetJournalIndex "CO_2" < 40 ) if ( OnPCHitMe == 1 ) SetFight 100 StartCombat Player endif endif if ( hroldarbeaten == 0 ) if ( atdoor == 0 ) if ( ColonyState >= 2 ) if ( GetDistance "ex_colony_minedoor" >= 512 ) StopCombat SetFight 30 set away to 1 set atdoor to 1 endif endif endif endif if ( away == 1 ) AITravel -198195.625 160980.813 972.612 270 set away to 0 endif if ( atdoor == 1 ) if ( GetDistance "ex_colony_minedoor" < 256 ) set atdoor to 0 endif endif if ( GetJournalIndex CO_2 >= 10 ) if ( GetJournalIndex CO_2 < 90 ) if ( OnDeath == 1 ) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "Hroldar_ring" xpos ypos zpos 0 Disable Journal CO_2 60 set hroldardead to 1 endif endif endif if ( hroldardead == 0 ) If ( GetJournalIndex CO_2 == 40 ) if ( initialized == 0 ) set fatiguestart to GetFatigue set healthstart to GetHealth set initialized to 1 set hroldargreet to 1 endif if ( OnPCHitMe == 1 ) set fatiguecurrent to GetFatigue set healthcurrent to GetHealth if ( fatiguestart > fatiguecurrent ) StopCombat SetFight 0 endif if ( healthstart > healthcurrent ) StopCombat Player SetFight 0 endif if ( hroldargreet == 1 ) set hroldargreet to 2 elseif ( hroldargreet == 2 ) if ( fatiguecurrent <= 150 ) ForceGreeting set hroldargreet to 3 endif endif elseif ( hroldargreet == 3 ) if ( fatiguecurrent <= 50 ) set hroldarbeaten to 1 ForceGreeting SetFight 30 endif endif set OnPCHitMe to 0 endif elseif ( OnPCHitMe == 1 ) SetFight 100 StartCombat Player endif endif if ( walkonce == 0 ) if ( hroldarbeaten == 1 ) AITravel -197877.984 163202.344 1197.672 0 set walkonce to 1 endif endif End HroldarScript
163HrothmundAxeBegin HrothmundAxe Short axegrabber if ( menumode == 1 ) return endif if ( GetJournalIndex BM_MeadHall < 40 ) return endif if ( axegrabber == -1 ) return endif ;if ( GetJournalIndex BM_MeadHall = 70 ) ;return ;endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_MeadHall >= 40 ) if ( GetJournalIndex BM_MeadHall < 110 ) Cast "hrothmund blessing" Player MessageBox "You grasp the mighty axe of Hrothmund, and utter your intention to rule over Thirsk. In answer of approval, Hrothmund grants his blessing." Journal BM_MeadHall 70 set axegrabber to -1 endif endif endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_MeadHall = 110 ) MessageBox "You grasp the mighty axe of Hrothmund, and utter your intention to rule over Thirsk. Hrothmund does not grant his blessing." Journal BM_MeadHall 120 set axegrabber to -1 endif endif End HrothmundAxe
164hunter2ScriptBegin hunter2Script ;THIS SCRIPT SHOULD CAUSE HUNTERS TO HEAD TO TOTEM, THEN HEAD TO DOOR ;SHOULD ALSO GIVE MESSAGE BOXES FOR THESE EVENTS ;SHOULD KEEP COUNT OF HOW MANY ARE KILLED AND GIVE JOURNAL ENTRY FOR COMPLETION AND FAILURE ;SHOULD SEND TOTEM BACK TO CHEST ON NPC DEATH short state short nolore if ( GetJournalIndex BM_Ceremony2 >= 100 ) return endif if ( huntersdead >= 12 ) if ( huntercount == 0 ) if ( GetJournalIndex BM_Ceremony2 < 50 ) MessageBox "The tide of Skaal hunters has receded. They have abandoned their quest for the Totem of Claw and Fang." Journal BM_Ceremony2 50 endif endif endif if ( OnDeath == 1 ) set huntersdead to ( huntersdead + 1 ) set huntercount to ( huntercount - 1 ) if ( GetItemCount Misc_BM_ClawFang_UNIQUE > 0 ) RemoveItem Misc_BM_ClawFang_UNIQUE 1 Chest_ClawFang_Unique->AddItem Misc_BM_ClawFang_UNIQUE 1 MessageBox "With the death of the Skaal hunter, the Totem of Claw and Fang has magically returned to its resting place." endif endif if ( state == 0 ) AiTravel -15.674 -7223.188 -126.798 set state to 10 elseif ( state == 10 ) if ( GetAiPackageDone == 1 ) if ( GetDistance Chest_ClawFang_Unique <= 128 ) if ( Chest_ClawFang_Unique->GetItemCount Misc_BM_ClawFang_UNIQUE > 0 ) AddItem Misc_BM_ClawFang_UNIQUE 1 Chest_ClawFang_Unique->RemoveItem Misc_BM_ClawFang_UNIQUE 1 MessageBox "One of the Skaal hunters has found the Totem of Claw and Fang." set state to 20 else set state to 20 endif endif endif elseif ( state == 20 ) AiTravel 0.989 122.245 -66.969 set state to 30 elseif ( state == 30 ) if ( GetAiPackageDone == 1 ) if ( GetDistance Ex_BM_tomb_door_skaalara <= 256 ) MessageBox "A Skaal hunter has escaped with the Totem of Claw and Fang. Your mission has failed." Journal BM_Ceremony2 105 set state to 40 Disable endif endif endif End hunter2Script
165hunter3ScriptBegin hunter3Script short nolore if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Ceremony2 < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Ceremony2 >= 10 ) Enable endif endif if ( OnDeath == 1 ) set huntersdead to ( huntersdead + 1 ) endif End hunter3Script
166hunteract1ScriptBegin hunteract1Script float playerdistance set playerdistance to ( GetDistance Player ) End hunteract1 Script
167hunterScriptBegin hunterScript float timer float DistanceA float DistanceB float DistanceC short popA short popB short popC if ( GetJournalIndex BM_Ceremony2 < 10 ) return endif ;THIS STOPS THE SCRIPT IF PLAYER HAS KILLED ENOUGH HUNTERS if ( huntersdead >= 12 ) return endif ;THIS MAKES SURE HUNTERS DON'T POP UNTIL HUNTERS ALREADY IN CELL ARE GONE if ( huntersdead < 4 ) return endif ;THIS SETS VARIABLES TO DISTANCES FROM PLAYER TO POP SPOTS set DistanceA to ( Player->GetDistance "active_BM_hunter1" ) set DistanceB to ( Player->GetDistance "active_BM_hunter2" ) set DistanceC to ( Player->GetDistance "active_BM_hunter3" ) set popA to 0 set popB to 0 set popC to 0 ;THIS CHECKS WHICH POP SPOT IS FARTHEST FROM PLAYER if ( DistanceA > DistanceB ) if ( DistanceA > DistanceC ) set popA to 1 elseif ( DistanceC > DistanceA ) set popC to 1 endif elseif ( DistanceB > DistanceA ) if ( DistanceB > DistanceC ) set popB to 1 elseif ( DistanceC > DistanceB ) set popC to 1 endif endif ;THIS MAKES SURE THAT TOO MANY HUNTERS AREN'T PRESENT AT ONCE if ( huntercount >= 3 ) return endif ;THIS MAKES HUNTERS APPEAR EVERY 18 SECONDS UNTIL MAX IS REACHED set timer to ( timer + GetSecondsPassed ) if ( timer <= 18 ) return endif ;THIS POPS IN A HUNTER AT APPROPRIATE SPOT, INCREMENTS HUNTERCOUNT, AND RESETS TIMER if ( popA == 1 ) "active_BM_hunter1"->PlaceAtMe skaal_hunter 1 1 1 set huntercount to ( huntercount + 1 ) set timer to 0 elseif ( popB == 1 ) "active_BM_hunter2"->PlaceAtMe skaal_hunter 1 1 1 set huntercount to ( huntercount + 1 ) set timer to 0 elseif ( popC == 1 ) "active_BM_hunter3"->PlaceAtMe skaal_hunter 1 1 1 set huntercount to ( huntercount + 1 ) set timer to 0 endif End hunterScript
168icewallcrackScriptBegin icewallcrackScript short doOnce if ( doOnce == 0 ) if ( GetJournalIndex BM_Sun == 40 ) PlaySound "BM Sun" set doOnce to 1 endif endif End icewallcrackScript
169icewallScriptBegin icewallScript short doOnce short button short MessageOn short lightup if ( doOnce == 0 ) PlayGroup idle set doOnce to 1 endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_Sun < 30 ) MessageBox "The large ice wall appears impenetrable." elseif ( GetJournalIndex BM_Sun == 30 ) if ( Player->GetItemCount ingred_eyeball_unique > 0 ) MessageBox "Would you like to throw the flaming eye at the ice wall?" "Yes" "No" set MessageOn to 1 else MessageBox "The ice wall appears impenetrable." endif else MessageBox "The ice wall has crumbled." endif endif if ( messageOn == 1) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) LoopGroup idle2 0 1 Player->RemoveItem ingred_eyeball_unique 1 Journal BM_Sun 40 elseif ( button == 1 ) return endif endif if ( lightup == 1 ) endif End icewallScript
170IcicleScriptBegin IcicleScript if ( GetDisabled == 0 ) if ( PCWerewolf == 0 ) Disable elseif ( GetJournalIndex BM_SkaalAttack >= 30 ) if ( GetJournalIndex BM_WildHunt < 100 ) Disable endif endif elseif ( GetDisabled == 1 ) if ( PCWerewolf == 1 ) if ( GetJournalIndex BM_SkaalAttack < 30 ) Enable elseif ( GetJournalIndex BM_WildHunt >= 100 ) Enable endif endif endif End IcicleScript
171IngmarFollowbegin IngmarFollow short nolore short followNow short distanceCheck float timer if ( MenuMode == 1 ) return endif if ( GetJournalIndex BM_Ingmar <= 20 ) return endif if ( GetJournalIndex BM_Ingmar >= 40 ) return endif endif if ( GetCurrentAiPackage == 3 ) ;if follow is the current package, set followNow and continue... set followNow to 1 SetHello 0 if ( GetDeadCount "draugr_valbrandr" > 0 ) Set followNow to 0 endif if ( timer < 2 ) set timer to ( timer + GetSecondsPassed) return endif if ( GetDistance Player < NPCVoiceDistance ) if ( GetDistance Player < 500 ) set distanceCheck to 0 endif set timer to 0 return endif if ( distanceCheck == 0 ) Say "Vo\N\M\Flw_NM001.mp3" "Do you know where you're going?" set distanceCheck to 1 endif else ;if follow is NOT the current package, make sure followNow is zero Set followNow to 0 endif if ( OnDeath = 1 ) Journal "BM_Ingmar" 35 endif End
172IngmarTeleportBegin IngmarTeleport if ( GetPCCell "Solstheim, Valbrandr Barrow" == 0 ) PositionCell, -121, 452, -236, 0, "Skaal Village, Ingmar's House" AiWander 512 0 0 40 20 20 0 0 0 0 0 0 StopScript IngmarTeleport endif endif End IngmarTeleport
173JastalOutsideBegin JastalOutside Short NoLore if ( "bereditte jastal"->GetHealth <=0 ) Disable Return endif if ( GetHealth <=0 ) "bereditte jastal"->Disable Return endif if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Enable endif endif if ( GetJournalIndex "BM_MeadHall" < 40 ) Disable endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) if ( GetHealth > 0 ) Disable endif endif End JastalOutside
174JastalThirskBegin JastalThirsk Short NoLore if ( "bereditte jastal_out"->GetHealth <=0 ) Disable Return endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) Enable endif if ( GetHealth > 0 ) if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Disable endif endif endif End JastalThirsk
175JeleenNoteBegin JeleenNote if ( GetJournalIndex "BM_Missionary" < 130 ) Disable endif End JeleenNote
176JeleenScriptBegin JeleenScript short nolore if ( CellChanged == 1 ) if ( GetJournalIndex BM_Missionary >= 130 ) "jeleen"->SetHealth 0 "jeleen"->additem "sc_jeleen" 1 StopScript JeleenScript endif endif End JeleenScript
177karstaagdoor1ScriptBegin karstaagdoor1Script if ( OnActivate == 1 ) if ( GetJournalIndex BM_FrostGiant2 >= 10 ) if ( Player->IsWerewolf == 1 ) Activate else MessageBox "The master of this castle has only given permission for a werewolf to enter." endif else MessageBox "The master of this castle has not given you permission to enter." endif endif End karstaagdoor1Script
178karstaagdoor2ScriptBegin karstaagdoor2Script if ( OnActivate == 1 ) if ( BM_riekling_Krish_UNIQU.opendoor == 1 ) if ( Player->GetDistance BM_riekling_Krish_UNIQU <= 512 ) Activate endif elseif ( PCWerewolf == 1 ) if ( GetJournalIndex BM_FrostGiant2 > 0 ) Activate endif else MessageBox "The castle above may not be entered until permission is granted by the master of the castle." return endif endif End karstaagdoor2Script
179karstaagentryScriptBegin karstaagentryScript short doOnce if ( GetJournalIndex BM_FrostGiant1 == 30 ) if ( GetDistance Player <= 400 ) if ( doOnce == 0 ) Journal BM_FrostGiant1 40 set doOnce to 1 endif endif endif End karstaagentryScript
180karstaagtrollScriptBegin karstaagtrollScript short doOnce short onfire short hasspell if ( GetJournalIndex BM_FrostGiant2 > 10 ) if ( krishcount == 9 ) if ( GetJournalIndex BM_FrostGiant2 < 70 ) Journal BM_FrostGiant2 70 else return endif endif endif if ( doOnce == 1 ) return endif if ( GetSpell BM_fireregen == 1 ) set hasspell to 1 endif if ( GetEffect sEffectFireDamage == 0 ) if ( onfire == 1 ) set onfire to 0 endif elseif ( GetEffect sEffectFireDamage == 1 ) if ( onfire == 0 ) set onfire to 1 endif endif if ( onfire == 1 ) if ( hasspell == 1 ) RemoveSpell "BM_fireregen" set hasspell to 0 endif elseif ( onfire == 0 ) if ( hasspell == 0 ) AddSpell "BM_fireregen" set hasspell to 1 endif endif if ( GetJournalIndex BM_FrostGiant1 > 10 ) if ( trollsdead == 8 ) return endif endif if ( OnDeath == 1 ) if ( doOnce == 0 ) set trollsdead to ( trollsdead + 1 ) set krishcount to ( krishcount + 1 ) set doOnce to 1 endif endif End karstaagtrollScript
181karstcavdoorScriptBegin karstcavdoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_FrostGiant1 >= 30 ) Disable elseif ( GetJournalIndex BM_WildHunt >= 100 ) Disable endif endif End karstcavdoorScript
182korstScriptBegin korstScript short nolore short hasdisease if ( Player->GetSpell "werewolf blood" == 1 ) set hasdisease to 1 else set hasdisease to 0 endif End korstScript
183krishScriptBegin krishScript short doOnce short openDoor short followreset float timer if ( GetJournalIndex BM_FrostGiant1 < 10 ) if ( GetJournalIndex BM_FrostGiant2 < 10 ) return endif endif if ( GetJournalIndex BM_FrostGiant1 == 80 ) ;this section makes sure that his follow gets reset if Krish gets lost and confused if ( followreset == 0 ) if ( MenuMode == 0 ) AiWander 128 0 0 0 0 0 set followreset to 1 endif elseif ( followreset == 1 ) if ( MenuMode == 0 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 2 ) AiFollow Player 0 0 0 0 0 0 set followreset to 2 endif endif endif endif if ( doOnce == 0 ) if ( GetJournalIndex BM_FrostGiant1 >= 10 ) setfight 30 set doOnce to 1 elseif ( GetJournalIndex BM_FrostGiant2 >= 10 ) setfight 90 set doOnce to 1 endif endif if ( doOnce == 1 ) if ( GetJournalIndex BM_FrostGiant1 >= 30 ) if ( GetDistance Player <= 512 ) ForceGreeting set doOnce to 2 endif endif endif if ( OnDeath == 1 ) if ( GetJournalIndex BM_FrostGiant1 >= 75 ) if ( GetJournalIndex BM_FrostGiant1 < 90 ) Journal BM_FrostGiant1 85 endif elseif ( GetJournalIndex BM_FrostGiant2 == 50 ) set krishcount to ( krishcount + 1 ) endif endif if ( trollsdead == 8 ) if ( openDoor == 0 ) if ( GetDistance Player <= 512 ) if ( GetJournalIndex BM_FrostGiant1 > 0 ) ;Journal BM_FrostGiant1 80 ForceGreeting set openDoor to 1 endif endif endif endif End krishScript
184LairDoorBegin LairDoor if ( GetJournalIndex "BM_Trial" >= 100 ) Enable "terrain_BM_ice_unique"->Disable endif if ( GetJournalIndex "BM_Trial" < 100 ) Disable "terrain_BM_ice_unique"->Enable endif End LairDoor
185lakefireScriptBegin lakefireScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Trial < 100 ) Disable elseif ( GetJournalIndex BM_WildHunt >= 100 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Trial >= 100 ) if ( GetJournalIndex BM_WildHunt < 100 ) Enable endif endif endif End lakefireScript
186LassnrScriptBegin LassnrScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_Tymvaul >= 30 ) Journal BM_Tymvaul 110 endif endif End LassnrScript
187LorkhanHeartbegin LorkhanHeart short sunderHit ;were hit by Sunder THIS FRAME short keeningHit ;were hit by Keening THIS FRAME short countHits ;number of times you hit with Keening short countSays ;make sure you don't Say over and over short doOnce ;teleport Dagoth Ur once if ( menumode == 1 ) return endif if ( HeartDestroyed == 1 ) if ( doOnce == 2 ) return endif if ( CellChanged == 1 ) Disable Set doOnce to 2 endif if ( CellChanged == 0 ) if ( GetSoundPlaying "endrumble" == 0 ) ;play rumbling sound after heart is dead, until player leaves PlayLoopSound3D "endrumble" endif endif if ( GetSoundPlaying "heart" == 1 ) StopSound "heart" endif if ( GetSoundPlaying "heartSunder" == 1 ) StopSound "heartSunder" endif return endif if ( sunderHit == 0 ) ;test if you hit with Sunder until you hit with Sunder Set sunderHit to HitOnMe Sunder endif ;test if you hit with Keening every frame, also make heart immortal Set keeningHit to HitOnMe Keening SetHealth 5000 if ( doOnce == 0 ) if ( GetDistance Player < 500 ) "dagoth_ur_2"->PositionCell -40 2590 -180 320 "Akulakhan's Chamber" "dagoth_ur_2"->StartCombat Player Set doOnce to 1 endif endif if ( sunderHit == 1 ) ;play correct sounds before & after sunder ;return if you've never hit with Sunder if ( HeartDestroyed == 0 ) if ( CellChanged == 0 ) if ( GetSoundPlaying "heartSunder" == 0 ) PlayLoopSound3D "heartsunder" endif endif endif else if ( CellChanged == 0 ) if ( GetSoundPlaying "heart" == 0 ) PlayLoopSound3D, "heart" endif endif return endif if ( keeningHit == 0 ) ;only process rest of script when hit with keening return endif ;if player hit with Keening THIS FRAME, do all this stuff... Set countHits to ( countHits + 1 ) if ( countHits == 0 ) if ( countSays != 0 ) Set countSays to 0 endif return endif if ( countHits == 1 ) if ( countSays == 0 ) Say "vo\misc\Hit Heart 1.wav" "What are you doing?" "dagoth_ur_2"->SetFight 100 "dagoth_ur_2"->StartCombat Player Set countSays to 1 endif PlayGroup Idle2 endif if ( countHits == 2 ) if ( countSays == 1 ) Say "vo\misc\Hit Heart 2.wav" "WHAT ARE YOU DOING?!" Set countSays to 2 endif PlayGroup Idle3 endif if ( countHits == 3 ) if ( countSays == 2 ) Say "vo\misc\Hit Heart 3.wav" "FOOL!" Set countSays to 3 endif PlayGroup Idle4 endif if ( countHits == 4 ) if ( countSays == 3 ) Say "vo\misc\Hit Heart 4.wav" "STOP!" Set countSays to 4 endif PlayGroup Idle5 endif if ( countHits > 4 ) if ( countSays == 4 ) Say "vo\misc\Hit Heart 6.wav" "This is the end. The bitter, bitter end." Set countSays to 5 endif if ( GetSoundPlaying "heart" == 1 ) StopSound "heart" endif if ( GetSoundPlaying "heartSunder" == 1 ) StopSound "heartSunder" endif PlayGroup Death1 set HeartDestroyed to 1 endif End
188luciusScriptBegin luciusScript short doOnce short gavebooze short nolore if ( OnDeath == 1 ) ;THIS IS TO KEEP HIM FROM GREETING IF HE'S A CORPSE, WHICH IS TACKY set doOnce to -1 if ( artoriachosen >= 0 ) if ( GetJournalIndex BM_Smugglers < 30 ) set artoriachosen to -9 endif endif endif if ( luciuschosen == -9 ) StartCombat Player SetFight 100 endif if ( doOnce == 0 ) if ( GetJournalIndex BM_Smugglers == 100 ) if ( luciuschosen == 1 ) if ( GetDistance Player <= 256 ) set luciuschosen to 2 set doOnce to 1 ForceGreeting endif endif endif endif End luciusScript
189LycanthropycureBegin Lycanthropycure short done short OnPCEquip short PCSkipEquip short onground short mqstatus if ( done == 1 ) Set PCSkipEquip to 0 return endif if ( GetJournalIndex BM_SkaalAttack < 30 ) set mqstatus to 0 elseif ( GetJournalIndex BM_WildHunt >= 100 ) set mqstatus to 0 else set mqstatus to 1 endif if ( player->GetItemCount sc_lycanthropycure > 0 ) set onground to 0 endif if ( onground == 1 ) return endif if ( PCWerewolf != 1 ) return endif set PCSkipEquip to 1 if ( GetJournalIndex BM_Lycanthropycure < 20 ) if ( onactivate == 1 ) if ( mqstatus == 1 ) MessageBox "As you read the Scroll of the Wolf Ender, your Master's voice echoes in your ear, 'Not yet, My Hound.'" set onground to 1 activate else MessageBox "You read the Scroll of the Wolf Ender. You have been cleansed of the werewolf curse." Journal "BM_Lycanthropycure" 20 Set PCWerewolf to -1 Set PCKnownWerewolf to 0 set done to 1 activate endif endif endif if ( GetJournalIndex BM_Lycanthropycure >= 20 ) if ( OnPCEquip == 1 ) set done to 1 activate endif endif if ( GetJournalIndex BM_Lycanthropycure < 20 ) if ( OnPCEquip == 1 ) if ( mqstatus == 1 ) MessageBox "As you read the Scroll of the Wolf Ender, your Master's voice echoes in your ear, 'Not yet, My Hound.'" activate set OnPCEquip to 0 else MessageBox "You read the Scroll of the Wolf Ender. You have been cleansed of the werewolf curse." Journal "BM_Lycanthropycure" 20 Set PCWerewolf to -1 Set PCKnownWerewolf to 0 set done to 1 activate endif endif endif End Lycanthropycure
190mazegate1ScriptBegin mazegate1Script if ( OnActivate == 1 ) if ( player->IsWerewolf == 0 ) if ( player->GetItemCount key_hircine1 > 0 ) ;Player->PositionCell 202.906 -1771.622 -303.294 180 "Solstheim, Mortrag Glacier: Inner Ring" Activate else MessageBox "Only a beast or one with the key may pass through this gate." endif else Activate ;Player->PositionCell 202.906 -1771.622 -303.294 180 "Solstheim, Mortrag Glacier: Inner Ring" endif endif End mazegate1Script
191mazegate2ScriptBegin mazegate2Script if ( OnActivate == 1 ) if ( player->IsWerewolf == 0 ) if ( player->GetItemCount key_hircine2 > 0 ) Activate ;Player->PositionCell 33.784 -1428.056 5.997 0 "Solstheim, Mortrag Glacier: Huntsman's Hall" else MessageBox "Only a beast or one with the key may pass through this gate." endif else Activate ;Player->PositionCell 33.784 -1428.056 5.997 0 "Solstheim, Mortrag Glacier: Huntsman's Hall" endif endif End mazegate2Script
192mazegate3ScriptBegin mazegate3Script short binkplayed if ( OnActivate == 1 ) if ( player->IsWerewolf == 0 ) if ( player->GetItemCount key_hircine3 > 0 ) if ( GetJournalIndex BM_WildHunt >= 92 ) ;PlayBink "bm_endgame.bik" 1 set binkplayed to 1 Player->PositionCell -201650.438 215543.578 118.587 120 "Solstheim, Mortrag Glacier" endif else MessageBox "Only one with the key may pass through this gate." endif elseif ( GetJournalIndex BM_WildHunt < 92 ) MessageBox "Even a beast must finish Hircine's Hunt before passing through this gate." elseif ( GetJournalIndex BM_WildHunt >= 92 ) ;PlayBink "bm_endgame.bik" 1 set binkplayed to 1 Player->PositionCell -201650.438 215543.578 118.587 120 "Solstheim, Mortrag Glacier" endif endif if ( binkplayed == 1 ) bm_ex_iceberg->Disable bm_ex_iceberg_collapsed->Enable PlayBink "bm_endgame.bik" 1 ;Player->PositionCell -201650.438 215543.578 118.587 120 "Solstheim, Mortrag Glacier" if ( GetDeadCount "falx carius2" == 0 ) "falx carius"->Enable endif set binkplayed to 2 Journal BM_WildHunt 100 endif End mazegate3Script
193meadhallheadbegin meadhallhead if ( GetJournalIndex "BM_MeadHall_c" < 20 ) Disable endif if ( GetJournalIndex "BM_MeadHall_c" >= 20 ) Enable StopScript MeadScript endif end meadhallhead
194MeadScriptBegin MeadScript if ( GetJournalIndex "BM_MeadHall_b" < 20 ) Disable endif if ( GetJournalIndex "BM_MeadHall_b" >= 20 ) Enable StopScript MeadScript endif End Mead Script
195MirisaFollowBegin MirisaFollow short noLore short followNow short distanceCheck float timer ;global NPCVoiceDistance if ( MenuMode == 1 ) Return endif if ( OnDeath == 1 ) if ( GetJournalIndex BM_Missionary >= 10 ) if ( GetJournalIndex BM_Missionary < 100 ) Journal BM_Missionary 120 endif endif endif if ( GetJournalIndex BM_Missionary = 100 ) Return endif if ( GetJournalIndex "BM_Missionary" < 60 ) Return endif if ( GetHealth <= 0 ) return endif if ( GetCurrentAiPackage == 3 ) ;if follow is the current package, set followNow and continue... set followNow to 1 SetHello 0 if ( timer < 2 ) set timer to ( timer + GetSecondsPassed ) return endif if ( GetPCCell "Fort Frostmoth, Imperial Cult Shrine" == 1 ) Journal BM_Missionary 100 set followNow to 0 AiWander 256 0 0 40 20 20 0 0 0 0 0 0 Say "Vo\R\F\Flw_RF006.mp3" "Thank you." SetHello 30 endif if ( GetDistance Player < NPCVoiceDistance ) if ( GetDistance Player < 500 ) set distanceCheck to 0 endif set timer to 0 return endif if ( distanceCheck == 0 ) Say "Vo\R\F\Flw_RF004.mp3" "Wait for me!" set distanceCheck to 1 endif else ;if follow is NOT the current package, make sure followNow is zero set followNow to 0 endif End MirisaFollow
196MirisaTeleportBegin MirisaTeleport if ( GetJournalIndex "BM_Missionary" < 60 ) if ( "mirisa"->GetHealth > 0 ) "mirisa"->PositionCell, 909, 1426, -77, 360, "Solstheim, Solvjord" AiWander 512 0 0 40 20 20 0 0 0 0 0 0 StopScript MirisaTeleport endif endif End MirisaTeleport
197MockChangeScriptBegin MockChangeScript ;THIS SCRIPT WILL CHECK THE TIME OF DAY FOR WEREWOLF PLAYERS, CHANGE THEM INTO WOLF FORM, AND CHANGE THEM BACK ;AT LEAST IN THEORY short makewolf short fadecontrol short fir`stdream short fakeiswere float timer if ( PCWerewolf != 1 ) ;DON'T RUN IF PLAYER ISN'T WEREWOLF MessageBox "RETURNING BC PLAYER ISN'T A WEREWOLF" return endif if ( makewolf == 2 ) MessageBox "MAKEWOLF IS 2 NOW." if ( GetWerewolfKills == 0 ) return endif Player->RemoveSpell "werewolf hunger" ;REMOVE THE BLOODLUST ONCE AN NPC IS KILLED set makewolf to 0 endif if ( makewolf == 1 ) if ( timer < 5 ) ;MessageBox "INCREMENTING TIMER" set timer to ( timer + GetSecondsPassed ) return endif if ( fadecontrol == 0 ) ;FADE THE PLAYER BACK IN, MAKE WOLF if ( firstdream == 0 ) ;PlayBink "FIRST CHANGE MOVIE" ;PLAY FIRST WEREWOLF CHANGE DREAM MessageBox "SHOULD NOW PLAY FIRST CHANGE DREAM BINK" Player->RemoveSpell "werewolf blood" MessageBox "REMOVED WEREWOLF BLOOD SPELL" set firstdream to 1 elseif ( firstdream == 1 ) ;PlayBink "OTHER CHANGE MOVIE" ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK" endif if ( Player->fakeiswere == 0 ) set fakeiswere to 1 MessageBox "PLAYER MADE A WEREWOLF" endif FadeIn 5 MessageBox "SHOULD NOW FADE IN" set fadecontrol to 1 set timer to 0 return elseif ( fadecontrol == 1 ) ; GIVE CONTROLS AFTER FADE IN, ADD BLOODLUST set makewolf to 2 MessageBox "SHOULD NOW ADD BLOODLUST" ;Player->AddSpell "werewolf hunger" EnablePlayerControls set fadecontrol to 0 return endif ;MessageBox "MAKEWOLF IS ONE NOW AND IT JUST RAN THROUGH THAT PART" endif ;MessageBox "SHOULD BE CHECKING TIME OF DAY NOW" if ( GameHour < 21 ) ;CHECK THAT IT'S NIGHT if ( GameHour > 6 ) if ( fakeiswere == 1 ) ;CHANGE PLAYER BACK WHEN IT'S DAYTIME MessageBox "PLAYER SHOULD CHANGE BACK FOR DAYTIME NOW" ;UndoWerewolf set fakeiswere to 0 set makewolf to 0 endif return endif endif ;MessageBox "IT IS THAT TIME OF NIGHT!!!" if ( fakeiswere == 0 ) ;CHECK THAT PLAYER ISN'T ALREADY WERE-FORM set makewolf to 1 ;MessageBox "MAKEWOLF IS 1. PLAYER SHOULD LOSE CONTROL AND FADE" DisablePlayerControls ;TAKE PLAYER CONTROL, FADE OUT FadeOut 5 return elseif ( fakeiswere == 1 ) return endif End MockChangeScript
198musicdoor2ScriptBegin musicdoor2Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Earth < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Earth >= 10 ) Enable endif endif End musicdoor2Script
199musicdoorScriptBegin musicdoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Earth >= 10 ) Disable endif endif End musicdoorScript
200nunciusClosetScriptBegin nunciusClosetScript short haskey if ( OnActivate == 1 ) if ( player->GetItemCount key_nuncius == 0 ) if ( haskey == 0 ) if ( GetLocked == 0 ) MessageBox "Although the strange lock appears to have been disabled, this closet cannot open without the key." else MessageBox "The strange lock on this closet cannot be opened without the key." endif endif elseif ( player->GetItemCount key_nuncius == 0 ) if ( haskey == 1 ) Activate endif else Activate set haskey to 1 endif endif End nunciusClosetScript
201nunciuskeyScriptBegin nunciuskeyScript short nolore if ( OnDeath == 1 ) if ( GetJournalIndex BM_Morale < 95 ) "antonius nuncius"->AddItem key_nuncius 1 endif endif End nunciuskeyScript
202nunciusStashScriptBegin nunciusStashScript ;if ( GetJournalIndex BM_Morale >= 100 ) ;return ;endif if ( OnActivate == 1 ) if ( GetLocked == 0 ) if ( GetJournalIndex BM_Morale >= 50 ) if ( GetJournalIndex BM_Morale < 80 ) Journal BM_Morale 80 set FoundBooze to 1 endif else set FoundBooze to 1 endif endif Activate endif End nunciusStashScript
203OddfridFindBegin OddfridFind short done if ( done == 1 ) return endif if ( GetJournalIndex "BM_SadSeer" < 20 ) Disable endif if ( GetJournalIndex "BM_SadSeer" >= 20 ) Enable endif if ( GetJournalIndex BM_SadSeer >= 20 ) if ( onactivate == 1 ) Journal "BM_SadSeer" 37 set done to 1 activate endif endif End OddfridFind
204OddRumorScriptBegin OddRumorScript short done if ( done == 1 ) return endif if ( PCWerewolf == 1 ) enable endif if ( PCWerewolf <= 0 ) disable endif ;if ( GetJournalIndex BM_WolfGiver < 10 ) if ( onactivate == 1 ) Journal "BM_WolfGiver" 10 set done to 1 activate endif endif End OddRumorScript
205OutsideBannerbegin OutsideBanner ;this script is for a banner object outside that ;animates in the wind. ;Idle is still, Idle2 is a little breeze, and Idle3 is a large breeze short ran ;PlayLoopSound3DVP "Flag" 1.0, 1.0 ;sounds odd and too slow anyway if ( MenuMode == 0 ) set ran to random 100 if ( ran < 30 ) ;30% chance the flag does something new ;this will check the weather in the future if (GetCurrentWeather >= 5 ) ;thunder, ash, or blight if (GetCurrentWeather != 8) ;not snow (added for Bloodmoon) LoopGroup, Idle3, 5 endif endif ;the last anim called in this script is the one it will play if ( ran <= 10 ) PlayGroup, Idle elseif ( GetCurrentWeather < 5 ) PlayGroup, Idle2 elseif ( GetCurrentWeather == 8 ) ;snow (added for Bloodmoon) PlayGroup, Idle2 endif endif endif endif end OutsideBanner
206pentorch1ScriptBegin pentorch1Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Sun < 40 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Sun >= 40 ) Enable endif endif End pentorch1Script
207pentorch2ScriptBegin pentorch2Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Sun >= 40 ) Disable endif endif End pentorch2Script
208penumbra2ScriptBegin penumbra2Script short doOnce if ( GetJournalIndex BM_Sun < 10 ) return endif if ( GetJournalIndex BM_Sun >= 30 ) return endif if ( doOnce == 0 ) if ( GetDistance Player <= 512 ) Journal BM_Sun 30 set doOnce to 1 endif endif End penumbra2Script
209penumbradoorScriptBegin penumbradoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Sun >= 10 ) Disable endif endif End penumbradoorScript
210penumbraScriptBegin penumbraScript short doOnce if ( GetJournalIndex BM_Sun < 10 ) return endif if ( GetJournalIndex BM_Sun >= 20 ) return endif if ( doOnce == 0 ) if ( GetDistance Player <= 256 ) Journal BM_Sun 20 set doOnce to 1 endif endif End penumbraScript
211plant2ScriptBegin plant2Script ;ENABLES/DISABLES TREE TO SIMULATE GROWTH short currentDay short daysPassed short state if ( state == 30 ) return endif if ( player->GetDistance act_BM_Stone_Tree_01 <= 5000 ) return endif if ( currentDay == Day ) Return endif Set currentDay to Day Set daysPassed to ( daysPassed + 1 ) if ( daysPassed >= 30 ) if ( state == 20 ) Act_BM_Tree_03->Enable Act_BM_Tree_02->Disable set state to 30 endif endif if ( daysPassed >= 20 ) if ( state == 10 ) Act_BM_Tree_02->Enable Act_BM_Tree_01->Disable set state to 20 endif endif if ( daysPassed >= 10 ) if ( state == 0 ) Act_BM_Tree_01->Enable set state to 10 endif endif End plant2Script
212plantScriptBegin plantScript short doOnce short messageOn short button If ( Player->GetItemCount "BM_Seeds_UNIQUE" == 0 ) return endif if ( GetDistance Player <== 512 ) if ( doOnce == 0 ) MessageBox "Would you like to plant the Strange Seeds in the fertile soil?" "Yes" "No" set messageOn to 1 set doOnce to 1 endif else set doOnce to 0 endif if ( messageOn == 1) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) Player->RemoveItem BM_Seeds_UNIQUE 1 Journal BM_Trees 40 StartScript plant2Script elseif ( button == 1 ) return endif endif End plantScript
213Pub_RavenRockBegin Pub_RavenRock ;Cell: Raven Rock, Bar ;Publican: Alcedonia Amnis ;Flag: Rent_RavenRock ;all rooms get rented for one day ;This guy must be in the map where the room is if you use the locked door cell loading cleanup ;rename the script for the guy and make a specific door to unlock or flag to set ;NO actual key is given to player, a global flag is set that removes the ownership on the beds. ;this script fires off when RENT is set true. Rent is set true throuhg the BEDS topic in dialogue, which all Publicans have. ;Each publican will also have a separate response to buying the bed, so they can give simple directions. There is also a default one. short rent ;if room is rented, set through dialogue on this NPC short rentDay ;the day of the rental short rentMonth ;the month of the rental short setup ;if setup has been done short cleanup ;true if you want to cleanup all the flags, rental is over and can be reset ;this script also uses a global variable (Rent_RavenRock). Make a new one for each rental. You can have as many ;beds as you want use that variable, it is used through the ownership data on the object reference if ( rent == 1) if ( setup == 0 ) set rentDay to Day set rentMonth to Month set setup to 1 set Rent_RavenRock to 1 ;this is the flag for the ownership on the bed "Rent_colony_door"->unlock ;also needed if you have locked the room, use a specific objectRef else ;setup is done so check to see if the day is over if ( Day != rentDay ) set cleanup to 1 elseif ( Month != rentMonth ) set cleanup to 1 endif endif if ( CellChanged == 1 ) ;this is only needed if you've done a locked door. If so, you only want to do this on cell change so you don't lock them in the room if ( cleanup == 1 ) ;this gets called when the rental is over and everything can be cleaned up set rent to 0 set Rent_RavenRock to 0 set setup to 0 set rentDay to 0 set rentMonth to 0 set cleanup to 0 "Rent_colony_Door"->lock 20 endif endif endif end Pub_RavenRock
214beginvenRockBegin Pub_RavenRock begin ;Cell: Raven Rock, Bar ;Publican: Alcedonia Amnis ;Flag: Rent_RavenRock ;all rooms get rented for one day ;This guy must be in the map where the room is if you use the locked door cell loading cleanup ;rename the script for the guy and make a specific door to unlock or flag to set ;NO actual key is given to player, a global flag is set that removes the ownership on the beds. ;this script fires off when RENT is set true. Rent is set true throuhg the BEDS topic in dialogue, which all Publicans have. ;Each publican will also have a separate response to buying the bed, so they can give simple directions. There is also a default one. short rent ;if room is rented, set through dialogue on this NPC short rentDay ;the day of the rental short rentMonth ;the month of the rental short setup ;if setup has been done short cleanup ;true if you want to cleanup all the flags, rental is over and can be reset ;this script also uses a global variable (Rent_Bed_Pelagiad). Make a new one for each rental. You can have as many ;beds as you want use that variable, it is used through the ownership data on the object reference if ( rent == 1) if ( setup == 0 ) set rentDay to Day set rentMonth to Month set setup to 1 set Rent_RavenRock to 1 ;this is the flag for the ownership on the bed else ;setup is done so check to see if the day is over if ( Day != rentDay ) set cleanup to 1 elseif ( Month != rentMonth ) set cleanup to 1 endif endif if ( CellChanged == 1 ) ;this is only needed if you've done a locked door. If so, you only want to do this on cell change so you don't lock them in the room if ( cleanup == 1 ) ;this gets called when the rental is over and everything can be cleaned up set rent to 0 set Rent_RavenRock to 0 set setup to 0 set rentDay to 0 set rentMonth to 0 set cleanup to 0 endif endif endif end Pub_RavenRock
215reeh_jahScriptBegin reeh_jahScript short nolore if ( GetJournalIndex "MV_RunawaySlave" < 10 ) return endif if ( GetJournalIndex "MV_RunawaySlave" >= 105 ) return endif if ( GetCurrentAiPackage != 3 ) return endif if ( OnDeath == 1 ) Journal "MV_RunawaySlave" 90 endif if ( GetJournalIndex "MV_RunawaySlave" >= 20 ) if ( GetJournalIndex "MV_RunawaySlave" < 90 ) if ( GetDistance "Im_Kilaya" <= 512 ) Journal "MV_RunawaySlave" 97 endif if (GetDistance "Savile Imayn" <=512 ) Journal "MV_RunawaySlave" 103 endif endif endif if ( GetDisabled == 1 ) return endif if ( GetJournalIndex "MV_RunawaySlave" >= 105 ) if ( CellChanged == 1 ) disable "reeh_jah" endif endif end
216rieklingswordbegin rieklingsword ;when rieking dies, add lance and shield to inventory. short isdead if ( isdead== 1 ) return endif If ( OnDeath == 1 ) additem "bm_ice_minion_lance" 1 additem "BM_Ice minion_Shield1" 1 set isdead to 1 endif end rieklingsword
217rigmorDoorScriptBegin rigmorDoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_SkaalAttack < 100 ) Disable Ex_S_door_rigmor->Enable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_SkaalAttack >= 100 ) Enable Ex_S_door_rigmor->Disable endif endif End rigmorDoorScript
218rigmorScriptBegin rigmorScript short wolfchosen short exilechosen short rigmormove float timer float timer2 short nolore ;BM_Trial 90 means exile portion of script will run ;BM_Trial 95 means sacrifice portion of script will run ;Rigmor will be on follow package until the player speaks with Heart-Fang ;He will then either stand there until time delay and cell change, or he will walk to the wolf pen and get eaten. i hope if ( MenuMode == 1 ) return endif if ( GetJournalIndex BM_Trial < 70 ) return endif if ( GetJournalIndex BM_Trial == 100 ) set exilechosen to 1 endif if ( GetPCCell "Skaal Village, The GreatHall" == 1 ) return endif if ( GetJournalIndex BM_Trial == 105 ) set wolfchosen to 1 endif if ( OnDeath == 1 ) "BM_wolf_caenlorn1"->AiWander 128 0 0 30 10 60 "BM_wolf_caenlorn2"->AiWander 128 0 0 60 30 10 "BM_wolf_caenlorn3"->AiWander 128 0 0 10 60 30 endif set timer2 to ( timer2 + GetSecondsPassed ) if ( timer2 < 2 ) return endif ;this part will move him to the pen, send him in, and make wolves attack him if ( wolfchosen == 1 ) if ( rigmormove == 0 ) AiTravel -159112 209704 2976 180 ;MessageBox "DOING FIRST TRAVEL" set rigmormove to 1 elseif ( rigmormove == 1 ) if ( GetAiPackageDone == 1 ) if ( GetDistance common_ring_05_BM_UNI < 128 ) set rigmormove to 2 endif endif elseif ( rigmormove == 2 ) AiTravel -159960 209424 2965 0 ;"BM_wolf_caenlorn1"->AiWander 0 0 0 0 0 0 ;"BM_wolf_caenlorn2"->AiWander 0 0 0 0 0 0 ;"BM_wolf_caenlorn3"->AiWander 0 0 0 0 0 0 ;MessageBox "DOING SECOND TRAVEL" set rigmormove to 3 elseif ( rigmormove == 3 ) if ( GetDistance active_BM_rigmor <= 100 ) ;MessageBox "SECOND TRAVEL DONE" set rigmormove to 4 endif elseif ( rigmormove == 4 ) set timer to ( timer + getsecondspassed ) if ( timer >= 2 ) ;ex_S_fence_gate_uni->Activate ;Player->Say "Vo\Misc\rigmorattack.wav" "Arrrrgh!" "BM_wolf_caenlorn1"->StartCombat "rigmor halfhand" "BM_wolf_caenlorn2"->StartCombat "rigmor halfhand" "BM_wolf_caenlorn3"->StartCombat "rigmor halfhand" set rigmormove to 5 ;set wolfchosen to 2 endif elseif ( rigmormove == 5 ) if ( GetAIPackageDone == 1 ) set wolfchosen to 2 endif endif endif End rigmorScript
219rignoteScriptBegin rignoteScript short doOnce if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Trial < 20 ) Disable endif elseif ( GetDisabled == 1 ) if (GetJournalIndex BM_Trial >= 20 ) Enable endif endif if ( GetJournalIndex BM_Trial >= 20 ) if ( GetJournalIndex BM_Trial < 50 ) if ( OnActivate == 1 ) if ( doOnce == 0 ) Activate Journal BM_Trial 50 set doOnce to 1 endif endif endif endif End rignoteScript
220ringdoorScriptBegin ringdoorScript if ( OnActivate == 1 ) MessageBox "This door has been magically sealed." endif End ringdoorScript
221ringviewScriptBegin ringviewScript short button short messageOn short reset short OnPcEquip if ( GetDisabled == 0 ) if ( GetJournalIndex BM_WildHunt < 100 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_WildHunt >= 100 ) Enable endif 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 "Which movie would you like to view?" "Long Werewolf""Totem 1""Totem 2""BearHunt 1""BearHunt 2""Karstaag 1""Karstaag 2""WildHunt""Endgame" set messageOn to 1 endif endif if ( messageOn == 1) set button to GetButtonPressed if ( button >= 0 ) set messageOn to 0 endif if ( button == 0 ) PlayBink "bm_werewolf1.bik" 1 set reset to 1 ;elseif ( button == 1 ) ;PlayBink "bm_werewolf2.bik" 1 ;set reset to 1 elseif ( button == 1 ) PlayBink "bm_ceremony1.bik" 1 set reset to 1 elseif ( button == 2 ) PlayBink "bm_ceremony2.bik" 1 set reset to 1 elseif ( button == 3 ) PlayBink "bm_bearhunt1.bik" 1 set reset to 1 elseif ( button == 4 ) PlayBink "bm_bearhunt2.bik" 1 set reset to 1 elseif ( button == 5 ) PlayBink "bm_frostgiant1.bik" 1 set reset to 1 elseif ( button == 6 ) PlayBink "bm_frostgiant2.bik" 1 set reset to 1 elseif ( button == 7 ) PlayBink "bm_wereend.bik" 1 set reset to 1 elseif ( button == 8 ) PlayBink "bm_endgame.bik" 1 set reset to 1 endif endif End ringviewScript
222RitualDaggerScriptBegin RitualDaggerScript if ( GetJournalIndex "BM_Wolfgiver" < 80 ) Disable endif if ( GetJournalIndex "BM_Wolfgiver" >= 80 ) Enable endif End RitualDaggerScript
223RitualTransformBegin RitualTransform float timer float xpos float ypos float zpos short doOnce short wolfdead short disabling if ( MenuMode == 1 ) Return endif if ( wolfdead == 1 ) Return endif if ( GetDeadCount "wolfgiver_f_nord" > 1 ) Journal BM_WolfGiver 120 set pcwerewolf to -1 if ( PCKnownWerewolf == 1 ) set PCKnownWerewolf to 0 endif set wolfdead to 1 endif if ( disabling == 2 ) Return endif if ( disabling == 1 ) set timer to ( timer + getsecondspassed ) if (timer > .75 ) "wolfgiver_f_nord"->Resurrect "wolfgiver_f_nord"->modFatigue 250 "wolfgiver_f_nord"->modHealth 250 "wolfgiver_f_nord"->becomewerewolf "wolfgiver_f_nord"->startcombat player set disabling to 2 endif return endif set xpos to ( "wolfgiver_f_nord"->GetPos, X ) set ypos to ( "wolfgiver_f_nord"->GetPos, Y ) set zpos to ( "wolfgiver_f_nord"->GetPos, Z ) Placeitem "ritual_ring" xpos ypos zpos 0 set disabling to 1 End RitualTransform
224rolfScriptBegin rolfScript short rolfstate short nolore short rolftime if ( rolftime == 1 ) if ( GetJournalIndex BM_BearHunt1 >= 25 ) if ( GetJournalIndex BM_BearHunt1 < 100 ) if ( GameHour < 21 ) if ( GameHour > 6 ) Journal BM_BearHunt1 105 endif endif endif endif endif if ( rolftime == 0 ) if ( GameHour >= 21 ) set rolftime to 1 elseif ( GameHour <= 6 ) set rolftime to 1 endif elseif ( rolftime == 1 ) if ( GameHour < 21 ) if ( GameHour > 6 ) set rolftime to 0 endif endif endif End rolfScript
225SabinusScriptBegin SabinusScript short OnPCHitMe short Sabinusfollow short nolore if ( GetJournalIndex "CO_1" < 10 ) return elseif ( GetJournalIndex "CO_1" < 30 ) if ( Ondeath == 1 ) Journal CO_1 300 endif endif if ( GetJournalIndex "CO_1" == 20 ) if ( Sabinusfollow == 0 ) AIfollow "Gidar Verothan" 0 -198017 160157 800 0 set Sabinusfollow to 1 endif endif if ( sabinusfollow == 1 ) if ( GetJournalIndex "CO_1" >= 30 ) if ( GetDistance "Gidar Verothan" < 512 ) AiWander 0 0 0 60 30 20 0 0 0 0 0 0 setalarm 50 set sabinusfollow to 2 endif endif endif if ( OnPCHitMe == 1 ) "Gidar Verothan"->StartCombat Player "Gamin Girith"->StartCombat Player SetFight 100 StartCombat Player endif End SabinusScript
226SacrificeNordFemaleBegin SacrificeNordFemale "wolfgiver_f_nord"->modFatigue -250 if ( GetJournalIndex "BM_Wolfgiver" >= 80 ) Enable endif if ( GetJournalIndex "BM_Wolfgiver" < 80 ) Disable endif End SacrificeNordFemale
227severiaScriptbegin severiaScript short nolore short gavebooze if ( GetDisabled == 0 ) if ( GetJournalIndex bM_Morale < 100 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Morale >= 100 ) Enable endif endif end severiaScript
228SignRotatebegin SignRotate float timer float swingTime float swingSpeed float startAngle DontSaveObject ;set startAngle to GetStartingAngle, y if ( MenuMode == 1 ) return endif if ( GetDistance, Player > 2000 ) return endif set swingTime to 1 ;set swingSpeed to 30 set timer to ( timer + GetSecondsPassed ) ;rotate forward if ( timer < swingTime ) Rotate y, 2 ;rotate backward elseif ( timer < (swingTime * 3) ) Rotate y, -2 ;forward again elseif ( timer < (swingTime * 4 ) ) Rotate y, 2 ;reset timer back to zero else set timer to 0 ;SetAngle, y, GetStartingAngle, y SetAtStart endif end SignRotate
229SigvatrScriptbegin SigvatrScript short nolore if ( OnDeath == 1 ) if ( GetJournalIndex BM_Retribution >= 10 ) if ( GetJournalIndex BM_Retribution < 50 ) Journal BM_Retribution 60 endif endif endif if ( OnDeath == 0 ) if ( GetJournalIndex BM_Retribution >= 10 ) if ( GetJournalIndex BM_Retribution < 50 ) if ( Player->GetItemCount "ingred_emerald_pinetear" > 0 ) Journal BM_Retribution 70 endif endif endif endif end
230skaalaradoorScriptBegin skaalaradoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Ceremony1 >= 10 ) Disable elseif ( GetJournalIndex BM_Ceremony2 >= 10 ) Disable endif endif End skaalaradoorScript
231skaaldoorSoundBegin skaaldoorSound short doOnce if ( MenuMode == 1 ) return endif if ( GetJournalIndex BM_SkaalAttack >= 25 ) if ( doOnce == 1 ) StopSound SkaalAttackNoise set doOnce to 2 endif endif if ( doOnce == 0 ) if ( SkaalAttack == 1 ) PlayLoopSound3D SkaalAttackNoise set doOnce to 1 endif endif End skaaldoorSound
232skaalGuardScriptBegin skaalGuardScript short doOnce float timer short nolore if ( MenuMode == 1 ) return endif if ( doOnce == 0 ) if ( SkaalAttack == 1 ) set timer to ( timer + GetSecondsPassed ) endif endif if ( timer < 3 ) return endif if ( doOnce == 0 ) set doOnce to 1 endif if ( doOnce == 1 ) if ( SkaalAttack == 1 ) ForceGreeting set doOnce to 2 endif endif End skaalGuardScript
233skaalwere1ScriptBegin skaalwere1Script short doOnce short attackOnce if ( SkaalAttack >= 3 ) return endif if ( GetJournalIndex BM_SkaalAttack < 10 ) if ( GetDisabled == 0 ) Disable endif return endif if ( doOnce == 0 ) Enable Becomewerewolf set doOnce to 1 return endif if ( GetJournalIndex BM_SkaalAttack == 10 ) Set SkaalAttack to 2 endif if ( SkaalAttack == 2 ) if ( attackOnce == 0 ) ;skaal_guard_A1->AiFollow skaal_guard_A2 0 0 0 0 0 0 ;skaal_guard_A2->AiFollow skaal_guard_A3 0 0 0 0 0 0 ;skaal_guard_A3->AiFollow skaal_guard_A4 0 0 0 0 0 0 ;skaal_guard_A4->AiFollow skaal_guard_A1 0 0 0 0 0 0 StartCombat skaal_guard_A1 ;AiFollow BM_werewolf_skaal1A3 0 0 0 0 0 0 set attackOnce to 1 endif endif if ( OnDeath == 1 ) set werewolfdead to ( werewolfdead + 1 ) endif if ( werewolfdead >= 7 ) Journal BM_SkaalAttack 20 "tharsten heart-fang"->Disable "skaal_guard2"->SetHealth 0 Set SkaalAttack to 3 endif End skaalwere1Script
234skaalwere2ScriptBegin skaalwere2Script short doOnce short attackOnce if ( SkaalAttack >= 3 ) return endif if ( GetJournalIndex BM_SkaalAttack < 10 ) if ( GetDisabled == 0 ) Disable endif return endif if ( doOnce == 0 ) Enable Becomewerewolf set doOnce to 1 return endif if ( GetJournalIndex BM_SkaalAttack == 10 ) Set SkaalAttack to 2 endif if ( SkaalAttack == 2 ) if ( attackOnce == 0 ) StartCombat skaal_guard_A2 ;AiFollow BM_werewolf_skaal1A3 0 0 0 0 0 0 set attackOnce to 1 endif endif if ( OnDeath == 1 ) set werewolfdead to ( werewolfdead + 1 ) endif if ( werewolfdead >= 7 ) if ( GetJournalIndex BM_SkaalAttack < 20 ) Journal BM_SkaalAttack 20 "tharsten heart-fang"->Disable "skaal_guard2"->SetHealth 0 Set SkaalAttack to 3 endif endif End skaalwere2Script
235skaalwere3ScriptBegin skaalwere3Script short doOnce short attackOnce if ( SkaalAttack >= 3 ) return endif if ( GetJournalIndex BM_SkaalAttack < 10 ) if ( GetDisabled == 0 ) Disable endif return endif if ( doOnce == 0 ) Enable Becomewerewolf set doOnce to 1 return endif if ( GetJournalIndex BM_SkaalAttack == 10 ) Set SkaalAttack to 2 endif if ( SkaalAttack == 2 ) if ( attackOnce == 0 ) StartCombat skaal_guard_A3 ;AiFollow BM_werewolf_skaal1A3 0 0 0 0 0 0 set attackOnce to 1 endif endif if ( OnDeath == 1 ) set werewolfdead to ( werewolfdead + 1 ) endif if ( werewolfdead >= 7 ) if ( GetJournalIndex BM_SkaalAttack < 20 ) Journal BM_SkaalAttack 20 "tharsten heart-fang"->Disable "skaal_guard2"->SetHealth 0 Set SkaalAttack to 3 endif endif End skaalwere3Script
236skaalwere4ScriptBegin skaalwere4Script short doOnce short attackOnce if ( SkaalAttack >= 3 ) return endif if ( GetJournalIndex BM_SkaalAttack < 10 ) if ( GetDisabled == 0 ) Disable endif return endif if ( doOnce == 0 ) Enable Becomewerewolf set doOnce to 1 return endif if ( GetJournalIndex BM_SkaalAttack == 10 ) Set SkaalAttack to 2 endif if ( SkaalAttack == 2 ) if ( attackOnce == 0 ) StartCombat skaal_guard_A4 ;AiFollow BM_werewolf_skaal1A3 0 0 0 0 0 0 set attackOnce to 1 endif endif if ( OnDeath == 1 ) set werewolfdead to ( werewolfdead + 1 ) endif if ( werewolfdead >= 7 ) if ( GetJournalIndex BM_SkaalAttack < 20 ) Journal BM_SkaalAttack 20 "tharsten heart-fang"->Disable "skaal_guard2"->SetHealth 0 Set SkaalAttack to 3 endif endif End skaalwere4Script
237skaalwere5ScriptBegin skaalwere5Script short doOnce short attackOnce if ( SkaalAttack >= 3 ) return endif if ( GetJournalIndex BM_SkaalAttack < 10 ) if ( GetDisabled == 0 ) Disable endif return endif if ( doOnce == 0 ) Enable Becomewerewolf set doOnce to 1 return endif if ( GetJournalIndex BM_SkaalAttack == 10 ) Set SkaalAttack to 2 endif if ( SkaalAttack == 2 ) if ( attackOnce == 0 ) StartCombat "horski tallowhand" "horski tallowhand"->StartCombat BM_werewolf_skaal1F3 "engar ice-mane"->StartCombat BM_werewolf_skaal1F3 set attackOnce to 1 endif endif if ( OnDeath == 1 ) set werewolfdead to ( werewolfdead + 1 ) endif if ( werewolfdead >= 7 ) if ( GetJournalIndex BM_SkaalAttack < 20 ) Journal BM_SkaalAttack 20 "tharsten heart-fang"->Disable "skaal_guard2"->SetHealth 0 Set SkaalAttack to 3 endif endif End skaalwere5Script
238skaalwere6ScriptBegin skaalwere6Script short doOnce short attackOnce if ( SkaalAttack >= 3 ) return endif if ( GetJournalIndex BM_SkaalAttack < 10 ) if ( GetDisabled == 0 ) Disable endif return endif if ( doOnce == 0 ) Enable Becomewerewolf set doOnce to 1 return endif if ( GetJournalIndex BM_SkaalAttack == 10 ) Set SkaalAttack to 2 endif if ( SkaalAttack == 2 ) if ( attackOnce == 0 ) StartCombat "alvring whitebeard" "alvring whitebeard"->StartCombat BM_werewolf_skaal1G3 "hagrad the stone"->StartCombat BM_werewolf_skaal1G3 set attackOnce to 1 endif endif if ( OnDeath == 1 ) set werewolfdead to ( werewolfdead + 1 ) endif if ( werewolfdead >= 7 ) if ( GetJournalIndex BM_SkaalAttack < 20 ) Journal BM_SkaalAttack 20 "tharsten heart-fang"->Disable "skaal_guard2"->SetHealth 0 Set SkaalAttack to 3 endif endif End skaalwere6Script
239smugcheckScriptBegin smugcheckScript short doOnce if ( doOnce == 0 ) if ( GetJournalIndex BM_Smugglers >= 30 ) if ( GetJournalIndex BM_Smugglers < 80 ) if ( GetDistance Player <= 256 ) Journal BM_Smugglers 80 set doOnce to 1 endif endif endif endif End smugcheckScript
240smugdeadScriptbegin smugdeadScript short doOnce if ( doOnce == 0 ) "mus roscius"->Enable "sorian"->Enable "mol gro-shat"->Enable "mazorn gro-gar"->Enable "gualtierus spurius"->Enable set doOnce to 1 endif if ( GetJournalIndex BM_Smugglers >= 30 ) if ( smugDead >= 5 ) if ( GetJournalIndex BM_Smugglers < 97 ) Journal BM_Smugglers 97 endif endif endif end smugdeadScript
241smugScriptBegin smugScript short doOnce short fightOnce if ( doOnce == 1 ) return endif if ( "gualtierus spurius".fightmod == 1 ) if ( fightOnce == 0 ) setfight 30 set fightOnce to 1 endif endif if ( doOnce == 0 ) if ( OnDeath == 1 ) set smugDead to ( smugDead + 1 ) set doOnce to 1 endif endif End smugScript
242SnowPrinceBookBegin SnowPrinceBook short done if ( done == 1 ) return endif if ( GetJournalIndex BM_Falmer >= 50 ) if ( onactivate == 1 ) Journal "BM_Falmer" 60 set done to 1 activate endif endif end SnowPrinceBook
243Sound_BM_IceSheetbegin Sound_BM_IceSheet if ( CellChanged == 0 ) if ( GetSoundPlaying "BM_Ice_Sheet" == 0 ) PlayLoopSound3DVP "BM_Ice_Sheet", 1.0, 1.0 endif endif end
244SovngardeBookBegin SovngardeBook short done short OnPCEquip short PCSkipEquip if ( done == 1 ) set PCSkipEquip to 0 return endif set PCSkipEquip to 1 if ( GetJournalIndex BM_BrodirGrove >= 20 ) if ( onactivate == 1 ) Journal "BM_BrodirGrove" 30 set done to 1 activate endif endif if ( GetJournalIndex BM_BrodirGrove < 20 ) if ( OnPCEquip == 1 ) set done to 1 activate endif endif if ( GetJournalIndex BM_BrodirGrove >= 20 ) if ( OnPCEquip == 1 ) MessageBox "Read book" Journal "BM_BrodirGrove" 30 set done to 1 activate endif endif end SovngardeBook
245spiritBearScriptBegin spiritBearScript short doOnce if ( GetDisabled == 0 ) if ( GetJournalIndex BM_BearHunt1 < 60 ) if ( GetJournalIndex BM_BearHunt2 < 30 ) Disable endif endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_BearHunt1 >= 60 ) Enable elseif ( GetJournalIndex BM_BearHunt2 >= 30 ) Enable endif endif if ( OnDeath == 1 ) if ( doOnce == 0 ) if ( GetJournalIndex BM_BearHunt1 >= 60 ) "rolf long-tooth"->ModDisposition 30 Journal BM_BearHunt1 75 set doOnce to 1 elseif ( GetJournalIndex BM_BearHunt2 >= 30 ) Journal BM_BearHunt2 50 set doOnce to 1 endif endif endif End spiritBearScript
246Sprigganbegin Spriggan ;spriggan must be killed 3 times before they die permanently ;effect is played when she revives ;sprigganeffect script shuts off the effect short deathvar short playonce float time float xpos float ypos float zpos short doonce If (MenuMode==1) Return Endif If (deathvar==3) ;after killed 3 times, she acts like dead creature If (onactivate==1) Activate endif Return elseif (deathvar < 1) If (ondeath==1) set deathvar to 1 ;first death endif Return elseif (deathvar==1) If (onactivate==1) return endif If (playonce==0) If (doonce==0) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +30) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 1 endif set time to ( time + GetSecondsPassed ) If (time>=1) Setscale 1.00 ;increase her size Resurrect ; revives spriggan Startcombat Player ModHealth 2 ModResistParalysis 100 ModResistPoison 100 Set playonce to 1 Set time to 0 endif endif If (ondeath==1) set deathvar to 2 ;second death endif Return elseif (deathvar==2) If (onactivate==1) return endif if (playonce==1) If (doonce==1) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +20) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 2 endif set time to ( time + GetSecondsPassed ) if (time>=1) Resurrect ; revives spriggan when activated by player Setscale 1.20 ;increase her size Startcombat Player ModHealth 3 ModResistParalysis 100 ModResistPoison 100 ModResistMagicka 100 ModResistFire 100 ModResistFrost 100 Set playonce to 2 endif endif endif If (ondeath==1) set deathvar to 3 ;third, final death endif endif end Spriggan
247sprigganeffectbegin sprigganeffect ;part of spriggan script, places the effect and plays sound ;when spriggan comes back to life ;also used for werewolves in wilderness float timepassed If (MenuMode==1) Return endif if (timepassed=0) LoopGroup Idle2 1 endif Set timepassed to (timepassed + GetSecondsPassed) If (timepassed<2) return elseif (timepassed >4) setdelete 1 elseif (timepassed >=2) disable endif end sprigganeffect
248spuriousScriptBegin spuriousScript short doOnce short dieOnce short fightmod if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Smugglers < 30 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Smugglers >= 30 ) Enable endif endif if ( GetJournalIndex BM_Smugglers >= 30 ) if ( GetJournalIndex BM_Smugglers < 90 ) if ( GetDistance "saenus lusius" <= 512 ) if ( luciuschosen >= 1 ) if ( doOnce == 0 ) ForceGreeting StopCombat Player SetFight 30 set doOnce to 1 endif endif endif endif endif if ( OnDeath == 1 ) if ( dieOnce == 0 ) set smugDead to ( smugDead + 1 ) set dieOnce to 1 endif endif End spuriousScript
249stahldoorScriptBegin stahldoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Water >= 10 ) Disable endif endif End stahldoorScript
250stal1ScriptBegin stal1Script short stal1 float timer if ( MenuMode == 1 ) Return endif if ( OnActivate == 0 ) Return endif if ( GetJournalIndex BM_Earth == 20 ) Journal BM_Earth 30 endif Act_BM_steam_01->Enable PlaySound "BM pipe small" if ( part == 2 ) set stal1 to 1 elseif ( part == 6 ) set stal1 to 2 elseif ( part == 9 ) set stal1 to 3 else if ( part < 5 ) set part to 0 else set part to 6 endif set Act_BM_pipe_02.stal2 to 0 set Act_BM_pipe_03.stal3 to 0 endif End stal1Script
251stal2ScriptBegin stal2Script short stal2 if ( MenuMode == 1 ) Return endif if ( OnActivate == 0 ) Return endif if ( GetJournalIndex BM_Earth == 20 ) Journal BM_Earth 30 endif Act_BM_steam_02->Enable PlaySound "BM pipe large" if ( part == 0 ) set stal2 to 1 elseif ( part == 8 ) set stal2 to 2 else if ( part < 5 ) set part to 0 else set part to 6 endif set Act_BM_pipe_01.stal1 to 0 set Act_BM_pipe_03.stal3 to 0 endif End stal2Script
252stal3ScriptBegin stal3Script short stal3 if ( MenuMode == 1 ) Return endif if ( OnActivate == 0 ) Return endif if ( GetJournalIndex BM_Earth == 20 ) Journal BM_Earth 30 endif Act_BM_steam_03->Enable PlaySound "BM pipe medium" if ( part == 1 ) set stal3 to 1 elseif ( part == 3 ) set stal3 to 2 elseif ( part == 7 ) set stal3 to 3 else if ( part < 5 ) set part to 0 else set part to 6 endif set Act_BM_pipe_01.stal1 to 0 set Act_BM_pipe_02.stal2 to 0 endif End stal3Script
253stalloopScriptBegin stalloopScript short stalloop float timer short reset if ( GetJournalIndex BM_Earth < 10 ) return elseif ( GetJournalIndex BM_Earth >= 50 ) return endif if ( stalloop == 8 ) Journal BM_Earth 50 return endif if ( GetJournalIndex BM_Earth == 10 ) if ( GetDistance Player < 1024 ) Journal BM_Earth 20 endif endif if ( part < 5 ) set timer to ( timer + GetSecondsPassed ) if ( stalloop == 0 ) if ( timer > 8 ) PlaySound "BM pipe large" Act_BM_steam_04->Enable set stalloop to 1 set timer to 0 endif elseif ( stalloop == 1 ) if ( timer > 1 ) PlaySound "BM pipe medium" Act_BM_steam_05->Enable set stalloop to 2 set timer to 0 endif elseif ( stalloop == 2 ) if ( timer > 1 ) PlaySound "BM pipe small" Act_BM_steam_06->Enable set stalloop to 3 set timer to 0 endif elseif ( stalloop == 3 ) if ( timer > 1 ) PlaySound "BM pipe medium" Act_BM_steam_05->Enable set stalloop to 0 set timer to 0 return endif endif elseif ( part < 10 ) if ( stalloop < 4 ) set stalloop to 4 endif set timer to ( timer + GetSecondsPassed ) if ( stalloop == 4 ) if ( timer > 8 ) PlaySound "BM pipe small" Act_BM_steam_06->Enable set stalloop to 5 set timer to 0 endif elseif ( stalloop == 5 ) if ( timer > 1 ) PlaySound "BM pipe medium" Act_BM_steam_05->Enable set stalloop to 6 set timer to 0 endif elseif ( stalloop == 6 ) if ( timer > 1 ) PlaySound "BM pipe large" Act_BM_steam_04->Enable set stalloop to 7 set timer to 0 endif elseif ( stalloop == 7 ) if ( timer > 1.3 ) PlaySound "BM pipe small" Act_BM_steam_06->Enable set stalloop to 4 set timer to 0 return endif endif elseif ( part == 10 ) if ( reset == 0 ) set stalloop to 0 set reset to 1 set timer to 0 endif set timer to ( timer + GetSecondsPassed ) if ( stalloop == 0 ) if ( timer > 0.5 ) PlaySound "BM pipe large" Act_BM_steam_02->Enable Act_BM_steam_04->Enable set stalloop to 1 set timer to 0 endif elseif ( stalloop == 1 ) if ( timer > 1 ) PlaySound "BM pipe medium" Act_BM_steam_03->Enable Act_BM_steam_05->Enable set stalloop to 2 set timer to 0 endif elseif ( stalloop == 2 ) if ( timer > 1 ) PlaySound "BM pipe small" Act_BM_steam_01->Enable Act_BM_steam_06->Enable set stalloop to 3 set timer to 0 endif elseif ( stalloop == 3 ) if ( timer > 1 ) PlaySound "BM pipe medium" Act_BM_steam_03->Enable Act_BM_steam_05->Enable set stalloop to 4 set timer to 0 endif elseif ( stalloop == 4 ) if ( timer > 1 ) PlaySound "BM pipe small" Act_BM_steam_01->Enable Act_BM_steam_06->Enable set stalloop to 5 set timer to 0 endif elseif ( stalloop == 5 ) if ( timer > 1 ) PlaySound "BM pipe medium" Act_BM_steam_03->Enable Act_BM_steam_05->Enable set stalloop to 6 set timer to 0 endif elseif ( stalloop == 6 ) if ( timer > 1 ) PlaySound "BM pipe large" Act_BM_steam_02->Enable Act_BM_steam_04->Enable set stalloop to 7 set timer to 0 endif elseif ( stalloop == 7 ) if ( timer > 1.3 ) PlaySound "BM pipe small" Act_BM_steam_01->Enable Act_BM_steam_06->Enable set stalloop to 8 set timer to 0 endif endif endif End stalloopScript
254stalresetScriptBegin stalresetScript ;Act_BM_pipe_01.stal1 ;Act_BM_pipe_02.stal2 ;Act_BM_pipe_03.stal3 float timer if ( GetJournalIndex BM_Earth < 10 ) return endif if ( part == 0 ) if ( Act_BM_pipe_02.stal2 == 1 ) set part to 1 endif endif if ( part == 1 ) if ( Act_BM_pipe_03.stal3 == 1 ) set Act_BM_pipe_03.stal3 to 0 set part to 2 endif endif if ( part == 2 ) if ( Act_BM_pipe_01.stal1 == 1 ) set part to 3 endif endif if ( part == 3 ) if ( Act_BM_pipe_03.stal3 == 2 ) set part to 4 endif endif if ( part == 4 ) Journal BM_Earth 40 set part to 5 endif if ( part == 5 ) ;START NEW PATTERN ;MessageBox "WOULD PLAY NEW PATTERN NOW." set part to 6 endif if ( part == 6 ) if ( Act_BM_pipe_01.stal1 == 2 ) set part to 7 endif endif if ( part == 7 ) if ( Act_BM_pipe_03.stal3 == 3 ) set Act_BM_pipe_03.stal3 to 0 set part to 8 endif endif if ( part == 8 ) if ( Act_BM_pipe_02.stal2 == 2 ) set part to 9 endif endif if ( part == 9 ) if ( Act_BM_pipe_01.stal1 == 3 ) set part to 10 endif endif if ( part == 10 ) ;MessageBox "WOULD PLAY PATTERN ONCE MORE THEN QUIT" endif End stalreset Script
255stalsteamScriptBegin stalsteamScript float timer if ( GetDisabled == 0 ) if ( timer < 1.2 ) set timer to ( timer + GetSecondsPassed ) else Disable set timer to 0 endif endif End stalsteamScript
256stoneBeastsScriptBegin stoneBeastsScript ;ACTIVATES STANDING STONE AND ENABLES/DISABLES ALL RELEVANT OBJECTS short doOnce short play if ( stones == 6 ) Journal BM_Stones 80 set stones to -1 endif if ( GetJournalIndex BM_Stones < 30 ) return endif if ( OnActivate == 1 ) set play to 1 endif if ( play == 1 ) if ( GetJournalIndex BM_Beasts < 10 ) if ( doOnce == 0 ) MessageBox "Travel south. Find the Good Beast and ease its suffering." set doOnce to 1 Journal BM_Beasts 10 set play to 0 endif elseif ( GetJournalIndex BM_Beasts = 50 ) if ( doOnce == 1 ) set doOnce to 2 Journal BM_Beasts 100 Journal BM_Stones 66 set stones to ( stones + 1 ) Act_BM_Beast_parts->Enable set play to 0 endif else set play to 0 endif endif End stoneBeastsScript
257stoneEarthScriptBegin stoneEarthScript ;ACTIVATES STANDING STONE AND ENABLES/DISABLES ALL RELEVANT OBJECTS short doOnce short play if ( stones == 6 ) Journal BM_Stones 80 set stones to -1 endif if ( GetJournalIndex BM_Stones < 30 ) return endif if ( OnActivate == 1 ) set play to 1 endif if ( play == 1 ) if ( GetJournalIndex BM_Earth < 10 ) if ( doOnce == 0 ) MessageBox "Travel northeast to the Cave of the Hidden Music and learn the Song of the Earth." set doOnce to 1 Journal BM_Earth 10 set play to 0 endif elseif ( GetJournalIndex BM_Earth = 50 ) if ( doOnce == 1 ) set doOnce to 2 Journal BM_Earth 100 Journal BM_Stones 62 set stones to ( stones + 1 ) Act_BM_Earth_parts->Enable set play to 0 endif else set play to 0 endif endif End stoneEarthScript
258stoneeffect1ScriptBegin stoneeffect1Script ;for Beast Stone short doOnce if ( GetJournalIndex BM_Beasts == 100 ) if ( doOnce == 0 ) PlaySound StoneSound set doOnce to 1 endif endif End stoneeffect1Script
259stoneeffect2ScriptBegin stoneeffect2Script ;for Earth Stone short doOnce if ( GetJournalIndex BM_Earth == 100 ) if ( doOnce == 0 ) PlaySound StoneSound set doOnce to 1 endif endif End stoneeffect2Script
260stoneeffect3ScriptBegin stoneeffect3Script ;for Sun Stone short doOnce if ( GetJournalIndex BM_Sun == 100 ) if ( doOnce == 0 ) PlaySound StoneSound set doOnce to 1 endif endif End stoneeffect3Script
261stoneeffect4ScriptBegin stoneeffect4Script ;for Tree Stone short doOnce if ( GetJournalIndex BM_Trees == 100 ) if ( doOnce == 0 ) PlaySound StoneSound set doOnce to 1 endif endif End stoneeffect4Script
262stoneeffect5ScriptBegin stoneeffect5Script ;for Water Stone short doOnce if ( GetJournalIndex BM_Water == 100 ) if ( doOnce == 0 ) PlaySound StoneSound set doOnce to 1 endif endif End stoneeffect5Script
263stoneeffect6ScriptBegin stoneeffect6Script ;for Wind Stone short doOnce if ( GetJournalIndex BM_Wind == 100 ) if ( doOnce == 0 ) PlaySound StoneSound set doOnce to 1 endif endif End stoneeffect6Script
264stoneeffectbeastScriptbegin stoneeffectbeastScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Beasts < 100 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Beasts == 100 ) Enable endif endif End stoneeffectbeastScript
265stoneErlendrScriptBegin stoneErlendrScript if ( menumode == 1 ) return endif if ( GetJournalIndex BM_BrodirGrove < 90 ) return endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_BrodirGrove >= 90 ) Cast "stone_erlendr" Player ;fortify speed 10 MessageBox "You have been granted the gift of Erlendr's speed." endif endif end
266stoneHunroorScriptBegin stoneHunroorScript if ( menumode == 1 ) return endif if ( GetJournalIndex BM_BrodirGrove < 90 ) return endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_BrodirGrove >= 90 ) Cast "stone_hunroor" Player ;fortify agility 10 MessageBox "You have been granted the gift of Hunroor's agility." endif endif end
267stoneNikulasScriptBegin stoneNikulasScript if ( menumode == 1 ) return endif if ( GetJournalIndex BM_BrodirGrove < 90 ) return endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_BrodirGrove >= 90 ) Cast "stone_nikulas" Player ;fortify personality 10 MessageBox "You have been granted the gift of Nikulas's personality." endif endif end
268stoneSunScriptBegin stoneSunScript ;ACTIVATES STANDING STONE AND ENABLES/DISABLES ALL RELEVANT OBJECTS short doOnce short play if ( stones == 6 ) Journal BM_Stones 80 set stones to -1 endif if ( GetJournalIndex BM_Stones < 30 ) return endif if ( OnActivate == 1 ) set play to 1 endif if ( play == 1) if ( GetJournalIndex BM_Sun < 10 ) if ( doOnce == 0 ) MessageBox "Go to the west and free the warm Sun from the Halls of Penumbra." set doOnce to 1 Journal BM_Sun 10 set play to 0 endif elseif ( GetJournalIndex BM_Sun = 40 ) if ( doOnce == 1 ) set doOnce to 2 Journal BM_Sun 100 Journal BM_Stones 68 set stones to ( stones + 1 ) Act_BM_Sun_parts->Enable set play to 0 endif else set play to 0 endif endif End stoneSunScript
269stoneTreesScriptBegin stoneTreesScript ;ACTIVATES STANDING STONE AND ENABLES/DISABLES ALL RELEVANT OBJECTS short doOnce short play if ( stones == 6 ) Journal BM_Stones 80 set stones to -1 endif if ( GetJournalIndex BM_Stones < 30 ) return endif if ( OnActivate == 1 ) set play to 1 endif if ( play == 1 ) if ( GetJournalIndex BM_Trees < 10 ) if ( doOnce == 0 ) MessageBox "The First Trees are gone. Travel east and find the one who has stolen the Seeds. Beware--he who has the seeds, controls the trees. Plant the First anew." set doOnce to 1 Journal BM_Trees 10 set play to 0 endif elseif ( GetJournalIndex BM_Trees = 40 ) if ( doOnce == 1 ) set doOnce to 2 Journal BM_Trees 100 Journal BM_Stones 64 set stones to ( stones + 1 ) Act_BM_Tree_parts->Enable set play to 0 endif else set play to 0 endif endif End stoneTreesScript
270stoneUlfgarScriptBegin stoneUlfgarScript if ( menumode == 1 ) return endif if ( GetJournalIndex "BM_BrodirGrove" < 90 ) Disable endif if ( GetJournalIndex "BM_BrodirGrove" >= 90 ) Enable endif if ( GetJournalIndex BM_BrodirGrove < 90 ) return endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_BrodirGrove >= 10 ) Cast "stone_ulfgar" Player ;fortify strength 10 MessageBox "You have been granted the gift of Ulfgar's strength." endif endif end
271stoneWaterScriptBegin stoneWaterScript ;ACTIVATES STANDING STONE AND ENABLES/DISABLES ALL RELEVANT OBJECTS short doOnce short play if ( stones == 6 ) Journal BM_Stones 80 set stones to -1 endif if ( GetJournalIndex BM_Stones < 30 ) return endif if ( OnActivate == 1 ) set play to 1 endif if ( play == 1 ) if ( GetJournalIndex BM_Water < 10 ) if ( doOnce == 0 ) MessageBox "Travel west to a small island off the coast, and follow the Swimmer to seek the Water of Life." set doOnce to 1 Journal BM_Water 10 set play to 0 endif elseif ( GetJournalIndex BM_Water = 70 ) if ( doOnce == 1 ) if ( Player->GetItemCount bm_waterlife_unique1 > 0 ) set doOnce to 2 Journal BM_Water 100 Journal BM_Stones 60 set stones to ( stones + 1 ) Player->RemoveItem bm_waterlife_unique1 1 Act_BM_Water_parts->Enable set play to 0 endif endif else set play to 0 endif endif End stoneWaterScript
272stoneWindScriptBegin stoneWindScript ;ACTIVATES STANDING STONE AND ENABLES/DISABLES ALL RELEVANT OBJECTS short doOnce short play if ( stones == 6 ) Journal BM_Stones 80 set stones to -1 endif if ( GetJournalIndex BM_Stones < 30 ) return endif if ( OnActivate == 1 ) set play to 1 endif if ( play == 1 ) if ( GetJournalIndex BM_Wind < 10 ) if ( doOnce == 0 ) MessageBox "Travel south and east of the lake of ice to Glenschul's Tomb and free the Winds from the Greedy Man's bag." set doOnce to 1 Journal BM_Wind 10 set play to 0 endif elseif ( GetJournalIndex BM_Wind == 50 ) if ( doOnce == 1 ) set doOnce to 2 Journal BM_Wind 100 Journal BM_Stones 70 set stones to ( stones + 1 ) Act_BM_Wind_parts->Enable set play to 0 endif else set play to 0 endif endif End stoneWindScript
273SvenjaOutsideBegin SvenjaOutside Short NoLore if ( OnDeath == 1 ) Journal BM_MeadHall 110 endif if ( GetJournalIndex "BM_MeadHall" = 40 ) Enable endif if ( GetJournalIndex "BM_MeadHall" < 40 ) Disable endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) if ( GetJournalIndex "BM_MeadHall" < 110 ) if ( OnDeath == 0 ) Disable endif endif endif End SvenjaOutside
274SvenjaThirskBegin SvenjaThirsk Short MeadDelivery Short CurrentDay Short LocaldaysPassed Short Busy Short NoLore Short Change if ( currentDay != Day ) set currentDay to Day set localdaysPassed to localdaysPassed + 1 endif if ( "svenja_outside"->GetHealth <=0 ) Disable Return endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) Enable endif if ( GetHealth > 0 ) if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Disable endif endif endif End SvenjaThirsk
275swimmerScriptBegin swimmerScript ;ENABLES/DISABLES HORKER, GIVES TRAVEL PACKAGE, JOURNAL ENTRIES short moving short doOnce if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Water < 10 ) Disable elseif ( GetJournalIndex BM_Water >= 70 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Water == 10 ) Enable endif endif if ( GetJournalIndex BM_Water == 10 ) if ( GetDistance Player <= 256 ) Journal BM_Water 50 set moving to 1 endif endif if ( GetJournalIndex BM_Water == 50 ) if ( GetDistance Player <= 256 ) if ( doOnce == 0 ) AiEscort Player 0 -219541.625 217412.188 0 0 set doOnce to 1 endif endif endif if ( GetJournalIndex BM_Water == 50 ) if ( moving == 1 ) if ( GetDistance BM_KA_door_dark_SG <= 2100 ) if ( GetAiPackageDone == 1 ) Journal BM_Water 60 endif endif endif endif End swimmerScript
276ThirskBuilderBegin ThirskBuilder Short NoLore if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Enable endif endif if ( GetJournalIndex "BM_MeadHall" < 40 ) Disable endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) Disable endif End ThirskBuilder
277ThirskCorpseBegin ThirskCorpse Short NoLore if ( GetJournalIndex "BM_Trial" >= 100 ) SetHealth 0 endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) Disable endif End ThirskCorpse
278ThirskDoorsClosedBegin ThirskDoorsClosed if ( GetPCCell "Solstheim, Thirsk" == 0 ) Return endif if ( GetJournalIndex "BM_Trial" >= 100 ) if ( GetJournalIndex "BM_MeadHall" >= 70 ) "In_thirsk_door_main_1_b"->Disable "In_thirsk_door_main_2_b"->Disable endif endif if ( GetJournalIndex "BM_Trial" < 100 ) "In_thirsk_door_main_1_b"->Disable "In_thirsk_door_main_2_b"->Disable endif if ( GetJournalIndex "BM_Trial" >= 100 ) if ( GetJournalIndex "BM_MeadHall" <= 60 ) "In_thirsk_door_main_1_b"->Enable "In_thirsk_door_main_2_b"->Enable endif endif End
279ThirskDoorsOpenBegin ThirskDoorsOpen if ( GetPCCell "Solstheim, Thirsk" == 0 ) Return endif if ( GetJournalIndex "BM_Trial" >= 100 ) if ( GetJournalIndex "BM_MeadHall" >= 70 ) "In_thirsk_door_main_1"->Enable "In_thirsk_door_main_2"->Enable endif endif if ( GetJournalIndex "BM_Trial" < 100 ) "In_thirsk_door_main_1"->Enable "In_thirsk_door_main_2"->Enable endif if ( GetJournalIndex "BM_Trial" >= 100 ) if ( GetJournalIndex "BM_MeadHall" <= 60 ) "In_thirsk_door_main_1"->Disable "In_thirsk_door_main_2"->Disable endif endif End
280thirskdudesbegin thirskdudes short nolore if ( GetJournalIndex "BM_MeadHall" < 70 ) Disable endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) Enable StopScript MeadScript endif end thirskdudes
281ThirskFixedBegin ThirskFixed if ( GetJournalIndex "BM_MeadHall" = 70 ) Enable endif if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Disable endif endif if ( GetJournalIndex "BM_MeadHall" >= 110 ) Disable endif End ThirskFixed
282ThirskRepairBegin ThirskRepair if ( GetJournalIndex "BM_MeadHall" >= 110 ) Enable "Ex_De_Thirsk_Plank"->Enable "Ex_De_Thirsk_Plank_b"->Enable endif if ( GetJournalIndex "BM_MeadHall" = 40 ) Enable "Ex_De_Thirsk_Plank"->Enable "Ex_De_Thirsk_Plank_b"->Enable endif if ( GetJournalIndex "BM_MeadHall" < 40 ) Disable "Ex_De_Thirsk_Plank"->Disable "Ex_De_Thirsk_Plank_b"->Disable endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) if ( GetJournalIndex "BM_MeadHall" < 110 ) Disable "Ex_De_Thirsk_Plank"->Disable "Ex_De_Thirsk_Plank_b"->Disable endif endif if ( OnActivate == 1 ) MessageBox "Thirsk is closed. You may not enter at this time." endif End ThirskRepair
283ThirskRubbleBegin ThirskRubble if ( GetPCCell "Solstheim, Thirsk" == 0 ) Return endif if ( GetJournalIndex "BM_Trial" >= 100 ) if ( GetJournalIndex "BM_MeadHall" >= 70 ) "ingred_udyrfrykte_heart"->Enable "BM_misc_skull_griss_floor"->Disable "In_Thirsk_columnpiece01"->Disable "In_Thirsk_columnpiece02"->Disable "In_Thirsk_archpiece01"->Disable "In_Thirsk_archpiece02"->Disable "In_Thirsk_beampiece01"->Disable "In_Thirsk_beampiece03"->Disable "silver arrow_thirsk_1"->Disable "silver arrow_thirsk_2"->Disable "silver arrow_thirsk_3"->Disable "silver arrow_thirsk_4"->Disable ;"silver arrow_thirsk_5"->Disable "silver arrow_thirsk_6"->Disable "silver arrow_thirsk_7"->Disable "silver arrow_thirsk_8"->Disable "silver arrow_thirsk_9"->Disable "silver arrow_thirsk_0"->Disable "furn_table_thirsk_over"->Disable "furn_table_thirsk_up"->Enable "In_Thirsk_ruins"->Disable "In_Thirsk_downstairs"->Enable endif endif if ( GetJournalIndex "BM_Trial" < 100 ) "ingred_udyrfrykte_heart"->Disable "BM_misc_skull_griss_floor"->Disable "In_Thirsk_columnpiece01"->Disable "In_Thirsk_columnpiece02"->Disable "In_Thirsk_archpiece01"->Disable "In_Thirsk_archpiece02"->Disable "In_Thirsk_beampiece01"->Disable "In_Thirsk_beampiece03"->Disable "silver arrow_thirsk_1"->Disable "silver arrow_thirsk_2"->Disable "silver arrow_thirsk_3"->Disable "silver arrow_thirsk_4"->Disable ;"silver arrow_thirsk_5"->Disable "silver arrow_thirsk_6"->Disable "silver arrow_thirsk_7"->Disable "silver arrow_thirsk_8"->Disable "silver arrow_thirsk_9"->Disable "silver arrow_thirsk_0"->Disable "furn_table_thirsk_over"->Disable "furn_table_thirsk_up"->Enable "In_Thirsk_ruins"->Disable "In_Thirsk_downstairs"->Enable endif if ( GetJournalIndex "BM_Trial" >= 100 ) if ( GetJournalIndex "BM_MeadHall" <= 60 ) "ingred_udyrfrykte_heart"->Disable "BM_misc_skull_griss_floor"->Enable "In_Thirsk_columnpiece01"->Enable "In_Thirsk_columnpiece02"->Enable "In_Thirsk_archpiece01"->Enable "In_Thirsk_archpiece02"->Enable "In_Thirsk_beampiece01"->Enable "In_Thirsk_beampiece03"->Enable "silver arrow_thirsk_1"->Enable "silver arrow_thirsk_2"->Enable "silver arrow_thirsk_3"->Enable "silver arrow_thirsk_4"->Enable ;"silver arrow_thirsk_5"->Enable "silver arrow_thirsk_6"->Enable "silver arrow_thirsk_7"->Enable "silver arrow_thirsk_8"->Enable "silver arrow_thirsk_9"->Enable "silver arrow_thirsk_0"->Enable "furn_table_thirsk_over"->Enable "furn_table_thirsk_up"->Disable "In_Thirsk_ruins"->Enable "In_Thirsk_downstairs"->Disable endif endif End ThirskRubble
284ThirskSvenjaDeathBegin ThirskSvenjaDeath if ( GetJournalIndex "BM_MeadHall" = 20 ) SetHealth 0 endif End ThirskSvenjaDeath
285ThirskUdyrfrykteBegin ThirskUdyrfrykte Disable if ( GetJournalIndex "BM_MeadHall" = 20 ) Enable endif End ThirskUdyrfrykte
286ThormoorOutsideBegin ThormoorOutside short nolore if ( "thormoor_thirsk"->GetHealth <=0 ) Disable Return endif if ( GetHealth <=0 ) "thormoor_thirsk"->Disable Return endif if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) if ( GetJournalIndex BM_CursedCaptain >= 50 ) Enable endif endif endif if ( GetJournalIndex "BM_MeadHall" >= 0 ) if ( GetJournalIndex "BM_MeadHall" < 40 ) if ( GetJournalIndex BM_CursedCaptain >= 50 ) Disable endif endif endif if ( GetJournalIndex "BM_MeadHall" < 40 ) if ( GetJournalIndex BM_CursedCaptain < 50 ) Disable endif endif if ( GetJournalIndex "BM_MeadHall" >= 70 ) if ( GetHealth > 0 ) Disable endif endif End ThormoorOutside
287ThormoorTeleportBegin ThormoorTeleport short nolore ; Disables Thormoor at the coast after the player leaves -- another version gets reenabled at Thirsk if ( GetJournalIndex "BM_CursedCaptain" < 50 ) Enable endif if ( GetJournalIndex BM_CursedCaptain >= 50 ) if ( GetPCCell "Solstheim, Thormoor's Watch" == 0 ) Disable endif endif End ThormoorTeleport
288ThormoorThirskBegin ThormoorThirsk ; Enables Thurmoor in Thirsk after the curse has been lifted. short nolore if ( "thormoor gray-wave"->GetHealth <=0 ) Disable Return endif if ( "thormoor_out"->GetHealth <=0 ) Disable Return endif if ( GetHealth > 0 ) if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Disable endif endif endif if ( GetHealth > 0 ) if ( GetJournalIndex BM_CursedCaptain >= 50 ) if ( GetJournalIndex "BM_MeadHall" >= 40 ) if ( GetJournalIndex "BM_MeadHall" < 70 ) Disable endif endif endif endif if ( GetHealth > 0 ) if ( GetJournalIndex BM_CursedCaptain >= 50 ) if ( GetJournalIndex "BM_MeadHall" >= 0 ) if ( GetJournalIndex "BM_MeadHall" < 40 ) Enable endif endif endif endif if ( GetJournalIndex BM_CursedCaptain >= 50 ) if ( GetJournalIndex "BM_MeadHall" >= 70 ) Enable endif endif if ( GetJournalIndex BM_CursedCaptain < 50 ) Disable endif End ThormoorThirsk
289TorchdayScriptBegin TorchdayScript If MenuMode == 1 Return endif If ( GetDisabled == 1 ) if ( GameHour >= 7 ) if ( GameHour <= 16 ) enable endif endif endif If ( GetDisabled == 0 ) if ( GameHour <7 ) if ( GameHour >16 ) disable endif endif endif end
290TorchNightScriptBegin TorchNightScript If MenuMode == 1 Return endif If ( GetDisabled == 1 ) if ( GameHour <= 7 ) if ( GameHour >= 16 ) enable endif endif endif If ( GetDisabled == 0 ) if ( GameHour >7 ) if ( GameHour <16 ) disable endif endif endif end
291totemchestScriptBegin totemchestScript if ( GetJournalIndex BM_Ceremony1 == 20 ) if ( player->GetItemCount misc_BM_ClawFang_UNIQUE > 0 ) Journal BM_Ceremony1 30 endif endif if ( GetItemCount misc_BM_ClawFang_UNIQUE > 1 ) RemoveItem misc_BM_ClawFang_UNIQUE 1 endif if ( OnActivate == 1 ) if ( PCWerewolf == 1 ) MessageBox "Those cursed by the Beast may not open this sacred chest." else Activate endif endif End totemchestScript
292totemScriptBegin totemScript ;THIS SCRIPT CREATES A 10% CHANCE OF BEARS ATTACKING THE PLAYER IN HIS SLEEP WHILE IN THE PC'S POSSESSION short bearchance short beardist short placebear short temp if ( GetJournalIndex BM_Ceremony1 == 20 ) if ( player->GetItemCount misc_BM_ClawFang_UNIQUE > 0 ) Journal BM_Ceremony1 30 endif endif if ( player->GetItemCount misc_BM_ClawFang_UNIQUE == 0 ) ;DOES PC HAVE TOTEM return endif if ( GetPCSleep != 1 ) ;IS PC ASLEEP, ALSO RESET VARIABLE return set beardist to 0 set placebear to 0 endif set bearchance to Random100 ;MAKE VARIABLE A RANDOM NUMBER 0-100 if ( bearchance > 10 ) ;ONLY 10% CHANCE OF ATTACK return endif ;CHECK PLAYER LEVEL, PLACE BEARS, MAKE BEARS ATTACK if ( player->GetLevel >= 30 ) set placebear to 3 elseif ( player->GetLevel >= 20 ) set placebear to 2 elseif ( player->GetLevel < 20 ) set placebear to 1 endif set temp to placebear set beardist to ( beardist + 128 ) while ( temp != 0 ) PlaceAtPC BM_bear_black_Claw_UNIQ 1 beardist 1 set temp to ( temp - 1 ) endwhile WakeUpPC MessageBox "You are awakened by the sounds of bears around you." End totemScript
293trackerScriptBegin trackerScript short state short sattirdone short greriddone short rolfdone short distancecheck short statereset short paused short moving short movingreset short wolfcount if ( GetJournalIndex BM_BearHunt1 < 25 ) return endif if ( GetJournalIndex BM_BearHunt1 >= 100 ) return endif if ( Player->GetDistance "rolf long-tooth" > 500 ) if ( state < 80 ) ;MessageBox "TRACKERPAUSE SET TO 1." set trackerpause to 1 endif endif if ( trackerpause == 1 ) if ( state != -1 ) ;MessageBox "STATERESET SET TO STATE. STATE SET TO -1" set statereset to state set movingreset to moving set moving to 0 set state to -1 endif endif if ( state == -1 ) if ( paused == 0 ) "sattir the bold"->AiWander 0 0 0 0 0 0 "grerid axe-wife"->AiWander 0 0 0 0 0 0 "rolf long-tooth"->AiWander 0 0 0 0 0 0 set paused to 1 ;MessageBox "WANDER SET FOR ALL THREE. PAUSED SET TO 1." endif endif if ( paused == 1 ) if ( Player->GetDistance "rolf long-tooth" <= 512 ) set trackerpause to 2 ;MessageBox "DISTANCE OK AGAIN. TRACKERPAUSE SET TO 2." endif endif if ( trackerpause == 2 ) set state to statereset set statereset to 0 set trackerpause to 0 set paused to 0 ;MessageBox "STATE TO RESET. RESET TO 0. TRACKERPAUSE TO 0. PAUSED TO 0." endif if ( state == 0 ) if ( moving == 0 ) ;MessageBox "STARTING TRAVEL PACKAGES" "sattir the bold"->AiTravel -173940.828 194911.391 632.957 "grerid axe-wife"->AiTravel -170245.578 195622.125 697.838 "rolf long-tooth"->AiTravel -172008.281 195049.297 810.818 "sattir the bold"->SetHello 10 "grerid axe-wife"->SetHello 10 "rolf long-tooth"->SetHello 10 ;"rolf long-tooth"->AiEscort Player 0 -172008.281 195049.297 810.818 0 set moving to 10 endif endif if ( moving > 0 ) ;MessageBox "GETPACKAGEDONE STUFF STARTING" if ( "sattir the bold"->GetAiPackageDone == 1 ) set sattirdone to 1 endif if ( "grerid axe-wife"->GetAiPackageDone == 1 ) set greriddone to 1 endif if ( "rolf long-tooth"->GetAiPackageDone == 1 ) set rolfdone to 1 endif endif if ( moving > 0 ) if ( sattirdone == 1 ) ;elseif ( GetJournalIndex BM_Ceremony1 >= 45 ) if ( greriddone == 1 ) ;elseif ( GetJournalIndex BM_Ceremony1 >= 60 ) if ( rolfdone == 1 ) ;MessageBox "ALL THREE SHOULD HAVE REACHED FIRST POINT" set state to ( state + 10 ) set moving to 0 endif endif endif endif if ( state == 10 ) active_BM_huntscream1->PlaySound "BM Nord Attack" set "rolf long-tooth".rolfstate to 10 "sattir the bold"->SetHealth 0 "rolf long-tooth"->ForceGreeting set rolfdone to 0 set greriddone to 0 set state to 20 endif if ( statereset == 20 ) if ( Player->GetDistance "sattir the bold" <= 200 ) if ( GetJournalIndex BM_BearHunt1 < 40 ) Journal BM_BearHunt1 40 endif endif endif if ( GetJournalIndex BM_BearHunt1 == 45 ) if ( state == 20 ) set state to 30 endif endif if ( state == 30 ) if ( moving == 0 ) "rolf long-tooth"->AiTravel -172090.703 193469.188 452.030 "grerid axe-wife"->AiTravel -169821.828 193690.719 140.888 set moving to 10 endif endif if ( state == 40 ) active_BM_huntscream2->PlaySound "BM Nord AttackF" set "rolf long-tooth".rolfstate to 20 "grerid axe-wife"->SetHealth 0 "rolf long-tooth"->ForceGreeting set rolfdone to 0 set state to 50 endif if ( statereset == 50 ) if ( Player->GetDistance "grerid axe-wife" <= 200 ) if ( GetJournalIndex BM_BearHunt1 < 55 ) Journal BM_BearHunt1 55 endif endif endif if ( GetJournalIndex BM_BearHunt1 == 60 ) if ( state == 50 ) set wolfcount to 128 set state to 60 endif endif if ( state == 60 ) if ( moving == 0 ) "rolf long-tooth"->AiTravel -172854.547 191164.219 902.094 set moving to 10 endif endif if ( state == 70 ) while ( wolfcount < 896 ) PlaceAtPC werewolf_bearhunt 1 wolfcount 1 set wolfcount to ( wolfcount + 256 ) return endwhile "rolf long-tooth"->AiFollow Player 0 0 0 0 0 0 set state to 80 endif if ( state == 80 ) if ( wereBdead == 3 ) Journal BM_BearHunt1 70 set state to 90 endif endif if ( state == 90 ) if ( player->GetItemCount BM_bearheart_UNIQUE == 1 ) Journal BM_BearHunt1 80 set state to 100 endif endif End trackerScript
294tracksound1ScriptBegin tracksound1Script short doOnce if ( active_bm_tracker1.sattirdone == 1 ) if ( active_bm_tracker1.rolfdone == 1 ) if ( active_bm_tracker1.state == 10 ) if ( doOnce == 0 ) PlaySound "BM Nord Attack" set doOnce to 1 endif endif endif endif End tracksound1Script
295tracksound2ScriptBegin tracksound2Script short doOnce if ( active_bm_tracker1.greriddone == 1 ) if ( active_bm_tracker1.rolfdone == 1 ) if ( active_bm_tracker1.state == 40 ) if ( doOnce == 0 ) PlaySound "BM Nord Attack" set doOnce to 1 endif endif endif endif End tracksound2Script
296treboniusScriptBegin treboniusScript ;if you're both in the Arena ;and if the guildmaster quest is active... ;sets a journal and raises the player's rank ;when trebonius dies. short doOnce short nolore if ( doOnce == 1 ) Return endif if ( GetJournalIndex MG_Guildmaster < 50 ) Return endif if ( GetPCCell "Vivec, Arena" == 0 ) Return endif if ( duelActive == 0 ) Return endif if ( OnDeath == 1 ) Set DuelActive to 0 Set doOnce to 1 PCRaiseRank "Mages Guild" PCRaiseRank "Mages Guild" Journal MG_Guildmaster 100 endif End
297treesprigScriptBegin treesprigScript short deathvar short playonce float time float xpos float ypos float zpos short doonce short aiOnce If (MenuMode==1) Return Endif ;this part just enables/disables if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Trees < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Trees >= 10 ) Enable endif endif ;this checks to see if the player has seeds if ( player->GetItemCount BM_Seeds_UNIQUE > 0 ) if ( aiOnce == 0 ) StopCombat Player AiWander 128 0 0 0 0 0 0 SetFight 30 set aiOnce to 1 endif Endif If (MenuMode==1) Return Endif If (deathvar==3) ;after killed 3 times, she acts like dead creature If (onactivate==1) Activate endif Return elseif (deathvar < 1) If (ondeath==1) set deathvar to 1 ;first death endif Return elseif (deathvar==1) If (onactivate==1) return endif If (playonce==0) If (doonce==0) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +30) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 1 endif set time to ( time + GetSecondsPassed ) If (time>=1) Setscale 1.00 ;increase her size Resurrect ; revives spriggan ModHealth 2 ModResistParalysis 100 ModResistPoison 100 Set playonce to 1 Set time to 0 endif endif If (ondeath==1) set deathvar to 2 ;second death endif Return elseif (deathvar==2) If (onactivate==1) return endif if (playonce==1) If (doonce==1) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) set zpos to (zpos +20) Placeitem "sprigganup" xpos ypos zpos 0 ;places effect set doonce to 2 endif set time to ( time + GetSecondsPassed ) if (time>=1) Resurrect ; revives spriggan when activated by player Setscale 1.20 ;increase her size ModHealth 3 ModResistParalysis 100 ModResistPoison 100 ModResistMagicka 100 ModResistFire 100 ModResistFrost 100 Set playonce to 2 endif endif endif If (ondeath==1) set deathvar to 3 ;third, final death endif endif End treesprigScript
298treesriekScriptBegin treesriekScript ;ENABLES/DISABLES RIEKLING FOR QUEST short doOnce short alive if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Trees < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Trees >= 10 ) Enable set alive to 1 endif endif ;gives journal telling player he's near, also gives journal telling has seeds if ( alive == 1 ) if ( GetDistance Player <= 800 ) Journal BM_Trees 20 set alive to 2 endif endif if ( player->GetItemCount BM_Seeds_UNIQUE > 0 ) if ( GetJournalIndex BM_Trees < 30 ) Journal BM_Trees 30 endif endif End treesriekScript
299TymvaulScriptbegin TymvaulScript short NoLore if ( GetJournalIndex BM_Tymvaul < 100 ) Enable endif if ( GetJournalIndex BM_Tymvaul = 100 ) if ( OnDeath == 0 ) Disable endif endif if ( OnDeath == 1 ) if ( GetJournalIndex BM_Tymvaul >= 40 ) Journal BM_Tymvaul 60 endif endif end TymvaulScript
300UdyrfrykteDeadBegin UdyrfrykteDead if ( GetJournalIndex "BM_MeadHall" < 30 ) Disable endif if ( GetJournalIndex "BM_MeadHall" >= 30 ) Enable endif if ( OnDeath == 1 ) if ( GetJournalIndex BM_MeadHall >= 30 ) Journal BM_MeadHall 40 StartScript MirisaTeleport endif endif End
301UlfgarGhostScriptBegin UlfgarGhostScript float xpos float ypos float zpos ; This script enables Ulgar as a ghost after he's killed. He forces greeting if approached or attacked. short controlvar short greetonce short NoLore short OnPCHitMe short disabling float timer if ( menumode == 1 ) return endif if ( disabling == 2 ) return endif if ( disabling == 1 ) set timer to ( timer + getsecondspassed ) if (timer > .75 ) disable set disabling to 2 endif return endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_BrodirGrove" = 100 ) set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "ulfgar_ring" xpos ypos zpos 0 set disabling to 1 endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_BrodirGrove" < 90 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "BM_BrodirGrove" = 90 ) Enable endif endif If ( controlvar == 0 ) AddSpell Ulfgar_Ghost_sp ulfgar_ghost Set controlvar to 1 endif if ( GetJournalIndex "BM_BrodirGrove" = 90 ) if ( GetDistance, Player <= 220 ) if ( greetonce == 0 ) ForceGreeting set greetonce to -1 endif endif endif if ( OnPCHitMe == 1 ) if ( greetonce == 0 ) ForceGreeting set greetonce to -1 endif endif end UlfgarGhostScript
302UlfgarRingBegin UlfgarRing float ringtimer short castonce if ( castonce == 0 ) ExplodeSpell "ulfgar_ghost_ring" Disable set castonce to 1 endif if ( ringtimer > 3 ) SetDelete 1 else set ringtimer to ( ringtimer + GetSecondsPassed ) endif End UlfgarRing
303UlfgarScriptBegin UlfgarScript Short NoLore ;This script gets Ulfgar to utter his dying words to the player short greetonce if ( greetonce == -1 ) Return endif if ( GetJournalIndex BM_BrodirGrove >= 40 ) if ( GetHealth <=50 ) if ( greetonce == 0 ) Journal BM_BrodirGrove 90 ForceGreeting set greetonce to -1 endif endif endif End
304ValbrandrDraugrbegin ValbrandrDraugr short DoOnce short IngmarHit short OnPCHitMe Short controlvar float currenthealth float oldhealth If ( GetJournalIndex "BM_Ingmar" <= 20 ) Return Endif if ( DoOnce == -1 ) Return Endif set currenthealth to GetHealth ;sets currenthealth to draugr's actual health if ( IngmarHit == 0 ) ; sets IngmarHit to check for hit by his weapon set IngmarHit to HitOnMe Solvistapp endif if ( currenthealth < oldhealth ) ;checks if draugr got damaged last frame if ( IngmarHit == 0 ) Journal BM_Ingmar 40 Set DoOnce to -1 endif set IngmarHit to 0 ;resets IngmarHit, so it can check again endif set oldhealth to GetHealth ;sets oldhealth for comparison for next frame if ( OnDeath == 1 ) Journal BM_Ingmar 50 endif end
305VampireCheckbegin VampireCheck ;this is a global scritp that constantly runs checking for the blood disease that causes vampirism ;there are three blood diseases that cause this. You can only get one. ;So if you have one, or are a vampire, then the new one is removed. ;this script will check if you have the disease, then wait till the 3rd day, see if you still have it, then make you a vampire short currentDay short dayCount short hasDisease short state ;PCVampire, 0 = Normal, 1 = Vampire, -1 = Cured if ( Player->GetSpell "werewolf blood" == 1 ) return endif if ( PCWereWolf == 1 ) ;added for Bloodmoon to make sure PC can't be vampire and werewolf return endif if ( state == -1 ) return endif if ( state == 10 ) MessageBox "I dreamt of a blond maiden. I drew near, and saw she was crying, but her tears were red as blood. I touched her tears and tasted them, and they were wonderfully salty, sharp with spice and savor. But the maiden's face had changed, her skin grey-white, and red tears dripped from her lips, and her hair had turned black, and wreathed her head like twining snakes. I was afraid, but could not run. I screamed, and then I woke, heart pounding, cramped and aching.", "Ok" set state to -1 ;check which one they have and give the goods. if ( player->GetSpell "Vampire Blood Quarra" == 1 ) StartScript Vampire_Quarra_PC elseif ( player->GetSpell "Vampire Blood Aundae" == 1 ) StartScript Vampire_Aundae_PC elseif ( player->GetSpell "Vampire Blood Berne" == 1 ) StartScript Vampire_Berne_PC endif return endif if ( PCVampire != 0 ) stopscript VampireCheck ;stop this script if they become a vampire return endif if ( player->GetSpell "Vampire Blood Quarra" == 1 ) if ( hasDisease == 0 ) set hasDisease to 1 set currentDay to Day endif elseif ( player->GetSpell "Vampire Blood Aundae" == 1 ) if ( hasDisease == 0 ) set hasDisease to 1 set currentDay to Day endif elseif ( player->GetSpell "Vampire Blood Berne" == 1 ) if ( hasDisease == 0 ) set hasDisease to 1 set currentDay to Day endif else if ( hasDisease == 1 ) ;they had it at one point, but don't anymore set hasDisease to 0 set currentDay to 0 set dayCount to 0 endif endif if ( hasDisease == 1 ) ;has disease will get set back to 0 before here if they cured it if ( currentDay != day ) ;the day has changed, so up the count set dayCount to dayCount + 1 set currentDay to Day endif if ( dayCount >= 3 ) ;goes over 3 days if ( GetPCSleep == 1 ) wakeupPC set state to 10 endif endif endif end VampireCheck
306waterbottleScriptBegin waterbottleScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Wind >= 10 ) Enable endif endif End waterbottleScript
307watersScriptBegin watersScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Water < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Water >= 10 ) Enable endif endif if ( GetJournalIndex BM_Water < 70 ) if ( Player->GetItemCount BM_waterlife_UNIQUE1 > 0 ) Journal BM_Water 70 endif endif End waterScript
308wereBearhuntScriptBegin wereBearhuntScript short doOnce BecomeWerewolf if ( doOnce == 0 ) BecomeWerewolf set doOnce to 1 endif if ( OnDeath == 1 ) set wereBdead to ( wereBdead + 1 ) endif End wereBearhuntScript
309wereCeremonyScriptBegin wereCeremonyScript short doOnce short wereCdead BecomeWerewolf if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Ceremony1 < 10 ) Disable endif endif if ( doOnce == 0 ) if ( GetJournalIndex BM_Ceremony1 >= 10 ) set doOnce to 1 ;MessageBox "WHERE'S OUR DOONCE???" Enable return endif endif if ( doOnce == 1 ) ;if ( GetDistance Player < 5000 ) ;MessageBox "I'M BECOMING A WEREWOLF!" BecomeWerewolf set doOnce to 2 ;endif endif if ( OnDeath == 1 ) set wereCdead to ( wereCdead + 1 ) endif End wereCeremonyScript
310WereChange2ScriptBegin WereChange2Script ;THIS SCRIPT WILL CHECK THE TIME OF DAY FOR WEREWOLF PLAYERS, CHANGE THEM INTO WOLF FORM, AND CHANGE THEM BACK ;AT LEAST IN THEORY short makewolf short fadecontrol short firstdream float timer float timer2 short dreamcount short sleeping if ( PCWerewolf != 1 ) ;DON'T RUN IF PLAYER ISN'T WEREWOLF return endif if ( GetPCinJail == 1 ) return endif if ( GetPCTraveling == 1 ) return endif if ( makewolf == 2 ) if ( GetWerewolfKills != 0 ) set werehungerScript.reset to 0 StopScript werehungerScript ;REMOVE THE BLOODLUST ONCE AN NPC IS KILLED set makewolf to 0 Player->AddSpell "werewolf regeneration" endif endif if ( makewolf == 1 ) if ( sleeping == 1 ) set timer to 5 endif if ( timer < 5 ) ;MessageBox "INCREMENTING TIMER" set timer to ( timer + GetSecondsPassed ) return endif if ( fadecontrol == 0 ) ;FADE THE PLAYER BACK IN, MAKE WOLF if ( firstdream == 0 ) PlayBink "bm_werewolf1.bik" 1 ;PLAY FIRST WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY FIRST CHANGE DREAM BINK" Player->RemoveSpell "werewolf blood" set firstdream to 1 elseif ( firstdream == 1 ) if ( dreamcount == 0 ) if ( GetJournalIndex BM_Ceremony2 < 10 ) if ( GetJournalIndex BM_Ceremony1 == 0 ) ;MessageBox "SHOULD PLAY FIRST QUEST DREAM" PlayBink "bm_ceremony1.bik" 1 Journal BM_Ceremony2 10 set dreamcount to 1 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK1" endif elseif ( GetJournalIndex BM_Ceremony1 >= 100 ) if ( BM_BearHunt1 == 0 ) ;MessageBox "SHOULD PLAY SECOND QUEST DREAM" PlayBink "bm_bearhunt1.bik" 1 Journal BM_BearHunt2 10 set dreamcount to 2 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK2" endif elseif ( GetJournalIndex BM_BearHunt1 >= 100 ) if ( BM_FrostGiant1 == 0 ) ;MessageBox "SHOULD PLAY THIRD QUEST DREAM" bm_ex_karstaag_dooropen->Enable bm_ex_karstaag_doorclosed->Disable PlayBink "bm_frostgiant1.bik" 1 Journal BM_FrostGiant2 10 set dreamcount to 3 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK3" endif endif elseif ( dreamcount == 1 ) if ( GetJournalIndex BM_Ceremony2 >= 100 ) ;MessageBox "SHOULD PLAY SECOND QUEST DREAM" PlayBink "bm_bearhunt1.bik" 1 Journal BM_BearHunt2 10 set dreamcount to 2 elseif ( GetJournalIndex BM_Ceremony2 == 50 ) ;MessageBox "SHOULD PLAY FIRST DREAM RESOLUTION" set werewolfclawmult to 35 PlayBink "bm_ceremony2.bik" 1 Journal BM_Ceremony2 100 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK4" endif elseif ( dreamcount == 2 ) ;MessageBox "CHECKED BEARHUNT JOURNAL" if ( GetJournalIndex BM_BearHunt2 >= 100 ) ;MessageBox "SHOULD PLAY THIRD QUEST DREAM" bm_ex_karstaag_dooropen->Enable bm_ex_karstaag_doorclosed->Disable PlayBink "bm_frostgiant1.bik" 1 Journal BM_FrostGiant2 10 set dreamcount to 3 elseif ( GetJournalIndex BM_BearHunt2 == 50 ) ;MessageBox "SHOULD PLAY SECOND DREAM RESOLUTION" PlayBink "bm_bearhunt2.bik" 1 Journal BM_BearHunt2 100 Player->AddSpell bm_SummonBonewolf else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK5" endif elseif ( dreamcount == 3 ) if ( GetJournalIndex BM_FrostGiant2 == 100 ) ;MessageBox "SHOULD PLAY PRE-ENDGAME DREAM" PlayBink "bm_wereend.bik" 1 Journal BM_WildHunt 25 Player->PositionCell -11.328 -134.609 -107.016 180 "Solstheim, Mortrag Glacier: Entry" StartScript wildhuntStartScript set dreamcount to 4 return elseif ( GetJournalIndex BM_FrostGiant2 == 70 ) ;MessageBox "SHOULD PLAY THIRD DREAM RESOLUTION" PlayBink "bm_frostgiant2.bik" 1 Journal BM_FrostGiant2 100 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK6" endif endif endif if ( Player->IsWerewolf == 0 ) Player->BecomeWereWolf StartScript werehungerScript Player->AddSpell "werewolf vision" Player->SetWereWolfAcrobatics endif if ( sleeping == 0 ) FadeIn 5 else WakeUpPC endif set fadecontrol to 1 set timer to 0 return elseif ( fadecontrol == 1 ) ; GIVE CONTROLS AFTER FADE IN, ADD BLOODLUST set makewolf to 2 set sleeping to 0 EnablePlayerControls set fadecontrol to 0 return endif ;MessageBox "MAKEWOLF IS ONE NOW AND IT JUST RAN THROUGH THAT PART" endif ;MessageBox "SHOULD BE CHECKING TIME OF DAY NOW" if ( GameHour < 21 ) ;CHECK THAT IT'S NIGHT if ( GameHour > 6 ) if ( Player->IsWerewolf == 1 ) ;CHANGE PLAYER BACK WHEN IT'S DAYTIME ;MessageBox "PLAYER SHOULD CHANGE BACK FOR DAYTIME NOW" DisablePlayerControls if ( MenuMode == 1 ) set sleeping to 1 endif if ( sleeping == 0 ) if ( fadecontrol == 0 ) FadeOut 5 set fadecontrol to 1 endif if ( timer2 < 5 ) set timer2 to ( timer2 + GetSecondsPassed ) else if ( fadecontrol == 1 ) Player->RemoveSpell "werewolf vision" Player->RemoveSpell "werewolf regeneration" Player->UndoWerewolf set makewolf to 0 set fadecontrol to 2 set timer2 to 0 FadeIn 5 if ( fadecontrol == 2 ) while ( timer2 < 5 ) set timer2 to ( timer2 + GetSecondsPassed ) endwhile EnablePlayerControls set fadecontrol to 0 set timer2 to 0 endif endif endif elseif ( sleeping == 1 ) Player->RemoveSpell "werewolf vision" Player->RemoveSpell "werewolf regeneration" Player->UndoWerewolf set makewolf to 0 set timer to 0 set timer2 to 0 WakeUpPC ;while ( timer 2 < 5 ) ;set timer2 to ( timer2 + GetSecondsPassed ) ;endwhile EnablePlayerControls endif endif return endif endif if ( Player->IsWerewolf == 0 ) ;CHECK THAT PLAYER ISN'T ALREADY WERE-FORM set makewolf to 1 ;MessageBox "MAKEWOLF IS 1. PLAYER SHOULD LOSE CONTROL AND FADE" DisablePlayerControls ;TAKE PLAYER CONTROL, FADE OUT if ( MenuMode == 1 ) set sleeping to 1 else set sleeping to 0 FadeOut 5 endif return elseif ( Player->IsWereWolf == 1 ) return endif End WereChange2Script
311WereChangeScriptBegin WereChangeScript ;THIS SCRIPT WILL CHECK THE TIME OF DAY FOR WEREWOLF PLAYERS, CHANGE THEM INTO WOLF FORM, AND CHANGE THEM BACK ;AT LEAST IN THEORY short makewolf short fadecontrol short firstdream float timer float timer2 short dreamcount short sleeping short isfading short isday if ( PCWerewolf != 1 ) ;DON'T RUN IF PLAYER ISN'T WEREWOLF return endif ;for Werewolf handling if ( PCKnownWerewolf == 1 ) if ( PCKnownReset != 1 ) set PCKnownReset to 1 endif endif if ( GetPCinJail == 1 ) return endif if ( GetPCTraveling == 1 ) return endif if ( makewolf == 2 ) if ( GetWerewolfKills != 0 ) set werehungerScript.imawere to 0 set werehungerScript.reset to 0 set werehungerScript.nexthour to 0 set werehungerScript.curhour to 0 set werehungerScript.realtime to 0 set werehungerScript.curhealth to 0 set werehungerScript.newhealth to 0 StopScript werehungerScript MessageBox "The flesh and blood of your prey has strengthened you for another night." StopScript werehungerScript ;REMOVE THE BLOODLUST ONCE AN NPC IS KILLED set makewolf to 0 Player->AddSpell "werewolf regeneration" Player->AddSpell "werewolf resists" endif endif if ( makewolf == 1 ) if ( sleeping == 1 ) set timer to 5 endif if ( timer < 5 ) ;MessageBox "INCREMENTING TIMER" set timer to ( timer + GetSecondsPassed ) return endif if ( fadecontrol == 0 ) ;FADE THE PLAYER BACK IN, MAKE WOLF if ( firstdream == 0 ) PlayBink "bm_werewolf1.bik" 1 ;PLAY FIRST WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY FIRST CHANGE DREAM BINK" Player->RemoveSpell "werewolf blood" set firstdream to 1 elseif ( firstdream == 1 ) if ( GetJournalIndex BM_SkaalAttack >= 30 ) if ( dreamcount == 0 ) if ( GetJournalIndex BM_BearHunt1 >= 100 ) if ( GetJournalIndex BM_FrostGiant1 == 0 ) ;MessageBox "SHOULD PLAY THIRD QUEST DREAM" bm_ex_karstaag_dooropen->Enable bm_ex_karstaag_doorclosed->Disable PlayBink "bm_frostgiant1.bik" 1 Journal BM_FrostGiant2 10 set dreamcount to 3 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK3" endif elseif ( GetJournalIndex BM_Ceremony1 >= 100 ) if ( GetJournalIndex BM_BearHunt1 == 0 ) ;MessageBox "SHOULD PLAY SECOND QUEST DREAM" PlayBink "bm_bearhunt1.bik" 1 Journal BM_BearHunt2 10 set dreamcount to 2 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK2" endif elseif ( GetJournalIndex BM_Ceremony2 < 10 ) if ( GetJournalIndex BM_Ceremony1 == 0 ) ;MessageBox "SHOULD PLAY FIRST QUEST DREAM" PlayBink "bm_ceremony1.bik" 1 Journal BM_Ceremony2 10 set dreamcount to 1 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK1" endif endif elseif ( dreamcount == 1 ) if ( GetJournalIndex BM_Ceremony2 >= 100 ) ;MessageBox "SHOULD PLAY SECOND QUEST DREAM" PlayBink "bm_bearhunt1.bik" 1 Journal BM_BearHunt2 10 set dreamcount to 2 elseif ( GetJournalIndex BM_Ceremony2 == 50 ) ;MessageBox "SHOULD PLAY FIRST DREAM RESOLUTION" set werewolfclawmult to 35 PlayBink "bm_ceremony2.bik" 1 Journal BM_Ceremony2 100 else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK4" endif elseif ( dreamcount == 2 ) ;MessageBox "CHECKED BEARHUNT JOURNAL" if ( GetJournalIndex BM_BearHunt2 >= 100 ) ;MessageBox "SHOULD PLAY THIRD QUEST DREAM" bm_ex_karstaag_dooropen->Enable bm_ex_karstaag_doorclosed->Disable PlayBink "bm_frostgiant1.bik" 1 Journal BM_FrostGiant2 10 set dreamcount to 3 elseif ( GetJournalIndex BM_BearHunt2 == 50 ) ;MessageBox "SHOULD PLAY SECOND DREAM RESOLUTION" PlayBink "bm_bearhunt2.bik" 1 Journal BM_BearHunt2 100 Player->AddSpell bm_SummonBonewolf else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK5" endif elseif ( dreamcount == 3 ) if ( GetJournalIndex BM_FrostGiant2 == 100 ) ;MessageBox "SHOULD PLAY PRE-ENDGAME DREAM" PlayBink "bm_wereend.bik" 1 Journal BM_WildHunt 25 Player->PositionCell -11.328 -134.609 -107.016 180 "Solstheim, Mortrag Glacier: Entry" StartScript wildhuntStartScript set dreamcount to 4 return elseif ( GetJournalIndex BM_FrostGiant2 == 70 ) ;MessageBox "SHOULD PLAY THIRD DREAM RESOLUTION" PlayBink "bm_frostgiant2.bik" 1 Journal BM_FrostGiant2 100 Player->AddSpell bm_hunterwind else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM ;MessageBox "SHOULD NOW PLAY SHORTER CHANGE DREAM BINK6" endif elseif ( dreamcount == 4 ) PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM endif else PlayBink "bm_werewolf2.bik" 1 ;PLAY SHORTER WEREWOLF CHANGE DREAM endif endif if ( Player->IsWerewolf == 0 ) Player->BecomeWereWolf StartScript werehungerScript set werehungerScript.imawere to 1 Player->AddSpell "werewolf vision" Player->SetWereWolfAcrobatics endif if ( sleeping == 0 ) FadeIn 5 else WakeUpPC endif set fadecontrol to 1 set timer to 0 return elseif ( fadecontrol == 1 ) ; GIVE CONTROLS AFTER FADE IN, ADD BLOODLUST set makewolf to 2 set sleeping to 0 if ( GetJournalIndex BM_WildHunt != 25 ) ;SO PLAYER DOESN'T GET CONTROL AT ENDGAME EnablePlayerControls endif set fadecontrol to 0 return endif ;MessageBox "MAKEWOLF IS ONE NOW AND IT JUST RAN THROUGH THAT PART" endif set isday to 0 if ( GameHour < 21 ) ;CHECK THAT IT'S NIGHT if ( GameHour > 6 ) set isday to 1 endif endif if ( isday == 1 ) if ( fadecontrol == 2 ) set timer2 to ( timer2 + GetSecondsPassed ) if ( timer2 > 5 ) EnablePlayerControls set fadecontrol to 0 set timer2 to 0 endif endif endif if ( isday == 1 ) if ( Player->IsWerewolf == 1 ) ;CHANGE PLAYER BACK WHEN IT'S DAYTIME DisablePlayerControls if ( MenuMode == 1 ) if ( isfading == 0 ) set sleeping to 1 endif endif if ( sleeping == 0 ) if ( fadecontrol == 0 ) FadeOut 5 set isfading to 1 set fadecontrol to 1 endif if ( timer2 < 5 ) set timer2 to ( timer2 + GetSecondsPassed ) else if ( fadecontrol == 1 ) Player->RemoveSpell "werewolf vision" Player->RemoveSpell "werewolf regeneration" Player->RemoveSpell "werewolf resists" Player->UndoWerewolf set werehungerScript.imawere to 0 set werehungerScript.reset to 0 set werehungerScript.nexthour to 0 set werehungerScript.curhour to 0 set werehungerScript.realtime to 0 set werehungerScript.curhealth to 0 set werehungerScript.newhealth to 0 StopScript werehungerScript set makewolf to 0 set fadecontrol to 2 set timer2 to 0 FadeIn 5 set isfading to 0 endif endif elseif ( sleeping == 1 ) Player->RemoveSpell "werewolf vision" Player->RemoveSpell "werewolf regeneration" Player->RemoveSpell "werewolf resists" Player->UndoWerewolf set werehungerScript.imawere to 0 set werehungerScript.reset to 0 set werehungerScript.nexthour to 0 set werehungerScript.curhour to 0 set werehungerScript.realtime to 0 set werehungerScript.curhealth to 0 set werehungerScript.newhealth to 0 StopScript werehungerScript set makewolf to 0 set timer to 0 set timer2 to 0 WakeUpPC set fadecontrol to 2 return endif endif return endif if ( Player->IsWerewolf == 0 ) ;CHECK THAT PLAYER ISN'T ALREADY WERE-FORM set makewolf to 1 ;MessageBox "MAKEWOLF IS 1. PLAYER SHOULD LOSE CONTROL AND FADE" DisablePlayerControls ;TAKE PLAYER CONTROL, FADE OUT if ( MenuMode == 1 ) set sleeping to 1 else set sleeping to 0 set timer to 0 FadeOut 5 endif return elseif ( Player->IsWereWolf == 1 ) return endif End WereChangeScript
312WereCheckScriptBegin WereCheckScript ;THIS SCRIPT WILL CHECK TO SEE IF THE PLAYER HAS HAD LYCANTHROPY DISEASE FOR 3 DAYS ;AFTER 3 DAYS, PLAYER WILL BE GIVEN HIRCINE BINK DREAM AND WILL BE GIVEN FULL BLOWN WEREWOLF-ISM ;SCRIPT WILL CHECK FOR DISEASE, CHECK TIME HAD, SET SOME VARIABLES, AND DO OTHER FUN THINGS SCRIPTS LIKE THIS SHOULD DO ;THOSE RESPONSIBLE FOR WRITING THIS SCRIPT HAVE BEEN SACKED short currentDay short dayCount short hasDisease short state ;PCWerewolf, 0 = Normal, 1 = Werewolf, -1 = Cured if ( PCVampire == 1 ) ;MAKE SURE PC CAN'T BE VAMP AND WERE return endif if ( state == -1 ) return endif if ( state == 10 ) ;MessageBox "You've just waited too long to get rid of Lycanthropy!" set state to -1 StartScript WereChangeScript set PCWereWolf to 1 endif if ( PCWerewolf != 0 ) stopscript WereCheckScript ;stop this script if they become a werewolf return endif if ( player->GetSpell "werewolf blood" == 1 ) ;MessageBox "HAS WEREWOLF DISEASE!!!" if ( hasDisease == 0 ) set hasDisease to 1 ;MessageBox "HASDISEASE SHOULD BE SET TO 1" set currentDay to Day endif else if ( hasDisease == 1 ) ;they had it at one point, but don't anymore set hasDisease to 0 set currentDay to 0 set dayCount to 0 endif endif if ( hasDisease == 1 ) ;has disease will get set back to 0 before here if they cured it if ( currentDay != day ) ;the day has changed, so up the count set dayCount to dayCount + 1 set currentDay to Day endif if ( dayCount >= 3 ) ;goes over 3 days set state to 10 endif endif End WereCheckScript
313wereDreamScript1Begin wereDreamScript1 short doOnce if ( PCWerewolf != 1 ) return endif if ( GetPCSleep == 1 ) if ( GetJournalIndex BM_Ceremony2 < 10 ) if ( GetJournalIndex BM_Ceremony1 == 0 ) if ( doOnce == 0 ) ;PlayBink WEREDREAM1 PlayBink "mw_end.bik" 1 Journal BM_Ceremony2 10 set doOnce to 1 endif endif endif endif End wereDreamScript1
314wereDreamScript2Begin wereDreamScript2 short doOnce if ( PCWerewolf != 1 ) return endif if ( GetPCSleep == 1 ) if ( GetJournalIndex BM_Ceremony2 >= 100 ) if ( doOnce == 0 ) ;PlayBink WEREDREAM1 PlayBink "mw_end.bik" 1 Journal BM_BearHunt2 10 set doOnce to 1 endif elseif ( GetJournalIndex BM_Ceremony1 >= 100 ) if ( BM_BearHunt1 == 0 ) if ( doOnce == 0 ) ;PlayBink WEREDREAM1 PlayBink "mw_end.bik" 1 Journal BM_BearHunt2 10 set doOnce to 1 endif endif endif endif End wereDreamScript2
315wereDreamScript3Begin wereDreamScript3 short doOnce if ( PCWerewolf != 1 ) return endif if ( GetPCSleep == 1 ) if ( GetJournalIndex BM_BearHunt2 >= 100 ) if ( doOnce == 0 ) ;PlayBink WEREDREAM1 PlayBink "mw_end.bik" 1 Journal BM_FrostGiant2 10 set doOnce to 1 endif elseif ( GetJournalIndex BM_BearHunt1 >= 100 ) if ( BM_FrostGiant1 == 0 ) if ( doOnce == 0 ) ;PlayBink WEREDREAM1 PlayBink "mw_end.bik" 1 Journal BM_FrostGiant2 10 set doOnce to 1 endif endif endif endif End wereDreamScript3
316wereeffectScriptBegin wereeffectScript short doonce float timepassed If (MenuMode==1) Return Endif Set timepassed to (timepassed + GetSecondsPassed) If ( timepassed < 2 ) return elseif ( timepassed > 4 ) setdelete 1 elseif ( timepassed >= 2 ) disable endif End wereeffectScript
317werehungerScriptBegin werehungerScript float curhealth float nexthour float curhour float newhealth float reset float realtime short imawere if ( imawere == 0 ) return endif if ( Player->IsWerewolf == 0 ) ;set reset to 0 ;set curhealth to 0 ;set nexthour to 0 ;set newhealth to 0 ;set curhour to 0 ;set realtime to 0 ;return ;StopScript werehungerScript endif if ( Gamehour < 10 ) set realtime to ( GameHour + 24 ) else set realtime to GameHour endif if ( curhour == realtime ) return endif if ( nexthour > realtime ) return endif if ( reset == 0 ) set reset to ( realtime + 1 ) MessageBox "The beast within you hungers for flesh. You must feed soon." endif if ( reset > realtime ) return endif set curhour to realtime set nexthour to ( curhour + 1 ) set curhealth to ( Player->GetHealth ) set newhealth to ( curhealth * -0.23 ) Player->ModCurrentHealth newhealth MessageBox "Your lust for blood saps your strength. You must feed soon." End werehungerScript
318weremazeScriptBegin weremazeScript short doOnce BecomeWerewolf if ( doOnce == 0 ) Becomewerewolf set doOnce to 1 endif End weremazeScript
319wereskaalScriptBegin wereskaalScript short doOnce if ( GetDisabled == 0 ) if ( GetJournalIndex BM_SkaalAttack < 20 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_SkaalAttack >= 20 ) Enable endif endif if ( doOnce == 0 ) if ( SkaalAttack == 3 ) Becomewerewolf StartCombat Player set doOnce to 1 endif endif if ( OnDeath == 1 ) if ( GetDeadCount BM_werewolf_skaal2A >= 2 ) if ( GetJournalIndex BM_SkaalAttack < 30 ) Journal BM_SkaalAttack 30 "korst wind-eye"->Position -159017 212262 2949 0 Player->AddSpell "werewolf blood" set SkaalAttack to 4 endif endif endif End wereskaalScript
320werestatue1ScriptBegin werestatue1Script short doOnce float xpos float ypos float zpos float zrotpos if ( Player->GetItemCount key_hircine1 == 0 ) if ( Player->IsWerewolf == 0 ) return endif endif set xpos to ( GetPos X ) set ypos to ( GetPos Y ) set zpos to ( GetPos Z ) set zrotpos to ( GetAngle Z ) if ( GetDistance Player <= 256 ) if ( doOnce == 0 ) PlaceItem bm_wereeffect xpos ypos zpos 0 Disable PlaceItem BM_werewolf_maze1 xpos ypos zpos zrotpos set doOnce to 1 endif endif End werestatue1Script
321werestatue2ScriptBegin werestatue2Script short doOnce float xpos float ypos float zpos float zrotpos if ( Player->GetItemCount key_hircine2 == 0 ) if ( Player->IsWerewolf == 0 ) return endif endif set xpos to ( GetPos X ) set ypos to ( GetPos Y ) set zpos to ( GetPos Z ) set zrotpos to ( GetAngle Z ) if ( GetDistance Player <= 256 ) if ( doOnce == 0 ) PlaceItem bm_wereeffect xpos ypos zpos 0 Disable PlaceItem BM_werewolf_maze1 xpos ypos zpos zrotpos set doOnce to 1 endif endif End werestatue2Script
322weretracker2ScriptBegin weretracker2Script short doOnce short fightOnce short nolore if ( OnDeath == 1 ) set trackersdead to ( trackersdead + 1 ) set trackercount to ( trackercount - 1 ) endif if ( trackersdead >= 10 ) if ( trackercount == 0 ) if ( GetJournalIndex BM_BearHunt2 < 30 ) MessageBox "The Skaal trackers have abandoned their quest for the Spirit Bear." Journal BM_BearHunt2 30 endif endif endif if ( doOnce == 0 ) AiTravel -172097.438 192226.375 587.508 set doOnce to 1 endif if ( GetDistance Player <= 1024 ) if ( fightOnce == 0 ) StartCombat Player set fightOnce to 1 set doOnce to -1 endif endif End weretracker2Script
323weretrackerScriptBegin weretrackerScript float timer float DistanceA float DistanceB float DistanceC short popA short popB short popC short doOnce if ( GetJournalIndex BM_BearHunt2 < 10 ) return endif if ( doOnce == 0 ) set trackercount to 3 set doOnce to 1 endif if ( Player->IsWerewolf != 1 ) ;MessageBox "RETURNING FOR NOT A WEREWOLF" return endif ;THIS STOPS THE SCRIPT IF PLAYER HAS KILLED ENOUGH TRACKERS if ( trackersdead >= 10 ) return endif ;THIS SETS VARIABLES TO DISTANCES FROM PLAYER TO POP SPOTS set DistanceA to ( Player->GetDistance "active_BM_skaaltrack1" ) set DistanceB to ( Player->GetDistance "active_BM_skaaltrack2" ) set DistanceC to ( Player->GetDistance "active_BM_skaaltrack3" ) set popA to 0 set popB to 0 set popC to 0 ;THIS CHECKS WHICH POP SPOT IS FARTHEST FROM PLAYER if ( DistanceA > DistanceB ) if ( DistanceA > DistanceC ) set popA to 1 elseif ( DistanceC > DistanceA ) set popC to 1 endif elseif ( DistanceB > DistanceA ) if ( DistanceB > DistanceC ) set popB to 1 elseif ( DistanceC > DistanceB ) set popC to 1 endif endif ;THIS MAKES SURE THAT TOO MANY TRACKERS AREN'T PRESENT AT ONCE if ( trackercount >= 3 ) return endif ;THIS MAKES TRACKERS APPEAR EVERY 25 SECONDS UNTIL MAX IS REACHED set timer to ( timer + GetSecondsPassed ) if ( timer <= 25 ) return endif ;THIS POPS IN A TRACKER AT APPROPRIATE SPOT, INCREMENTS TRACKERCOUNT, AND RESETS TIMER if ( popA == 1 ) "active_BM_skaaltrack1"->PlaceAtMe skaal_tracker 1 1 1 ;MessageBox "PUT A TRACKER AT POINT A" set trackercount to ( trackercount + 1 ) set timer to 0 elseif ( popB == 1 ) "active_BM_skaaltrack2"->PlaceAtMe skaal_tracker2 1 1 1 ;MessageBox "PUT A TRACKER AT POINT B" set trackercount to ( trackercount + 1 ) set timer to 0 elseif ( popC == 1 ) "active_BM_skaaltrack3"->PlaceAtMe skaal_tracker3 1 1 1 ;MessageBox "PUT A TRACKER AT POINT C" set trackercount to ( trackercount + 1 ) set timer to 0 endif End weretrackerScript
324weretrackerStatScriptBegin weretrackerStatScript short doOnce short fightOnce short nolore if ( GetDisabled == 0 ) if ( GetJournalIndex BM_BearHunt2 < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_BearHunt2 >= 10 ) Enable endif endif if ( OnDeath == 1 ) set trackersdead to ( trackersdead + 1 ) set trackercount to ( trackercount - 1 ) endif if ( trackersdead >= 10 ) if ( trackercount == 0 ) if ( GetJournalIndex BM_BearHunt2 < 30 ) MessageBox "The Skaal trackers have abandoned their quest for the Spirit Bear." Journal BM_BearHunt2 30 endif endif endif if ( doOnce == 0 ) AiTravel -172097.438 192226.375 587.508 set doOnce to 1 endif if ( GetDistance Player <= 1024 ) if ( fightOnce == 0 ) StartCombat Player set fightOnce to 1 set doOnce to -1 endif endif End weretrackerStatScript
325WerewolfwildernessBegin Werewolfwilderness ;This script is for the werewolves in wilderness placed randomly, very hard to find ;they change to werewolf during night, are lunatic NPC's during day short nolore short doonce short npcwerewolf short isnight short isdead float time float xpos float ypos float zpos if ( Menumode == 1 ) return endif if (isdead==1) return endif if (ondeath==1) set isdead to 1 endif set isnight to 1 ;nighttime by default if ( GameHour < 21 ) ; daytime if ( GameHour > 6 ) set isnight to 0 endif endif if (isnight == 0) ;daytime if ( npcwerewolf == 1 ) ;NPC is a werewolf if (doonce==1) ;place the effect set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "wildwerewolf" xpos ypos zpos 0 ;change to human set time to ( time + GetSecondsPassed ) If ( time >= 1 ) Undowerewolf set doonce to 0 set npcwerewolf to 0 endif endif endif endif elseif (isnight == 1) ;nighttime If (doonce==0) ;place the effect set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "wildwerewolf" xpos ypos zpos 0 ;change to werewolf set time to ( time + GetSecondsPassed ) If ( time >= 1 ) Becomewerewolf addspell "werewolf blood" set doonce to 1 set npcwerewolf to 1 set time to 0 endif endif endif endif End Werewolfwilderness
326werewolf_connorbegin werewolf_connor ;werewolves during night time; nothing during day; for connor tomb short nolore short doonce short npcwerewolf short isnight short isdead short attack float time float xpos float ypos float zpos if ( Menumode ==1 ) return endif if (isdead==1) return endif if (ondeath==1) set isdead to 1 endif set isnight to 1 ;nighttime by default if ( GameHour < 21 ) ; daytime if ( GameHour > 6 ) set isnight to 0 endif endif if (isnight == 0) ;daytime if ( npcwerewolf == 1 ) ;NPC is a werewolf if (doonce==1) ;place the effect set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "wildwerewolf" xpos ypos zpos 0 ;change to human set time to ( time + GetSecondsPassed ) If ( time >= 1 ) Undowerewolf set doonce to 0 set npcwerewolf to 0 endif endif endif endif elseif (isnight == 1) ;nighttime If (doonce==0) ;place the effect set xpos to ( GetPos, X ) set ypos to ( GetPos, Y ) set zpos to ( GetPos, Z ) Placeitem "wildwerewolf" xpos ypos zpos 0 ;change to werewolf set time to ( time + GetSecondsPassed ) If ( time >= 1 ) Becomewerewolf addspell "werewolf blood" set doonce to 1 set npcwerewolf to 1 set time to 0 endif endif endif endif end werewolf_connorscr
327wildhuntStartScriptBegin wildhuntStartScript short doOnce short waking float timer if ( GetJournalIndex BM_WildHunt < 15 ) return endif if ( GetJournalIndex BM_WildHunt == 25 ) if ( waking < 5 ) ;DisablePlayerControls set waking to 5 endif endif if ( GetPCSleep == 1 ) if ( waking == 0 ) PlaceAtPc bm_werewolf_wildhunt 1 128 0 PlaceAtPc bm_werewolf_wildhunt2 1 128 1 PlaceAtPc bm_werewolf_wildhunt3 1 128 2 PlaceAtPc bm_werewolf_wildhunt4 1 128 3 set waking to 1 return endif endif if ( waking == 1 ) DisablePlayerControls WakeUpPC set waking to 2 return endif if ( waking == 2 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 3 ) FadeOut 5 set waking to 3 set timer to 0 endif endif if ( waking == 3 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 5 ) set waking to 4 endif endif if ( waking == 4 ) Player->PositionCell -11.328 -134.609 -107.016 180 "Solstheim, Mortrag Glacier: Entry" set waking to 5 set timer to 0 return endif if ( waking == 5 ) FadeIn 5 set waking to 6 endif if ( waking == 6 ) set timer to ( timer + GetSecondsPassed ) if ( timer > 5 ) set waking to 7 endif endif if ( waking == 7 ) if ( Player->IsWerewolf == 0 ) Journal BM_Wildhunt 20 endif ;MessageBox "HIRCINE WOULD TALK NOW" set bm_hircine.speech to 1 set waking to 8 endif if ( waking == 8 ) if ( GetJournalIndex BM_WildHunt == 85 ) ;BM_hircine->PositionCell 251.677 5708.083 -965.404 1 "Solstheim, Mortrag Glacier: Huntsman's Hall" set waking to 9 StopScript wildhuntStartScript endif endif End wildhuntStartScript
328wildwereScriptBegin wildwereScript short doOnce BecomeWereWolf if ( doOnce == 0 ) Becomewerewolf set doOnce to 1 endif if ( GetDisabled == 0 ) if ( GetJournalIndex BM_WildHunt > 30 ) Disable endif endif End wildwereScript
329windbagScriptBegin windbagScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Wind >= 10 ) Enable endif endif if ( GetJournalIndex BM_Wind < 10 ) return endif if ( OnActivate == 1 ) if ( GetJournalIndex BM_Wind < 50 ) PlaySound "WindBag" Journal BM_Wind 50 Activate endif endif End windbagScript
330windlightScriptBegin windlightScript if ( GetDisabled == 1 ) return endif if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind == 50 ) Disable endif endif End windlightScript
331WitchNoteScriptBegin WitchNoteScript short done short OnPCEquip short PCSkipEquip if ( done == 1 ) set PCSkipEquip to 0 return endif set PCSkipEquip to 1 if ( GetJournalIndex BM_Lycanthropycure >= 0 ) if ( onactivate == 1 ) Journal "BM_Lycanthropycure" 10 set done to 1 activate endif endif endif ;if ( GetJournalIndex BM_BrodirGrove < 20 ) ;if ( OnPCEquip == 1 ) ;set done to 1 ;activate ;endif ;endif if ( GetJournalIndex BM_Lycanthropycure >= 0 ) if ( OnPCEquip == 1 ) Journal "BM_Lycanthropycure" 10 set done to 1 activate endif endif endif End WitchNoteScript
332WolfDoorScriptBegin WolfDoorScript Short controlvar Short button Float timer If ( MenuMode == 1 ) Return Endif If ( OnActivate == 1 ) If ( controlvar == 0) MessageBox "Some they call me Hrothmund´┐Żs Bane, with midnight teeth and moonlight mane. I am the wolf one soul may tame, by uttering my given name. But speak the truth, for those who lie, gain not the wealth beyond my eye! Answer false and evermore, closed shut will be my icy door. What is my name?", "Dyrisblod", "Rasendande", "Ondjage", "Hvitdomme", "Say nothing, and walk away." Say "vo\misc\wolfdoor.mp3","A booming voice calls out." Set controlvar to 1 elseif controlvar > 1 activate endif endif if ( GetJournalIndex BM_Airship_a >= 20 ) Return Endif if (controlvar == 1) set button to GetButtonPressed if ( button == -1 ) return elseif ( button == 2) MessageBox "You spoke the truth and won the game, for Ondjage is my given name. You have gained entrance to Hrothmund's Barrow." Say "vo\misc\wolfdoortrue.mp3","You answered correctly." set controlvar to 2 Journal BM_Airship_a 20 elseIf ( button == 4) MessageBox "You did not speak and walked away, quite wise not knowing what to say. You may try and name me again." Say "vo\misc\wolfdoornone.mp3","You did not answer." set controlvar to 0 else MessageBox "I asked the truth but yet you lied, so now your entrance is denied. Hrothmund's Barrow is forever sealed." Say "vo\misc\wolfdoorfalse.mp3","You answered incorrectly." set controlvar to -1 Journal BM_Airship_a 10 Endif Endif End WolfDoorScript
333WolfenderInnocentBegin WolfenderInnocent short OnPCHitme short doonce if (doonce==1) return endif modFatigue -250 if ( GetJournalIndex "BM_Wolfgiver" >= 80 ) Enable endif if ( GetJournalIndex "BM_Wolfgiver" < 80 ) Disable endif if ( OnPCHitMe == 1 ) modFatigue 0 modHealth 0 endif if ( OnDeath == 1 ) additem "ingred_innocent_heart" 1 endif if ( GetItemCount "ingred_wolf_heart" >= 1 ) If (doonce==0) Journal BM_WolfGiver 105 Set doonce to 1 endif endif End WolfenderInnocent
334WolfGiverBegin WolfGiver if ( GetJournalIndex "BM_WolfGiver" >= 80 ) if ( CellChanged == 1 ) "glenmoril_witch_cave"->Disable endif endif End WolfGiver
335WolfInnocentBegin WolfInnocent if ( GetJournalIndex "BM_Wolfgiver" >= 110 ) Enable endif if ( GetJournalIndex "BM_Wolfgiver" < 110 ) Disable endif if ( OnDeath == 1 ) ;set PCWerewolf to -1 Journal BM_WolfGiver 120 endif End WolfInnocent
336WolfRitualRingBegin WolfRitualRing float ringtimer short castonce if ( castonce == 0 ) ExplodeSpell "werewolf_ritual_ring" Disable set castonce to 1 endif if ( ringtimer > 3 ) SetDelete 1 else set ringtimer to ( ringtimer + GetSecondsPassed ) endif End WolfRitualRing

Incendar.com, Incendar, Incendar Gaming, Incendar Coding, Incendium, Incendius, Incendara, Incendario, Mincendar © Incendar 2004-2019 RSS Feed
Fallout 76 TESV Skyrim Fallout 4 Fallout New Vegas © 2019 Bethesda
Sitemap