(include "sci.sh")
(use "Main")
(use "Obj")
(script 810)



(class rmnScript of Script
    (properties
        client 0
        state -1
        start 0
        timer 0
        cycles 0
        seconds 0
        lastSeconds 0
        register 0
        script 0
        caller 0
        next 0
        save1 0
        DTimer 10
        counter 0
    )

    (method (init param1)
        (if (not (send gSq4KeyDownHandler:contains(self)))
            (send gSq4KeyDownHandler:addToFront(self))
        )
        (if (not (send gSq4MouseDownHandler:contains(self)))
            (send gSq4MouseDownHandler:addToFront(self))
        )
        (if (not (send gSq4DirectionHandler:contains(self)))
            (send gSq4DirectionHandler:addToFront(self))
        )
        = counter DTimer
        (super:init(rest param1))
    )


    (method (doit)
        (super:doit())
        (if (save1)
            --counter
        )
    )


    (method (dispose param1)
        (send gSq4KeyDownHandler:delete(self))
        (send gSq4MouseDownHandler:delete(self))
        (send gSq4DirectionHandler:delete(self))
        (super:dispose(rest param1))
    )


    (method (handleEvent pEvent)
        (if (save1 and (<= counter 0))
            (send pEvent:claimed(1))
            (self:restore())
            = seconds 0
            = cycles 1
        )(else
            (if (save1)
                (send pEvent:claimed(1))
            )(else
                (super:handleEvent(pEvent))
            )
        )
    )


    (method (restore)
        (if (save1)
            Display(810 0 108 save1)
            = save1 0
            = counter DTimer
        )
    )

)
