(version 2)
(include "sci.sh")
(exports
    0 rm067
)
(use "Main")
(use "Game")
(use "TheMenuBar")
(script 67)



(instance public rm067 of Rm
    (properties
        picture 67
        horizon 77
        north 62
        east 68
        south 70
        west 66
    )

    (method (init)
        (var temp0[50])
        proc0_3()
        (self:setRegions(600))
        (super:init())
        (switch (gNorth)
            (case 61
                (send gEgo:
                    posn(+ (send global2:horizon) 2 80)
                    init()
                )
            )
            (case 62
                (send gEgo:
                    view(0)
                    cel((send gEgo:cel))
                    loop((send gEgo:loop))
                    init()
                )
            )
            (case 63
                (send gEgo:
                    posn(240 80)
                    init()
                )
            )
            (case 66
                (send gEgo:
                    posn(2 (send gEgo:y))
                    init()
                )
            )
            (case 68
                (send gEgo:
                    posn(317 (send gEgo:y))
                    init()
                )
            )
            (case 70
                (send gEgo:
                    posn((send gEgo:x) 187)
                    init()
                )
            )
        )
        (TheMenuBar:draw())
        (SL:enable())
    )


    (method (doit)
        (var gEgoOnControl)
        (super:doit())
        (if (== (send global2:script) 0)
            = gEgoOnControl (send gEgo:onControl())
            (if ((== gEgoOnControl 3) or (== gEgoOnControl 2))
                (send gEgo:
                    setPri(7)
                    posn((send gEgo:x) + (send gEgo:y) 2)
                )
                = global180 1
            )(else
                (if (== gEgoOnControl 9)
                    (send gEgo:
                        setPri(7)
                        posn((send gEgo:x) - (send gEgo:y) 2)
                    )
                    = global180 1
                )(else
                    (if ((== gEgoOnControl 5) or (== gEgoOnControl 7))
                        (send gEgo:
                            setPri(5)
                            posn((send gEgo:x) + (send gEgo:y) 2)
                        )
                        = global180 1
                    )
                )
            )
        )
    )


    (method (handleEvent pEvent)
        (super:handleEvent(pEvent))
        (if ((<> (send pEvent:type) 128) or (send pEvent:claimed))
            return 
        )
    )


    (method (newRoom newRoomNumber)
        (if (== script 0)
            (if (== 1 (send gEgo:edgeHit))
                (if (< (send gEgo:x) 105)
                    = newRoomNumber 61
                )
                (if (> (send gEgo:x) 210)
                    = newRoomNumber 63
                )
            )
            (if (global256)
                ++global593
            )
            (super:newRoom(newRoomNumber))
        )
    )

)
