(version 2)
(include "sci.sh")
(use "Main")
(use "Sound")
(use "Cycle")
(use "User")
(use "View")
(script 807)

(class Animation of Prop
    (properties
        x 0
        y 0
        z 0
        heading 0
        noun 0
        modNum -1
        nsTop 0
        nsLeft 0
        nsBottom 0
        nsRight 0
        sightAngle 26505
        actions 0
        onMeCheck $6789
        state $0000
        approachX 0
        approachY 0
        approachDist 0
        _approachVerbs 0
        yStep 2
        view 0
        loop 0
        cel 0
        priority 0
        underBits 0
        signal $4001
        lsTop 0
        lsLeft 0
        lsBottom 0
        lsRight 0
        brTop 0
        brLeft 0
        brBottom 0
        brRight 0
        scaleSignal $0000
        scaleX 128
        scaleY 128
        maxScale 128
        cycleSpeed 6
        script 0
        cycler 0
        timer 0
        detailLevel 0
        scaler 0
        anAudio 0
        whichCyc 0
        noLoops 0
        lastView 0
        aSound 0
    )

    (method (init)
        (super:init())
        (send gKH:addToFront(self))
        (send gMH:addToFront(self))
    )


    (method (dispose)
        (if (whichCyc)
            (send whichCyc:dispose())
        )
        (if (aSound)
            (send aSound:dispose())
            = aSound 0
        )
        (send gKH:delete(self))
        (send gMH:delete(self))
        (super:dispose())
    )


    (method (handleEvent pEvent)
        (if ((self:onMe(pEvent)) and (== (User:canInput()) 1))
            (send global1:handsOff())
            (send pEvent:claimed(1))
            (if (whichCyc)
                (self:setCycle(whichCyc lastView noLoops self))
            )(else
                (self:setCycle(End self))
            )
            (if (anAudio)
                (if (aSound)
                    (send aSound:play())
                )(else
                    = aSound (send ((Sound:new())):
                            number(anAudio)
                            play()
                            yourself()
                        )
                )
            )
        )(else
            (super:handleEvent(pEvent))
        )
    )


    (method (cue)
        (self:stopUpd())
    )

)
