(include "sci.sh")
(use "Main")
(use "eureka")
(use "rm240")
(use "Scaler")
(use "PolyPath")
(use "StopWalk")
(use "Grooper")
(use "Cycle")
(use "Obj")
(script 245)



(instance public beaClimbsOut of Script
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                ((send gSQ5:handsOff()) 
                (if (proc240_1())
                    (self:setScript(ScriptID(240 3) self 2))
                )(else
                    = cycles 1
                )
 )
            )
            (case 1
                ((send gEgo:setMotion(PolyPath 188 136 self))  )
            )
            (case 2
                ((send gEgo:setHeading(0 self))  )
            )
            (case 3
                (proc0_10(204 10) (send (ScriptID(240 5)):
                    view(280)
                    loop(1)
                    cel(5)
                    setCycle(Beg self)
                )
  )
            )
            (case 4
                ((send (ScriptID(240 5)):
                    view(259)
                    loop(2)
                    cel(2)
                )
 (send (ScriptID(240 2)):
                    init()
                    view(24)
                    loop(0)
                    cel(0)
                    posn(172 109 0)
                    setPri(11)
                    setCycle(End self)
                )
  )
            )
            (case 5
                ((send (ScriptID(240 5)):
                    view(280)
                    loop(1)
                    cel(0)
                    setCycle(End self)
                )
  )
            )
            (case 6
                ((send (ScriptID(240 5)):
                    view(259)
                    loop(2)
                    cel(1)
                )
 (send (ScriptID(240 2)):
                    view(8)
                    loop(2)
                    posn(140 129)
                    setCycle(StopWalk -1)
                    setLoop(Grooper)
                    setScale(Scaler 116 71 149 123)
                )
 
                (if (proc0_1(84))
                    (send gTestMessager:say(2 2 3 0 self))
                )(else
                    (send gTestMessager:say(2 2 56 0 self))
                )
 )
            )
            (case 7
                ((send (ScriptID(240 2)):setMotion(MoveTo 119 127 self))  )
            )
            (case 8
                ((send (ScriptID(240 2)):setMotion(MoveTo 128 143 self))  )
            )
            (case 9
                ((send (ScriptID(240 2)):setHeading(180 self))  )
            )
            (case 10
                ((send ((send (ScriptID(240 2)):looper)):dispose()) (send (ScriptID(240 2)):
                    looper(0)
                    setCycle(0)
                )
 = cycles 3  )
            )
            (case 11
                ((send (ScriptID(240 2)):
                    view(25)
                    setLoop(0)
                    setScale(0)
                    cel(15)
                )
 proc0_3(45) = global164 9 
                (if (== (eureka:puke) 7)
                    = next beaGoesFirst
                )(else
                    (send gSQ5:handsOn())
                )
 (self:dispose()) )
            )
        )
    )

)
(instance public specialEntry of Script
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                ((send gSQ5:handsOff()) (send gEgo:
                    view(239)
                    loop(3)
                    cel(0)
                    setPri(1)
                    posn(42 135)
                    setScale()
                    scaleX(110)
                    scaleY(110)
                    setScript(shakeShip)
                    setCycle(End self)
                )
  )
            )
            (case 1
                (proc0_6(0 2) (send gEgo:
                    posn(48 134)
                    setScale(Scaler 116 71 149 123)
                )
 (send (ScriptID(240 22)):setCycle(Beg self))  )
            )
            (case 2
                ((send gTestMessager:say(20 0 28 0 self))  )
            )
            (case 3
                (
                (if ((send gCast:contains(ScriptID(240 2))))
                    = next beaGoesFirst
                )(else
                    (send gSQ5:handsOn())
                )
 (send (ScriptID(240 22)):stopUpd()) (self:dispose()) )
            )
        )
    )

)
(instance beaGoesFirst of Script
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                ((send gSQ5:handsOff()) proc0_8(gEgo ScriptID(240 2) self)  )
            )
            (case 1
                ((send gTestMessager:say(2 2 4 1 2 self))  )
            )
            (case 2
                ((send (ScriptID(240 2)):setCycle(Beg self)) (send gSq5Music2:
                    number(260)
                    loop(1)
                    play()
                )
  )
            )
            (case 3
                ((send gSq5Music2:stop()) (send (ScriptID(240 2)):dispose()) = seconds 2  )
            )
            (case 4
                ((send gTestMessager:say(2 2 4 3 self))  )
            )
            (case 5
                ((send gSQ5:handsOn()) (self:dispose()) )
            )
        )
    )

)
(instance shakeShip of Script
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                (= seconds 10  )
            )
            (case 1
                (ShakeScreen(5 2) = state -1 = cycles 1 )
            )
        )
    )

)
(instance public spikeComesWith of Script
    (properties)

    (method (changeState newState)
        (switch (= state newState)
            (case 0
                ((send (ScriptID(240 24)):
                    init(1)
                    setCycle(End self)
                )
 (send (ScriptID(240 20)):
                    init()
                    cel(0)
                    setCycle(End self)
                )
  )
            )
            (case 1
                ( )
            )
            (case 2
                ((send (ScriptID(240 24)):stopUpd()) (send (ScriptID(240 20)):dispose()) (send (ScriptID(240 8)):setCycle(Beg self))  )
            )
            (case 3
                ((send gSq5Music1:
                    number(23)
                    loop(-1)
                    play()
                )
 (send (ScriptID(240 8)):
                    view(244)
                    loop(5)
                    cel(0)
                    posn(251 100)
                    setCycle(End self)
                )
  )
            )
            (case 4
                (proc240_29(1) (send (ScriptID(240 8)):
                    posn(181 144)
                    setMotion(MoveTo + (send gEgo:x) 30 + (send gEgo:y) 5 self)
                )
  )
            )
            (case 5
                ((send gEgo:setHeading(135 self)) (send (ScriptID(240 8)):setHeading(270))  )
            )
            (case 6
                (proc240_30() (send (ScriptID(240 8)):dispose()) = register 3 = start 0 (send gEgo:
                    view(192)
                    loop(0)
                    cel(0)
                    setScale(Scaler 116 71 149 123)
                    setCycle(End self)
                )
  )
            )
            (case 7
                ((send gEgo:setCycle(CT 5 -1 self))  )
            )
            (case 8
                ((send gEgo:setCycle(End self)) 
                (if (--register)
                    = state (- state 2)
                )
 )
            )
            (case 9
                ((send gEgo:
                    y(1)
                    cel(0)
                )
 = cycles 1  )
            )
            (case 10
                ((send gEgo:setCycle(CT 4 1 self))  )
            )
            (case 11
                ((send gEgo:
                    get(8)
                    setCycle(CT 1 -1 self)
                )
 
                (if (--register)
                    = state (- state 2)
                )
 )
            )
            (case 12
                ((send gEgo:setCycle(End self))  )
            )
            (case 13
                ((send gTestMessager:say(22 0 31 0 self))  )
            )
            (case 14
                (proc0_6(0 4) (self:dispose()) )
            )
        )
    )

)
