1
Fork 0
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

214 lines
10 KiB

ScriptName GA_00E_DuesterWater01SCPT Extends ObjectReference
;-- Variables ---------------------------------------
;-- Properties --------------------------------------
ObjectReference Property BottomWaterMarker Auto
Int Property MainVar = 0 Auto
ObjectReference Property Switch Auto
ObjectReference Property UpperWaterMarker Auto
ObjectReference Property WaterControl Auto
ObjectReference Property WaterFallLarge01 Auto
ObjectReference Property WaterFallLarge02 Auto
ObjectReference Property WaterFallLarge03 Auto
ObjectReference Property WaterFallLarge04 Auto
ObjectReference Property WaterFallLarge05 Auto
ObjectReference Property WaterFallLarge06 Auto
ObjectReference Property WaterFallLarge07 Auto
ObjectReference Property WaterFallLarge08 Auto
ObjectReference Property WaterFallLarge09 Auto
ObjectReference Property WaterFallLarge10 Auto
ObjectReference Property WaterFallLarge11 Auto
ObjectReference Property WaterFallLarge12 Auto
ObjectReference Property WaterFallLarge13 Auto
ObjectReference Property WaterFallLarge14 Auto
ObjectReference Property WaterFallLarge15 Auto
ObjectReference Property WaterFallSmall01 Auto
ObjectReference Property WaterFallSmall02 Auto
ObjectReference Property WaterFallSmall03 Auto
ObjectReference Property WaterFallSmall04 Auto
ObjectReference Property WaterFallSmall05 Auto
ObjectReference Property WaterFallSmall06 Auto
ObjectReference Property WaterFallSmall07 Auto
ObjectReference Property WaterFallSmall08 Auto
ObjectReference Property WaterFallSmall09 Auto
ObjectReference Property WaterFallSmall10 Auto
ObjectReference Property WaterFallSmall11 Auto
ObjectReference Property WaterFallSmall12 Auto
ObjectReference Property WaterFallSmall13 Auto
ObjectReference Property WaterFallSmall14 Auto
ObjectReference Property WaterFallSmall15 Auto
ObjectReference Property WaterFlow01 Auto
ObjectReference Property WaterMain01 Auto
ObjectReference Property WaterMainSetPos Auto
Float Property WaterSpeed = 40.0 Auto
ObjectReference Property WaterSplash01 Auto
ObjectReference Property WaterSplash02 Auto
ObjectReference Property WaterSplash03 Auto
ObjectReference Property WaterSplash04 Auto
ObjectReference Property WaterSplash05 Auto
ObjectReference Property WaterSplash06 Auto
ObjectReference Property WaterSplash07 Auto
ObjectReference Property WaterSplash08 Auto
ObjectReference Property WaterSplash09 Auto
ObjectReference Property WaterSplash10 Auto
ObjectReference Property WaterSplash11 Auto
ObjectReference Property WaterSplash12 Auto
ObjectReference Property WaterSplash13 Auto
ObjectReference Property WaterSplash14 Auto
ObjectReference Property WaterSplash15 Auto
;-- Functions ---------------------------------------
; Skipped compiler generated GetState
; Skipped compiler generated GotoState
Event onActivate(ObjectReference akActionRef)
If WaterControl.isEnabled() && MainVar == 0
WaterControl.Disable(False)
Switch.playAnimation("FullPush")
Utility.Wait(2.0)
MainVar = 1
Self.Fillup()
ElseIf WaterControl.isDisabled() && MainVar == 3
WaterMain01.Enable(False)
WaterMain01.SetPosition(1152.0, 22720.0, WaterMainSetPos.GetPositionZ() + 0.5)
WaterControl.Enable(False)
WaterFlow01.Disable(False)
Switch.playAnimation("FullPull")
Utility.Wait(2.0)
MainVar = 4
Self.Evacuate()
EndIf
EndEvent
Function Fillup()
If MainVar == 1
Debug.Notification("Das Becken wird gefüllt!")
WaterSplash01.TranslateTo(WaterSplash01.GetPositionX(), WaterSplash01.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash02.TranslateTo(WaterSplash02.GetPositionX(), WaterSplash02.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash03.TranslateTo(WaterSplash03.GetPositionX(), WaterSplash03.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash04.TranslateTo(WaterSplash04.GetPositionX(), WaterSplash04.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash05.TranslateTo(WaterSplash05.GetPositionX(), WaterSplash05.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash06.TranslateTo(WaterSplash06.GetPositionX(), WaterSplash06.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash07.TranslateTo(WaterSplash07.GetPositionX(), WaterSplash07.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash08.TranslateTo(WaterSplash08.GetPositionX(), WaterSplash08.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash09.TranslateTo(WaterSplash09.GetPositionX(), WaterSplash09.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash10.TranslateTo(WaterSplash10.GetPositionX(), WaterSplash10.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash11.TranslateTo(WaterSplash11.GetPositionX(), WaterSplash11.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash12.TranslateTo(WaterSplash12.GetPositionX(), WaterSplash12.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash13.TranslateTo(WaterSplash13.GetPositionX(), WaterSplash13.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash14.TranslateTo(WaterSplash14.GetPositionX(), WaterSplash14.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash15.TranslateTo(WaterSplash15.GetPositionX(), WaterSplash15.GetPositionY(), -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterMain01.TranslateTo(1152.0, 22720.0, -2210.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
Self.RegisterForUpdate(0.100000001)
MainVar = 2
EndIf
EndFunction
Function Evacuate()
If MainVar == 4
WaterMainSetPos.SetPosition(1152.0, 22720.0, WaterMainSetPos.GetPositionZ() - 20.0)
WaterFallLarge01.Enable(False)
WaterFallLarge02.Enable(False)
WaterFallLarge03.Enable(False)
WaterFallLarge04.Enable(False)
WaterFallLarge05.Enable(False)
WaterFallLarge06.Enable(False)
WaterFallLarge07.Enable(False)
WaterFallLarge08.Enable(False)
WaterFallLarge09.Enable(False)
WaterFallLarge10.Enable(False)
WaterFallLarge11.Enable(False)
WaterFallLarge12.Enable(False)
WaterFallLarge13.Enable(False)
WaterFallLarge14.Enable(False)
WaterFallLarge15.Enable(False)
Utility.Wait(0.300000012)
WaterFallSmall01.Disable(False)
WaterFallSmall02.Disable(False)
WaterFallSmall03.Disable(False)
WaterFallSmall04.Disable(False)
WaterFallSmall05.Disable(False)
WaterFallSmall06.Disable(False)
WaterFallSmall07.Disable(False)
WaterFallSmall08.Disable(False)
WaterFallSmall09.Disable(False)
WaterFallSmall10.Disable(False)
WaterFallSmall11.Disable(False)
WaterFallSmall12.Disable(False)
WaterFallSmall13.Disable(False)
WaterFallSmall14.Disable(False)
WaterFallSmall15.Disable(False)
Utility.Wait(0.5)
Debug.Notification("Das Becken wird geleert!")
WaterMain01.TranslateTo(1152.0, 22720.0, -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash01.TranslateTo(WaterSplash01.GetPositionX(), WaterSplash01.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash02.TranslateTo(WaterSplash02.GetPositionX(), WaterSplash02.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash03.TranslateTo(WaterSplash03.GetPositionX(), WaterSplash03.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash04.TranslateTo(WaterSplash04.GetPositionX(), WaterSplash04.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash05.TranslateTo(WaterSplash05.GetPositionX(), WaterSplash05.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash06.TranslateTo(WaterSplash06.GetPositionX(), WaterSplash06.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash07.TranslateTo(WaterSplash07.GetPositionX(), WaterSplash07.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash08.TranslateTo(WaterSplash08.GetPositionX(), WaterSplash08.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash09.TranslateTo(WaterSplash09.GetPositionX(), WaterSplash09.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash10.TranslateTo(WaterSplash10.GetPositionX(), WaterSplash10.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash11.TranslateTo(WaterSplash11.GetPositionX(), WaterSplash11.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash12.TranslateTo(WaterSplash12.GetPositionX(), WaterSplash12.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash13.TranslateTo(WaterSplash13.GetPositionX(), WaterSplash13.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash14.TranslateTo(WaterSplash14.GetPositionX(), WaterSplash14.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
WaterSplash15.TranslateTo(WaterSplash15.GetPositionX(), WaterSplash15.GetPositionY(), -2752.0, 0.0, 0.0, 0.0, WaterSpeed, 0.0)
Self.RegisterForUpdate(0.100000001)
MainVar = 5
EndIf
EndFunction
Event OnUpdate()
If MainVar == 2 && WaterMain01.GetPositionZ() != -2210.0
WaterMainSetPos.SetPosition(1152.0, 22720.0, WaterMain01.GetPositionZ() - 1 as Float)
ElseIf MainVar == 2 && WaterMain01.GetPositionZ() == -2210.0
WaterMain01.Disable(False)
WaterFlow01.Enable(False)
Self.UnregisterForUpdate()
WaterFallSmall01.Enable(False)
WaterFallSmall02.Enable(False)
WaterFallSmall03.Enable(False)
WaterFallSmall04.Enable(False)
WaterFallSmall05.Enable(False)
WaterFallSmall06.Enable(False)
WaterFallSmall07.Enable(False)
WaterFallSmall08.Enable(False)
WaterFallSmall09.Enable(False)
WaterFallSmall10.Enable(False)
WaterFallSmall11.Enable(False)
WaterFallSmall12.Enable(False)
WaterFallSmall13.Enable(False)
WaterFallSmall14.Enable(False)
WaterFallSmall15.Enable(False)
Utility.Wait(0.300000012)
WaterFallLarge01.Disable(False)
WaterFallLarge02.Disable(False)
WaterFallLarge03.Disable(False)
WaterFallLarge04.Disable(False)
WaterFallLarge05.Disable(False)
WaterFallLarge06.Disable(False)
WaterFallLarge07.Disable(False)
WaterFallLarge08.Disable(False)
WaterFallLarge09.Disable(False)
WaterFallLarge10.Disable(False)
WaterFallLarge11.Disable(False)
WaterFallLarge12.Disable(False)
WaterFallLarge13.Disable(False)
WaterFallLarge14.Disable(False)
WaterFallLarge15.Disable(False)
Utility.Wait(1.0)
MainVar = 3
ElseIf MainVar == 5 && WaterMain01.GetPositionZ() != -2752.0
WaterMainSetPos.SetPosition(1152.0, 22720.0, WaterMain01.GetPositionZ() - 10 as Float)
ElseIf MainVar == 5 && WaterMain01.GetPositionZ() == -2752.0
WaterMain01.Disable(False)
Self.UnregisterForUpdate()
MainVar = 0
EndIf
EndEvent