(script 989)

(string
    string_0182 "Sound"
)

(said
)

(local
)

// 0114
(class Sound of Obj
    (properties
        state $0
        number $0
        priority $0
        loop $1
        handle $0
        signal $0
        prevSignal $0
        client $0
        owner $0
    )
    (method (new) // method_0004
  0004:38 0082          pushi 82 // $82 owner
  0007:78               push1 
  0008:87 00              lap paramTotal 
  000a:31 04              bnt code_0010 
  000c:87 01              lap param1 
  000e:33 02              jmp code_0012 

        code_0010
  0010:35 00              ldi 0 

        code_0012
  0012:36                push 
  0013:39 5f            pushi 5f // $5f yourself
  0015:76               push0 
  0016:39 56            pushi 56 // $56 new
  0018:76               push0 
  0019:57 00 04         super Obj 4 

  001c:4a 0a             send a 

  001e:48                 ret 
    )

    (method (init) // method_001f
  001f:35 00              ldi 0 
  0021:65 12             aTop signal 
  0023:65 08             aTop state 
  0025:39 61            pushi 61 // $61 add
  0027:78               push1 
  0028:7c            pushSelf 
  0029:81 08              lag gSounds 
  002b:4a 06             send 6 

  002d:7a               push2 
  002e:76               push0 
  002f:7c            pushSelf 
  0030:43 31 04         callk DoSound 4 

  0033:48                 ret 
    )

    (method (play) // method_0034
  0034:3f 01             link 1 // (var $1)
  0036:38 0084          pushi 84 // $84 stop
  0039:76               push0 
  003a:54 04             self 4 

  003c:63 0e             pToa loop 
  003e:18                 not 
  003f:31 04              bnt code_0045 
  0041:35 01              ldi 1 
  0043:65 0e             aTop loop 

        code_0045
  0045:39 57            pushi 57 // $57 init
  0047:76               push0 
  0048:54 04             self 4 

  004a:87 00              lap paramTotal 
  004c:31 04              bnt code_0052 
  004e:87 01              lap param1 
  0050:33 02              jmp code_0054 

        code_0052
  0052:35 00              ldi 0 

        code_0054
  0054:65 16             aTop client 
  0056:7a               push2 
  0057:78               push1 
  0058:7c            pushSelf 
  0059:43 31 04         callk DoSound 4 

  005c:48                 ret 
    )

    (method (playMaybe) // method_005d
  005d:39 2a            pushi 2a // $2a play
  005f:76               push0 
  0060:59 01            &rest 1 
  0062:54 04             self 4 

  0064:67 08             pTos state 
  0066:35 02              ldi 2 
  0068:1a                 eq? 
  0069:31 05              bnt code_0070 
  006b:39 58            pushi 58 // $58 dispose
  006d:76               push0 
  006e:54 04             self 4 


        code_0070
  0070:48                 ret 
    )

    (method (check) // method_0071
  0071:63 12             pToa signal 
  0073:31 18              bnt code_008d 
  0075:78               push1 
  0076:67 16             pTos client 
  0078:43 06 02         callk IsObject 2 

  007b:31 08              bnt code_0085 
  007d:39 79            pushi 79 // $79 cue
  007f:78               push1 
  0080:7c            pushSelf 
  0081:63 16             pToa client 
  0083:4a 06             send 6 


        code_0085
  0085:63 12             pToa signal 
  0087:65 14             aTop prevSignal 
  0089:35 00              ldi 0 
  008b:65 12             aTop signal 

        code_008d
  008d:48                 ret 
    )

    (method (stop) // method_008e
  008e:87 00              lap paramTotal 
  0090:31 09              bnt code_009b 
  0092:87 01              lap param1 
  0094:18                 not 
  0095:31 04              bnt code_009b 
  0097:35 00              ldi 0 
  0099:65 16             aTop client 

        code_009b
  009b:63 10             pToa handle 
  009d:31 08              bnt code_00a7 
  009f:7a               push2 
  00a0:39 05            pushi 5 // $5 view
  00a2:67 10             pTos handle 
  00a4:43 31 04         callk DoSound 4 


        code_00a7
  00a7:48                 ret 
    )

    (method (dispose) // method_00a8
  00a8:87 00              lap paramTotal 
  00aa:31 09              bnt code_00b5 
  00ac:87 01              lap param1 
  00ae:18                 not 
  00af:31 04              bnt code_00b5 
  00b1:35 00              ldi 0 
  00b3:65 16             aTop client 

        code_00b5
  00b5:39 54            pushi 54 // $54 delete
  00b7:78               push1 
  00b8:7c            pushSelf 
  00b9:81 08              lag gSounds 
  00bb:4a 06             send 6 

  00bd:63 10             pToa handle 
  00bf:31 0c              bnt code_00cd 
  00c1:7a               push2 
  00c2:39 03            pushi 3 // $3 y
  00c4:67 10             pTos handle 
  00c6:43 31 04         callk DoSound 4 

  00c9:35 00              ldi 0 
  00cb:65 10             aTop handle 

        code_00cd
  00cd:39 58            pushi 58 // $58 dispose
  00cf:76               push0 
  00d0:57 00 04         super Obj 4 

  00d3:48                 ret 
    )

    (method (pause) // method_00d4
  00d4:7a               push2 
  00d5:39 06            pushi 6 // $6 loop
  00d7:8f 01              lsp param1 
  00d9:43 31 04         callk DoSound 4 

  00dc:48                 ret 
    )

    (method (changeState) // method_00dd
  00dd:7a               push2 
  00de:39 09            pushi 9 // $9 nsTop
  00e0:7c            pushSelf 
  00e1:43 31 04         callk DoSound 4 

  00e4:48                 ret 
    )

    (method (clean) // method_00e5
  00e5:63 18             pToa owner 
  00e7:18                 not 
  00e8:2f 07               bt code_00f1 
  00ea:67 18             pTos owner 
  00ec:87 01              lap param1 
  00ee:1a                 eq? 
  00ef:31 05              bnt code_00f6 

        code_00f1
  00f1:39 58            pushi 58 // $58 dispose
  00f3:76               push0 
  00f4:54 04             self 4 


        code_00f6
  00f6:48                 ret 
    )

    (method (fade) // method_00f7
  00f7:87 00              lap paramTotal 
  00f9:31 09              bnt code_0104 
  00fb:87 01              lap param1 
  00fd:18                 not 
  00fe:31 04              bnt code_0104 
  0100:35 00              ldi 0 
  0102:65 16             aTop client 

        code_0104
  0104:7a               push2 
  0105:39 0a            pushi a // $a nsLeft
  0107:67 10             pTos handle 
  0109:43 31 04         callk DoSound 4 

  010c:48                 ret 
  010d:00                bnot 
    )

)



