(script 266)

(string
    string_0590 "Celie"
    string_0596 "cBlock"
    string_059d "celie"
    string_05a3 "celirock"
    string_05ac "chair"
    string_05b2 "enter"
    string_05b8 "myMusic"
)

(said
    said_03fc get/darning
    said_0402 ecouter/celie
    said_0408 look/celie
    said_040e look/darning
    said_0414 hold,deliver/collier
    said_041d bonjour/celie
)

(synonym
    celie | cook = chair | chaise | fauteuil
    celie | cook = person | personne
    celie | cook = dame | femme | fille | girl | lady | maiden | woman
)

(local
    local0 = $0000
)

// 042a
(instance cBlock of Blk
    (properties
        top $65
        left $104
        bottom $67
        right $122
    )
)

// 044a
(instance public celirock of Rgn
    (properties
        script $0
        number $0
        timer $0
        keep $0
        initialized $0
    )
    (method (init) // method_003e
  003e:39 57            pushi 57 // $57 init
  0040:76               push0 
  0041:57 36 04         super Rgn 4 

  0044:7a               push2 
  0045:38 0087          pushi 87 // $87 clean
  0048:39 04            pushi 4 // $4 x
  004a:43 00 04         callk Load 4 

  004d:39 03            pushi 3 // $3 y
  004f:38 0080          pushi 80 // $80 timeLeft
  0052:38 01e0          pushi 1e0 // $1e0 sel_480
  0055:38 0385          pushi 385 // $385 sel_901
  0058:45 15 06         callb procedure_0015 6 // LoadMany 

  005b:35 02              ldi 2 
  005d:a0 00d0            sag global208 
  0060:80 0087            lag global135 
  0063:31 16              bnt code_007b 
  0065:39 03            pushi 3 // $3 y
  0067:38 008f          pushi 8f // $8f moveTo
  006a:38 00f3          pushi f3 // $f3 close
  006d:38 011b          pushi 11b // $11b lower
  0070:45 15 06         callb procedure_0015 6 // LoadMany 

  0073:34 011b            ldi 11b 
  0076:a0 017a            sag global378 
  0079:33 14              jmp code_008f 

        code_007b
  007b:39 03            pushi 3 // $3 y
  007d:38 008f          pushi 8f // $8f moveTo
  0080:38 00f3          pushi f3 // $f3 close
  0083:38 00e4          pushi e4 // $e4 echo
  0086:45 15 06         callb procedure_0015 6 // LoadMany 

  0089:34 00e4            ldi e4 
  008c:a0 017a            sag global378 

        code_008f
  008f:38 00a4          pushi a4 // $a4 cycleSpeed
  0092:78               push1 
  0093:78               push1 
  0094:39 7e            pushi 7e // $7e setCycle
  0096:78               push1 
  0097:51 16            class Fwd 
  0099:36                push 
  009a:39 57            pushi 57 // $57 init
  009c:76               push0 
  009d:72 0412          lofsa $04b2 // Celie
  00a0:4a 10             send 10 

  00a2:39 57            pushi 57 // $57 init
  00a4:76               push0 
  00a5:38 0089          pushi 89 // $89 hide
  00a8:76               push0 
  00a9:72 046e          lofsa $051a // chair
  00ac:4a 08             send 8 

  00ae:39 2b            pushi 2b // $2b number
  00b0:78               push1 
  00b1:39 21            pushi 21 // $21 font
  00b3:39 06            pushi 6 // $6 loop
  00b5:78               push1 
  00b6:39 ff            pushi ff // $ff checkAni
  00b8:39 2a            pushi 2a // $2a play
  00ba:76               push0 
  00bb:72 04aa          lofsa $0568 // myMusic
  00be:4a 10             send 10 

  00c0:38 00d8          pushi d8 // $d8 observeBlocks
  00c3:78               push1 
  00c4:74 0369          lofss $0430 // cBlock
  00c7:81 00              lag gEgo 
  00c9:4a 06             send 6 

  00cb:48                 ret 
    )

    (method (doit) // method_00cc
  00cc:39 3c            pushi 3c // $3c doit
  00ce:76               push0 
  00cf:57 36 04         super Rgn 4 

  00d2:48                 ret 
    )

    (method (dispose) // method_00d3
  00d3:39 58            pushi 58 // $58 dispose
  00d5:76               push0 
  00d6:57 36 04         super Rgn 4 

  00d9:48                 ret 
    )

    (method (handleEvent) // method_00da
  00da:3f 02             link 2 // (var $2)
  00dc:39 6f            pushi 6f // $6f handleEvent
  00de:78               push1 
  00df:8f 01              lsp param1 
  00e1:57 36 06         super Rgn 6 

  00e4:39 4c            pushi 4c // $4c claimed
  00e6:76               push0 
  00e7:87 01              lap param1 
  00e9:4a 04             send 4 

  00eb:31 03              bnt code_00f0 
  00ed:35 01              ldi 1 
  00ef:48                 ret 

        code_00f0
  00f0:35 02              ldi 2 
  00f2:a0 00d5            sag global213 
  00f5:78               push1 
  00f6:74 0315          lofss $040e // look/darning
  00f9:43 25 02         callk Said 2 

  00fc:31 0e              bnt code_010c 
  00fe:7a               push2 
  00ff:38 010a          pushi 10a // $10a setRegions
  0102:76               push0 
  0103:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0109:32 018f            jmp code_029b 

        code_010c
  010c:78               push1 
  010d:74 02ec          lofss $03fc // get/darning
  0110:43 25 02         callk Said 2 

  0113:31 0e              bnt code_0123 
  0115:7a               push2 
  0116:38 010a          pushi 10a // $10a setRegions
  0119:78               push1 
  011a:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0120:32 0178            jmp code_029b 

        code_0123
  0123:78               push1 
  0124:74 02ed          lofss $0414 // hold,deliver/collier
  0127:43 25 02         callk Said 2 

  012a:31 66              bnt code_0192 
  012c:38 00ee          pushi ee // $ee has
  012f:78               push1 
  0130:76               push0 
  0131:81 00              lag gEgo 
  0133:4a 06             send 6 

  0135:31 54              bnt code_018b 
  0137:38 00ae          pushi ae // $ae distanceTo
  013a:78               push1 
  013b:74 0374          lofss $04b2 // Celie
  013e:81 00              lag gEgo 
  0140:4a 06             send 6 

  0142:36                push 
  0143:35 28              ldi 28 
  0145:22                 lt? 
  0146:31 3d              bnt code_0185 
  0148:39 03            pushi 3 // $3 y
  014a:78               push1 
  014b:38 010a          pushi 10a // $10a setRegions
  014e:7a               push2 
  014f:45 01 06         callb procedure_0001 6 // Say 

  0152:38 00ed          pushi ed // $ed put
  0155:78               push1 
  0156:76               push0 
  0157:81 00              lag gEgo 
  0159:4a 06             send 6 

  015b:35 01              ldi 1 
  015d:a0 0087            sag global135 
  0160:35 07              ldi 7 
  0162:a5 00              sat temp0 
  0164:35 00              ldi 0 
  0166:a5 01              sat temp1 

        code_0168
  0168:8d 01              lst temp1 
  016a:35 07              ldi 7 
  016c:22                 lt? 
  016d:31 0c              bnt code_017b 
  016f:76               push0 
  0170:85 00              lat temp0 
  0172:b0 00e1           sagi global225 
  0175:c5 00              +at temp0 
  0177:c5 01              +at temp1 
  0179:33 ed              jmp code_0168 

        code_017b
  017b:39 7a            pushi 7a // $7a setScript
  017d:78               push1 
  017e:74 0301          lofss $0482 // enter
  0181:54 06             self 6 

  0183:33 04              jmp code_0189 

        code_0185
  0185:76               push0 
  0186:45 09 00         callb procedure_0009 0 // NotClose 


        code_0189
  0189:33 04              jmp code_018f 

        code_018b
  018b:76               push0 
  018c:45 0d 00         callb procedure_000d 0 // DontHave 


        code_018f
  018f:32 0109            jmp code_029b 

        code_0192
  0192:78               push1 
  0193:74 026c          lofss $0402 // ecouter/celie
  0196:43 25 02         callk Said 2 

  0199:31 0f              bnt code_01aa 
  019b:7a               push2 
  019c:38 010a          pushi 10a // $10a setRegions
  019f:39 03            pushi 3 // $3 y
  01a1:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  01a7:32 00f1            jmp code_029b 

        code_01aa
  01aa:78               push1 
  01ab:74 026f          lofss $041d // bonjour/celie
  01ae:43 25 02         callk Said 2 

  01b1:30 00e7            bnt code_029b 
  01b4:80 0087            lag global135 
  01b7:30 0083            bnt code_023d 
  01ba:8b 00              lsl local0 
  01bc:3c                 dup 
  01bd:35 00              ldi 0 
  01bf:1a                 eq? 
  01c0:31 0d              bnt code_01cf 
  01c2:39 03            pushi 3 // $3 y
  01c4:78               push1 
  01c5:38 010a          pushi 10a // $10a setRegions
  01c8:39 04            pushi 4 // $4 x
  01ca:45 01 06         callb procedure_0001 6 // Say 

  01cd:33 6b              jmp code_023a 

        code_01cf
  01cf:3c                 dup 
  01d0:35 01              ldi 1 
  01d2:1a                 eq? 
  01d3:31 0d              bnt code_01e2 
  01d5:39 03            pushi 3 // $3 y
  01d7:78               push1 
  01d8:38 010a          pushi 10a // $10a setRegions
  01db:39 05            pushi 5 // $5 view
  01dd:45 01 06         callb procedure_0001 6 // Say 

  01e0:33 58              jmp code_023a 

        code_01e2
  01e2:3c                 dup 
  01e3:35 02              ldi 2 
  01e5:1a                 eq? 
  01e6:31 0d              bnt code_01f5 
  01e8:39 03            pushi 3 // $3 y
  01ea:78               push1 
  01eb:38 010a          pushi 10a // $10a setRegions
  01ee:39 06            pushi 6 // $6 loop
  01f0:45 01 06         callb procedure_0001 6 // Say 

  01f3:33 45              jmp code_023a 

        code_01f5
  01f5:3c                 dup 
  01f6:35 03              ldi 3 
  01f8:1a                 eq? 
  01f9:31 0d              bnt code_0208 
  01fb:39 03            pushi 3 // $3 y
  01fd:78               push1 
  01fe:38 010a          pushi 10a // $10a setRegions
  0201:39 07            pushi 7 // $7 cel
  0203:45 01 06         callb procedure_0001 6 // Say 

  0206:33 32              jmp code_023a 

        code_0208
  0208:3c                 dup 
  0209:35 04              ldi 4 
  020b:1a                 eq? 
  020c:31 0d              bnt code_021b 
  020e:39 03            pushi 3 // $3 y
  0210:78               push1 
  0211:38 010a          pushi 10a // $10a setRegions
  0214:39 08            pushi 8 // $8 underBits
  0216:45 01 06         callb procedure_0001 6 // Say 

  0219:33 1f              jmp code_023a 

        code_021b
  021b:3c                 dup 
  021c:35 05              ldi 5 
  021e:1a                 eq? 
  021f:31 0d              bnt code_022e 
  0221:39 03            pushi 3 // $3 y
  0223:78               push1 
  0224:38 010a          pushi 10a // $10a setRegions
  0227:39 09            pushi 9 // $9 nsTop
  0229:45 01 06         callb procedure_0001 6 // Say 

  022c:33 0c              jmp code_023a 

        code_022e
  022e:7a               push2 
  022f:38 010a          pushi 10a // $10a setRegions
  0232:39 0a            pushi a // $a nsLeft
  0234:46 00ff 0000 04  calle ff procedure_0000 4 // Print 


        code_023a
  023a:3a                toss 
  023b:33 5c              jmp code_0299 

        code_023d
  023d:8b 00              lsl local0 
  023f:3c                 dup 
  0240:35 00              ldi 0 
  0242:1a                 eq? 
  0243:31 0d              bnt code_0252 
  0245:39 03            pushi 3 // $3 y
  0247:78               push1 
  0248:38 010a          pushi 10a // $10a setRegions
  024b:39 0b            pushi b // $b nsBottom
  024d:45 01 06         callb procedure_0001 6 // Say 

  0250:33 46              jmp code_0298 

        code_0252
  0252:3c                 dup 
  0253:35 01              ldi 1 
  0255:1a                 eq? 
  0256:31 0d              bnt code_0265 
  0258:39 03            pushi 3 // $3 y
  025a:78               push1 
  025b:38 010a          pushi 10a // $10a setRegions
  025e:39 0c            pushi c // $c nsRight
  0260:45 01 06         callb procedure_0001 6 // Say 

  0263:33 33              jmp code_0298 

        code_0265
  0265:3c                 dup 
  0266:35 02              ldi 2 
  0268:1a                 eq? 
  0269:31 0d              bnt code_0278 
  026b:39 03            pushi 3 // $3 y
  026d:78               push1 
  026e:38 010a          pushi 10a // $10a setRegions
  0271:39 0d            pushi d // $d lsTop
  0273:45 01 06         callb procedure_0001 6 // Say 

  0276:33 20              jmp code_0298 

        code_0278
  0278:3c                 dup 
  0279:35 03              ldi 3 
  027b:1a                 eq? 
  027c:31 0e              bnt code_028c 
  027e:7a               push2 
  027f:38 010a          pushi 10a // $10a setRegions
  0282:39 0e            pushi e // $e lsLeft
  0284:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  028a:33 0c              jmp code_0298 

        code_028c
  028c:7a               push2 
  028d:38 010a          pushi 10a // $10a setRegions
  0290:39 0f            pushi f // $f lsBottom
  0292:46 00ff 0000 04  calle ff procedure_0000 4 // Print 


        code_0298
  0298:3a                toss 

        code_0299
  0299:c3 00              +al local0 

        code_029b
  029b:48                 ret 
    )

)

// 047c
(instance enter of Script
    (properties
        client $0
        state $ffff
        start $0
        timer $0
        cycles $0
        seconds $0
        lastSeconds $0
        register $0
        script $0
        caller $0
    )
    (method (changeState) // method_029c
  029c:87 01              lap param1 
  029e:65 0a             aTop state 
  02a0:36                push 
  02a1:3c                 dup 
  02a2:35 00              ldi 0 
  02a4:1a                 eq? 
  02a5:31 2f              bnt code_02d6 
  02a7:76               push0 
  02a8:45 03 00         callb procedure_0003 0 // HandsOff 

  02ab:38 00db          pushi db // $db onControl
  02ae:78               push1 
  02af:78               push1 
  02b0:81 00              lag gEgo 
  02b2:4a 06             send 6 

  02b4:36                push 
  02b5:35 01              ldi 1 
  02b7:12                 and 
  02b8:18                 not 
  02b9:31 14              bnt code_02cf 
  02bb:38 00d3          pushi d3 // $d3 setMotion
  02be:39 04            pushi 4 // $4 x
  02c0:51 1d            class MoveTo 
  02c2:36                push 
  02c3:38 00da          pushi da // $da inRect
  02c6:39 64            pushi 64 // $64 allTrue
  02c8:7c            pushSelf 
  02c9:81 00              lag gEgo 
  02cb:4a 0c             send c 

  02cd:33 04              jmp code_02d3 

        code_02cf
  02cf:35 01              ldi 1 
  02d1:65 10             aTop cycles 

        code_02d3
  02d3:32 00ba            jmp code_0390 

        code_02d6
  02d6:3c                 dup 
  02d7:35 01              ldi 1 
  02d9:1a                 eq? 
  02da:31 18              bnt code_02f4 
  02dc:39 06            pushi 6 // $6 loop
  02de:78               push1 
  02df:39 03            pushi 3 // $3 y
  02e1:39 07            pushi 7 // $7 cel
  02e3:78               push1 
  02e4:76               push0 
  02e5:39 7e            pushi 7e // $7e setCycle
  02e7:7a               push2 
  02e8:51 1a            class End 
  02ea:36                push 
  02eb:7c            pushSelf 
  02ec:72 01c3          lofsa $04b2 // Celie
  02ef:4a 14             send 14 

  02f1:32 009c            jmp code_0390 

        code_02f4
  02f4:3c                 dup 
  02f5:35 02              ldi 2 
  02f7:1a                 eq? 
  02f8:31 3c              bnt code_0336 
  02fa:39 06            pushi 6 // $6 loop
  02fc:78               push1 
  02fd:39 03            pushi 3 // $3 y
  02ff:81 00              lag gEgo 
  0301:4a 06             send 6 

  0303:38 00ca          pushi ca // $ca show
  0306:76               push0 
  0307:72 0210          lofsa $051a // chair
  030a:4a 04             send 4 

  030c:39 05            pushi 5 // $5 view
  030e:78               push1 
  030f:38 01e0          pushi 1e0 // $1e0 sel_480
  0312:38 00c5          pushi c5 // $c5 posn
  0315:7a               push2 
  0316:38 00fa          pushi fa // $fa restart
  0319:39 66            pushi 66 // $66 isEmpty
  031b:39 7e            pushi 7e // $7e setCycle
  031d:78               push1 
  031e:51 17            class Walk 
  0320:36                push 
  0321:38 00d3          pushi d3 // $d3 setMotion
  0324:39 04            pushi 4 // $4 x
  0326:51 1d            class MoveTo 
  0328:36                push 
  0329:38 00f0          pushi f0 // $f0 targetObj
  032c:39 61            pushi 61 // $61 add
  032e:7c            pushSelf 
  032f:72 0180          lofsa $04b2 // Celie
  0332:4a 20             send 20 

  0334:33 5a              jmp code_0390 

        code_0336
  0336:3c                 dup 
  0337:35 03              ldi 3 
  0339:1a                 eq? 
  033a:31 18              bnt code_0354 
  033c:7a               push2 
  033d:74 0172          lofss $04b2 // Celie
  0340:88 0175            lsg global373 
  0343:45 02 04         callb procedure_0002 4 // LookAt 

  0346:39 7e            pushi 7e // $7e setCycle
  0348:7a               push2 
  0349:51 1a            class End 
  034b:36                push 
  034c:7c            pushSelf 
  034d:80 0175            lag global373 
  0350:4a 08             send 8 

  0352:33 3c              jmp code_0390 

        code_0354
  0354:3c                 dup 
  0355:35 04              ldi 4 
  0357:1a                 eq? 
  0358:31 1e              bnt code_0378 
  035a:39 12            pushi 12 // $12 illegalBits
  035c:78               push1 
  035d:76               push0 
  035e:38 00c9          pushi c9 // $c9 ignoreActors
  0361:78               push1 
  0362:78               push1 
  0363:38 00d3          pushi d3 // $d3 setMotion
  0366:39 04            pushi 4 // $4 x
  0368:51 1d            class MoveTo 
  036a:36                push 
  036b:38 00f0          pushi f0 // $f0 targetObj
  036e:39 5b            pushi 5b // $5b perform
  0370:7c            pushSelf 
  0371:72 013e          lofsa $04b2 // Celie
  0374:4a 18             send 18 

  0376:33 18              jmp code_0390 

        code_0378
  0378:3c                 dup 
  0379:35 05              ldi 5 
  037b:1a                 eq? 
  037c:31 12              bnt code_0390 
  037e:38 00f8          pushi f8 // $f8 newRoom
  0381:78               push1 
  0382:39 3b            pushi 3b // $3b mover
  0384:81 02              lag gCurRoom 
  0386:4a 06             send 6 

  0388:39 7a            pushi 7a // $7a setScript
  038a:78               push1 
  038b:76               push0 
  038c:63 08             pToa client 
  038e:4a 06             send 6 


        code_0390
  0390:3a                toss 
  0391:48                 ret 
    )

)

// 04ac
(instance Celie of Act
    (properties
        y $66
        x $10e
        z $0
        heading $0
        yStep $2
        view $1e4
        loop $2
        cel $0
        priority $0
        underBits $0
        signal $0
        nsTop $0
        nsLeft $0
        nsBottom $0
        nsRight $0
        lsTop $0
        lsLeft $0
        lsBottom $0
        lsRight $0
        brTop $0
        brLeft $0
        brBottom $0
        brRight $0
        cycleSpeed $0
        script $0
        cycler $0
        timer $0
        illegalBits $8000
        xLast $0
        yLast $0
        xStep $3
        moveSpeed $0
        blocks $0
        baseSetter $0
        mover $0
        looper $0
        viewer $0
        avoider $0
    )
    (method (handleEvent) // method_0392
  0392:39 6f            pushi 6f // $6f handleEvent
  0394:78               push1 
  0395:8f 01              lsp param1 
  0397:57 28 06         super Act 6 

  039a:39 03            pushi 3 // $3 y
  039c:7c            pushSelf 
  039d:8f 01              lsp param1 
  039f:39 03            pushi 3 // $3 y
  03a1:46 00ff 0005 06  calle ff procedure_0005 6 // MousedOn 

  03a7:31 1a              bnt code_03c3 
  03a9:88 00cf            lsg global207 
  03ac:35 02              ldi 2 
  03ae:12                 and 
  03af:18                 not 
  03b0:31 11              bnt code_03c3 
  03b2:39 4c            pushi 4c // $4c claimed
  03b4:78               push1 
  03b5:78               push1 
  03b6:87 01              lap param1 
  03b8:4a 06             send 6 

  03ba:78               push1 
  03bb:74 01df          lofss $059d // celie
  03be:45 19 02         callb procedure_0019 2 // DoLook 

  03c1:33 34              jmp code_03f7 

        code_03c3
  03c3:88 00cf            lsg global207 
  03c6:35 02              ldi 2 
  03c8:12                 and 
  03c9:31 2c              bnt code_03f7 
  03cb:39 03            pushi 3 // $3 y
  03cd:7c            pushSelf 
  03ce:8f 01              lsp param1 
  03d0:39 03            pushi 3 // $3 y
  03d2:46 00ff 0005 06  calle ff procedure_0005 6 // MousedOn 

  03d8:2f 09               bt code_03e3 
  03da:78               push1 
  03db:74 002a          lofss $0408 // look/celie
  03de:43 25 02         callk Said 2 

  03e1:31 14              bnt code_03f7 

        code_03e3
  03e3:39 4c            pushi 4c // $4c claimed
  03e5:78               push1 
  03e6:78               push1 
  03e7:87 01              lap param1 
  03e9:4a 06             send 6 

  03eb:7a               push2 
  03ec:38 010a          pushi 10a // $10a setRegions
  03ef:39 10            pushi 10 // $10 lsRight
  03f1:46 00ff 0000 04  calle ff procedure_0000 4 // Print 


        code_03f7
  03f7:48                 ret 
    )

)

// 0514
(instance chair of Prop
    (properties
        y $66
        x $10e
        z $0
        heading $0
        yStep $2
        view $1e4
        loop $1
        cel $1
        priority $0
        underBits $0
        signal $0
        nsTop $0
        nsLeft $0
        nsBottom $0
        nsRight $0
        lsTop $0
        lsLeft $0
        lsBottom $0
        lsRight $0
        brTop $0
        brLeft $0
        brBottom $0
        brRight $0
        cycleSpeed $0
        script $0
        cycler $0
        timer $0
    )
)

// 0562
(instance myMusic of Sound
    (properties
        state $0
        number $0
        priority $0
        loop $1
        handle $0
        signal $0
        prevSignal $0
        client $0
        owner $0
    )
)



