The Elder Scrolls III: Morrowind Bloodmoon Game of the Year Edition Searchable Database



250 Results For SCPT:SCTX 250 Max
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin BedDisable if (MenuMode == 0) if (OnActivate == 1 ) ShowRestMenu endif endif if ( GetDisabled == 0 ) if ( GetJournalIndex "BM_Retribution" >= 100 ) Disable endif endif End BedDisable
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin BrandrScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_WomanScorned >= 30 ) Journal BM_WomanScorned 45 endif endif End
begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin ColonyBaroShip if ( "Baro Egnatius"->GetDisabled == 1 ) if ( GetDisabled == 0 ) Disable endif elseif ( "Baro Egnatius"->GetDisabled == 0 ) if ( GetDisabled == 1 ) Enable endif endif End
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin ColonyDock if ( ColonyService < 5 ) if ( GetDisabled == 0 ) Disable endif elseif ( ColonyService >= 5 ) if ( GetDisabled == 1 ) Enable endif endif End
Begin 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
Begin 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
Begin 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
Begin 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
Begin ColonyFactor1_D if ( GetDisabled == 0 ) if ( ColonyState == 31 ) Disable elseif ( ColonyState == 34 ) Disable endif endif End
Begin 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
Begin 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
Begin ColonyFactor2_D if ( GetDisabled == 0 ) if ( ColonyState == 32 ) Disable elseif ( ColonyState == 35 ) Disable endif endif End
Begin 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
Begin 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
Begin ColonyFactor3_D if ( GetDisabled == 0 ) if ( ColonyState >= 33 ) Disable elseif ( ColonyState == 36 ) Disable endif endif End
Begin ColonyFactor3_Final if ( GetDisabled == 0 ) if ( ColonyState < 36 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState == 36 ) Enable endif endif End
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin ColonyRoot1 short doonce if ( GetJournalIndex "CO_10" == 120 ) if ( GetDisabled == 0 ) Disable endif endif End
Begin 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
Begin ColonyRoot2 if ( GetJournalIndex "CO_10" < 120 ) if ( GetDisabled == 0 ) Disable endif elseif ( GetJournalIndex "CO_10" == 120 ) if ( GetDisabled == 1 ) Enable endif endif End
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin ColonyServSmithDisable if ( GetDisabled == 0 ) if ( ColonyService == 3 ) Disable endif endif if ( GetDisabled == 0 ) if ( ColonyService == 5 ) Disable endif endif End
Begin 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
Begin ColonyServTrader if ( ColonyService < 6 ) if ( GetDisabled == 0 ) Disable endif endif if ( ColonyService == 6 ) if ( GetDisabled == 1 ) Enable StopScript ColonyServTrader endif endif End ColonyServTrader
Begin 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
Begin ColonyServTraderDisable if ( GetDisabled == 0 ) if ( ColonyService == 4 ) Disable endif endif if ( GetDisabled == 0 ) if ( ColonyService == 6 ) Disable endif endif End
Begin 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
Begin ColonyShipwreckDoor if ( GetDisabled == 0 ) if ( GetJournalIndex "CO_3" < 30 ) Disable endif endif if ( GetDisabled == 1 ) if ( GetJournalIndex "CO_3" >= 30 ) Enable endif endif End
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
begin 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
Begin 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
Begin 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
Begin 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
Begin Colony_D_1_F if ( GetDisabled == 0 ) if ( ColonyState >= 3 ) Disable endif endif End
Begin Colony_D_1_I if ( GetDisabled == 0 ) if ( ColonyState >= 1 ) Disable endif endif End
Begin Colony_D_1_m if ( GetDisabled == 0 ) if ( ColonyState >= 2 ) Disable StopScript Colony_D_1_m endif endif End
Begin 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
Begin Colony_D_2_F if ( GetDisabled == 0 ) if ( ColonyState >= 10 ) Disable endif endif End
Begin Colony_D_3_F if ( GetDisabled == 0 ) if ( ColonyState >= 20 ) Disable endif endif End
Begin 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
Begin 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
Begin 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
Begin 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
Begin Colony_E_2_F if ( GetDisabled == 0 ) if ( ColonyState < 10 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 10 ) Enable endif endif End
Begin 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
Begin Colony_E_3_F if ( GetDisabled == 0 ) if ( ColonyState < 20 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 20 ) Enable endif endif End
Begin 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
Begin Colony_E_4_F if ( GetDisabled == 0 ) if ( ColonyState < 30 ) Disable endif endif if ( GetDisabled == 1 ) if ( ColonyState >= 30 ) Enable endif endif End
Begin 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
Begin 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
begin 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
begin 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
begin 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
Begin 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
Begin 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
Begin 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
begin enable_teleport EnableTeleporting end
begin 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
Begin 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
Begin 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
begin ErnaScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_WomanScorned >= 30 ) Journal BM_WomanScorned 50 endif endif end
Begin faustusScript short withlusius short nolore short gavebooze if ( withlusius == 1 ) return endif if ( luciuschosen == 1 ) set withlusius to 1 endif End faustusScript
Begin 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
Begin 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
Begin fjalddoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Draugr >= 20 ) Disable endif endif End fjalddoorScript
begin 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
Begin 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
Begin fortDisableScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Smugglers >= 93 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Smugglers < 93 ) Enable endif endif End fortDisableScript
Begin fortEnableScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Smugglers < 93 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Smugglers >= 93 ) Enable endif endif End fortEnableScript
Begin 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
Begin 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
Begin 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
Begin fortloreboozeScript short nolore short gavebooze End fortloreboozeScript
Begin 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
Begin 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
Begin 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
Begin glendoor2Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Wind >= 10 ) Enable endif endif End glendoor2Script
Begin glendoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Wind >= 10 ) Disable endif endif End glendoorScript
Begin GlenmorilCaveTeleport if ( MenuMode == 1 ) return endif playsound "conjuration hit" Player->PositionCell 129 1291 -173 165 "Solstheim, Gloomy Cave" Stopscript GlenmorilCaveTeleport End GlenmorilCaveTeleport
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin GrandfatherFrostScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_MoonSugar >= 30 ) if ( GetJournalIndex BM_MoonSugar < 100 ) Journal BM_MoonSugar 80 endif endif endif End
Begin GrissSkull if ( GetJournalIndex "BM_Trial" >= 100 ) Disable endif End GrissSkull
Begin 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
Begin 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
Begin 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
Begin 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
Begin hircinechestScript if ( OnActivate == 1 ) if ( "tharsten heart-fang2".fangtalk == 0 ) set "tharsten heart-fang2".fangtalk to 1 Activate endif endif End hircinechestScript
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin hunteract1Script float playerdistance set playerdistance to ( GetDistance Player ) End hunteract1 Script
Begin 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
Begin icewallcrackScript short doOnce if ( doOnce == 0 ) if ( GetJournalIndex BM_Sun == 40 ) PlaySound "BM Sun" set doOnce to 1 endif endif End icewallcrackScript
Begin 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
Begin 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
begin 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
Begin 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
Begin 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
Begin 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
Begin JeleenNote if ( GetJournalIndex "BM_Missionary" < 130 ) Disable endif End JeleenNote
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin karstcavdoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_FrostGiant1 >= 30 ) Disable elseif ( GetJournalIndex BM_WildHunt >= 100 ) Disable endif endif End karstcavdoorScript
Begin korstScript short nolore short hasdisease if ( Player->GetSpell "werewolf blood" == 1 ) set hasdisease to 1 else set hasdisease to 0 endif End korstScript
Begin 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
Begin 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
Begin 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
Begin LassnrScript Short NoLore if ( OnDeath == 1 ) if ( GetJournalIndex BM_Tymvaul >= 30 ) Journal BM_Tymvaul 110 endif endif End LassnrScript
begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
begin meadhallhead if ( GetJournalIndex "BM_MeadHall_c" < 20 ) Disable endif if ( GetJournalIndex "BM_MeadHall_c" >= 20 ) Enable StopScript MeadScript endif end meadhallhead
Begin MeadScript if ( GetJournalIndex "BM_MeadHall_b" < 20 ) Disable endif if ( GetJournalIndex "BM_MeadHall_b" >= 20 ) Enable StopScript MeadScript endif End Mead Script
Begin 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
Begin 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
Begin 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
Begin musicdoor2Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Earth < 10 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Earth >= 10 ) Enable endif endif End musicdoor2Script
Begin musicdoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Earth >= 10 ) Disable endif endif End musicdoorScript
Begin 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
Begin nunciuskeyScript short nolore if ( OnDeath == 1 ) if ( GetJournalIndex BM_Morale < 95 ) "antonius nuncius"->AddItem key_nuncius 1 endif endif End nunciuskeyScript
Begin 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
Begin 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
Begin 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
begin 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
Begin pentorch1Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Sun < 40 ) Disable endif elseif ( GetDisabled == 1 ) if ( GetJournalIndex BM_Sun >= 40 ) Enable endif endif End pentorch1Script
Begin pentorch2Script if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Sun >= 40 ) Disable endif endif End pentorch2Script
Begin 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
Begin penumbradoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Sun >= 10 ) Disable endif endif End penumbradoorScript
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
begin 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
Begin 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
Begin 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
Begin 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
Begin ringdoorScript if ( OnActivate == 1 ) MessageBox "This door has been magically sealed." endif End ringdoorScript
Begin 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
Begin RitualDaggerScript if ( GetJournalIndex "BM_Wolfgiver" < 80 ) Disable endif if ( GetJournalIndex "BM_Wolfgiver" >= 80 ) Enable endif End RitualDaggerScript
Begin 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
Begin 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
Begin 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
Begin SacrificeNordFemale "wolfgiver_f_nord"->modFatigue -250 if ( GetJournalIndex "BM_Wolfgiver" >= 80 ) Enable endif if ( GetJournalIndex "BM_Wolfgiver" < 80 ) Disable endif End SacrificeNordFemale
begin 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
begin 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
begin 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
Begin skaalaradoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Ceremony1 >= 10 ) Disable elseif ( GetJournalIndex BM_Ceremony2 >= 10 ) Disable endif endif End skaalaradoorScript
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
Begin 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
begin 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
Begin 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
Begin 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
begin Sound_BM_IceSheet if ( CellChanged == 0 ) if ( GetSoundPlaying "BM_Ice_Sheet" == 0 ) PlayLoopSound3DVP "BM_Ice_Sheet", 1.0, 1.0 endif endif end
Begin 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
Begin 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
begin 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
begin 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
Begin 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
Begin stahldoorScript if ( GetDisabled == 0 ) if ( GetJournalIndex BM_Water >= 10 ) Disable endif endif End stahldoorScript
Begin 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




Yet a treacherous weapon is ever a danger to the hand.

Incendar.com, Incendar, Incendar Gaming, Incendium, Incendius, Incendara, Incendario, MINcendar
© Incendar 2004-2020

Sitemap  Media  Contact Discord