Select game:
Search:
Select a record type:
|
SESylScript (0x00014444)
- Record Type: SCPT
- Editor ID: SESylScript
- Form ID: 0x00014444
- Source File: Oblivion.esm.mod
- Patch Status: FormID has not been modified.
Parameter |
Value |
SCTX |
scn SESylScript
short Refuse ;flag set in dialogue if player refuses to help her in SE05
short Speech
short EndGreetTrigger
short SylMad ;For use with Syl's Timer for Anger Talk in SE07B
float ConvTimer
float SE05Timer
float SylMadTalkLength ;Syl's timer for the delay of lines and events in her Anger Talk in SE07B
float SylTimer ;A float for the artifical delay in Syl's appearance before her Anger Talk in SE07B
float SylTimer2 ;A float for the artifical delay in Syl's appearance before her Anger Talk in SE07B
; This is for killing her if SE07A is running
begin OnDeath
if ( GetStage SE07A >= 22 )
SetStage SE07A 30
endif
; this sets the SE12 variables if she is the traitor
if GetQuestRunning SE12 == 1
set SE12.TraitorDead to 1
; which pool is still ordered?
if SE12.ManiaPoolOrdered == 1
; means we're at Mania side
if SE12.ManiaPriestsDead >= SE12.ManiaPriestsCount
SE12PoolManiaRef.activate SESylRef 1
setstage SE12 150
endif
else
; means we're at Dementia side
if SE12.DementiaPriestsDead >= SE12.DementiaPriestsCount
SE12PoolDementiaRef.activate SESylRef 1
setstage SE12 160
endif
endif
endif
end
; taunt at the beginning of combat in SE12
begin OnStartCombat player
if getincell XPGloomstonePassage == 1
sayto player SE12TraitorTaunts
set SE12.TraitorTalk to 2
endif
end
Begin OnAlarm 3 Player
if SE12.TraitorTalk == 0
set SE12.TraitorTalk to 1
endif
end
;This ensures she goes into combat with player on sight
begin gamemode
if ( GetStage SE07A >= 22 && GetStage SE07A < 200 )
if ( GetDistance Player < 1000 )
StartCombat Player
endif
endif
;Set SE05 Stage 20 after player has talked to Syl at the beginning
;Necessary so that player gets pop-up and can select this as Active Quest instead of SE04Shell
if ( GetStageDone SE05 20 == 0 )
if ( SE05.Stage20Update == 1 )
SetStage SE05 20
endif
endif
;For use with SE07B This kicks off the end speech
if ( GetStage SE07B >= 50 ) && ( SE07B.SylMove == 1 )
DisablePlayerControls
SESylRef.Enable
SE07EndSeducer01Ref.Enable
SE07EndSeducer02Ref.Enable
Set SylTimer to 1
SEDerveninRef.Evp
SEArctusRef.Evp
Set SE07B.SylMove to 2
endif
if ( SE07B.SylMove == 2 )
if ( SylTimer > 0 )
Set SylTimer to ( SylTimer - GetSecondsPassed )
else
SE07ThadonSpeaks.Say SE07BSylShout 1 SESyl 1
Set SylTimer2 to 6
Set SE07B.SylMove to 3
endif
endif
if ( SE07B.SylMove == 3 )
if ( SylTimer2 > 0 )
Set SylTimer2 to ( SylTimer2 - GetSecondsPassed )
else
Set SE07B.SylMove to 4
endif
endif
if ( GetStage SE07B >= 50 ) && ( SE07B.SylMove == 4 )
if ( SylMad == 0 ) && ( SylMadTalkLength <= 0 )
Set SylMadTalkLength to SESheogorathRef.Say SE07BSheoShout
SESheogorathRef.Sayto SESylRef SE07BSheoShout 1
Set SylMad to 1
elseif ( SylMad == 1 ) && ( SylMadTalkLength <= 0 )
Set SylMadTalkLength to SESheogorathRef.Say SE07BSheoShout02
SESheogorathRef.Sayto SESylRef SE07BSheoShout02 1
Set SylMad to 2
elseif ( SylMad == 2 ) && ( SylMadTalkLength <= 0 )
Set SylMadTalkLength to SESheogorathRef.Say SE07BSheoShout03
SESheogorathRef.Sayto SESylRef SE07BSheoShout03 1
Set SylMad to 3
elseif (SylMad == 3 ) && ( SylMadTalkLength <= -6.5 )
Set SE07B.SylMove to 5
Set SylMad to 4
endif
endif
if ( SylMad > 0 ) && ( SylMad < 4 )
Set SylMadTalkLength to SylMadTalkLength - GetSecondsPassed
endif
if ( GetStage SE07B >= 50 ) && ( SE07B.Convo != 12 ) && ( SE07B.SylMove == 5 )
startconversation SESheogorathRef SE07BSylLeaves
Set SE07B.SylMove to 6
endif
;SE05 Speech
if ( Speech == 0 )
if ( GetStage SE05 == 130 )
if ( GetDistance SE05SylChamberMarker < 300 )
set Speech to 1
endif
endif
elseif ( Speech == 1 )
Set ConvTimer to SeSylRef.SayTo SEMuurineRef SE05SylEndSpeech
set Speech to 2
elseif ( Speech == 2 )
if ( ConvTimer <= 0 )
set Speech to 3
SeSylRef.EvaluatePackage
else
set ConvTimer to ( ConvTimer - GetSecondsPassed )
endif
endif
if ( EndGreetTrigger == 0 )
if ( SEMuurineRef.GetDead == 1 )
set EndGreetTrigger to 1
set SE05Timer to 3
endif
elseif ( EndGreetTrigger == 1 )
if ( SE05Timer <= 0 )
set EndGreetTrigger to -1
StartConversation Player
else
set SE05Timer to ( SE05Timer - GetSecondsPassed )
endif
endif
if SE12.TraitorTalk == 1
if getincell XPGloomstonePassage == 1 && GetDead == 0
if ConvTimer > 0
set ConvTimer to ConvTimer - getSecondsPassed
else
; taunt player
if IsInCombat == 1
; turn off taunts when he enters combat
set SE12.TraitorTalk to 2
setav aggression 50
endif
; taunt player
set ConvTimer to sayto player SE12TraitorTaunts 1
set ConvTimer to ConvTimer + 1
endif
endif
endif
end
begin OnPackageEnd SE07BSylExitsSacellum
if ( GetStage SE07B >= 50 )
SESylRef.Disable
SE07EndSeducer01Ref.Disable
SE07EndSeducer02Ref.Disable
EnablePlayerControls
SetStage SE07B 55
endif
end |
|