(script 29)

(string
    string_05e2 "Room29"
    string_05e9 "owl"
    string_05ed "owlBody"
    string_05f5 "owlHead"
    string_05fd "star1"
    string_0603 "star2"
    string_0609 "twinkle"
    string_0611 ""
)

(said
    said_0396 /*/chouette
    said_039d /*<chouette
    said_03a4 /cabin,mansion
    said_03ab /gazebo
    said_03af /chouette
    said_03b3 /path
    said_03b7 [<around,at][/room]
    said_03c5 attraper,get/chouette
    said_03ce deliver,feed,hold>
    said_03d8 look/chouette
    said_03de look>
    said_03e2 bonjour/chouette
)

(local
    local0 = $0000
)

// 03ee
(instance public Room29 of Rm
    (properties
        script $0
        number $0
        timer $0
        keep $0
        initialized $0
        picture $1d
        style $ffff
        horizon $0
        controls $0
        north $0
        east $0
        south $0
        west $0
        curPic $0
        picAngle $0
        vanishingX $a0
        vanishingY $8ad0
        vertAngle $0
    )
    (method (init) // method_000c
  000c:35 54              ldi 54 
  000e:65 16             aTop horizon 
  0010:35 1e              ldi 1e 
  0012:65 1c             aTop east 
  0014:35 1c              ldi 1c 
  0016:65 20             aTop west 
  0018:35 17              ldi 17 
  001a:65 1a             aTop north 
  001c:39 57            pushi 57 // $57 init
  001e:76               push0 
  001f:57 37 04         super Rm 4 

  0022:80 00df            lag gDetailLevel 
  0025:31 3d              bnt code_0064 
  0027:39 7a            pushi 7a // $7a setScript
  0029:78               push1 
  002a:74 0447          lofss $0474 // owl
  002d:39 57            pushi 57 // $57 init
  002f:76               push0 
  0030:72 050d          lofsa $0540 // owlHead
  0033:4a 0a             send a 

  0035:39 57            pushi 57 // $57 init
  0037:76               push0 
  0038:38 00c6          pushi c6 // $c6 stopUpd
  003b:76               push0 
  003c:72 0553          lofsa $0592 // owlBody
  003f:4a 08             send 8 

  0041:38 00a4          pushi a4 // $a4 cycleSpeed
  0044:78               push1 
  0045:7a               push2 
  0046:39 7e            pushi 7e // $7e setCycle
  0048:78               push1 
  0049:51 16            class Fwd 
  004b:36                push 
  004c:39 57            pushi 57 // $57 init
  004e:76               push0 
  004f:72 0452          lofsa $04a4 // star1
  0052:4a 10             send 10 

  0054:39 57            pushi 57 // $57 init
  0056:76               push0 
  0057:39 7a            pushi 7a // $7a setScript
  0059:78               push1 
  005a:74 03e7          lofss $0444 // twinkle
  005d:72 0492          lofsa $04f2 // star2
  0060:4a 0a             send a 

  0062:33 1e              jmp code_0082 

        code_0064
  0064:39 57            pushi 57 // $57 init
  0066:76               push0 
  0067:38 00c6          pushi c6 // $c6 stopUpd
  006a:76               push0 
  006b:72 0524          lofsa $0592 // owlBody
  006e:4a 08             send 8 

  0070:39 06            pushi 6 // $6 loop
  0072:78               push1 
  0073:39 04            pushi 4 // $4 x
  0075:39 07            pushi 7 // $7 cel
  0077:78               push1 
  0078:7a               push2 
  0079:38 00cb          pushi cb // $cb addToPic
  007c:76               push0 
  007d:72 04c0          lofsa $0540 // owlHead
  0080:4a 10             send 10 


        code_0082
  0082:38 010a          pushi 10a // $10a setRegions
  0085:7a               push2 
  0086:38 00cf          pushi cf // $cf blocks
  0089:38 0195          pushi 195 // $195 sel_405
  008c:38 010b          pushi 10b // $10b setFeatures
  008f:78               push1 
  0090:74 04ff          lofss $0592 // owlBody
  0093:54 0e             self e 

  0095:88 00a5            lsg gAct 
  0098:35 03              ldi 3 
  009a:1a                 eq? 
  009b:31 10              bnt code_00ad 
  009d:89 73              lsg gJeevesChoresState 
  009f:35 06              ldi 6 
  00a1:22                 lt? 
  00a2:31 09              bnt code_00ad 
  00a4:38 010a          pushi 10a // $10a setRegions
  00a7:78               push1 
  00a8:38 00cb          pushi cb // $cb addToPic
  00ab:54 06             self 6 


        code_00ad
  00ad:89 0c              lsg gPrevRoomNum 
  00af:3c                 dup 
  00b0:35 17              ldi 17 
  00b2:1a                 eq? 
  00b3:31 0f              bnt code_00c4 
  00b5:38 00c5          pushi c5 // $c5 posn
  00b8:7a               push2 
  00b9:38 0097          pushi 97 // $97 open
  00bc:39 76            pushi 76 // $76 script
  00be:81 00              lag gEgo 
  00c0:4a 08             send 8 

  00c2:33 13              jmp code_00d7 

        code_00c4
  00c4:3c                 dup 
  00c5:35 18              ldi 18 
  00c7:1a                 eq? 
  00c8:31 0d              bnt code_00d7 
  00ca:38 00c5          pushi c5 // $c5 posn
  00cd:7a               push2 
  00ce:38 00ff          pushi ff // $ff checkAni
  00d1:39 7d            pushi 7d // $7d set
  00d3:81 00              lag gEgo 
  00d5:4a 08             send 8 


        code_00d7
  00d7:3a                toss 
  00d8:39 05            pushi 5 // $5 view
  00da:78               push1 
  00db:76               push0 
  00dc:39 12            pushi 12 // $12 illegalBits
  00de:78               push1 
  00df:38 8000          pushi 8000 // $8000 sel_32768
  00e2:39 57            pushi 57 // $57 init
  00e4:76               push0 
  00e5:81 00              lag gEgo 
  00e7:4a 10             send 10 

  00e9:76               push0 
  00ea:45 04 00         callb procedure_0004 0 // HandsOn 

  00ed:48                 ret 
    )

    (method (newRoom) // method_00ee
  00ee:38 00f8          pushi f8 // $f8 newRoom
  00f1:78               push1 
  00f2:8f 01              lsp param1 
  00f4:57 37 06         super Rm 6 

  00f7:48                 ret 
    )

    (method (doit) // method_00f8
  00f8:76               push0 
  00f9:45 14 00         callb procedure_0014 0 // IsFirstTimeInRoom 

  00fc:31 0a              bnt code_0108 
  00fe:7a               push2 
  00ff:39 1d            pushi 1d // $1d back
  0101:76               push0 
  0102:46 00ff 0000 04  calle ff procedure_0000 4 // Print 


        code_0108
  0108:38 00db          pushi db // $db onControl
  010b:78               push1 
  010c:76               push0 
  010d:81 00              lag gEgo 
  010f:4a 06             send 6 

  0111:36                push 
  0112:35 02              ldi 2 
  0114:12                 and 
  0115:31 0a              bnt code_0121 
  0117:38 00f8          pushi f8 // $f8 newRoom
  011a:78               push1 
  011b:39 17            pushi 17 // $17 name
  011d:81 02              lag gCurRoom 
  011f:4a 06             send 6 


        code_0121
  0121:38 00db          pushi db // $db onControl
  0124:78               push1 
  0125:76               push0 
  0126:81 00              lag gEgo 
  0128:4a 06             send 6 

  012a:36                push 
  012b:35 04              ldi 4 
  012d:12                 and 
  012e:31 0a              bnt code_013a 
  0130:38 00f8          pushi f8 // $f8 newRoom
  0133:78               push1 
  0134:39 18            pushi 18 // $18 key
  0136:81 02              lag gCurRoom 
  0138:4a 06             send 6 


        code_013a
  013a:39 3c            pushi 3c // $3c doit
  013c:76               push0 
  013d:57 37 04         super Rm 4 

  0140:48                 ret 
    )

    (method (dispose) // method_0141
  0141:39 58            pushi 58 // $58 dispose
  0143:76               push0 
  0144:57 37 04         super Rm 4 

  0147:48                 ret 
    )

    (method (handleEvent) // method_0148
  0148:39 4c            pushi 4c // $4c claimed
  014a:76               push0 
  014b:87 01              lap param1 
  014d:4a 04             send 4 

  014f:31 03              bnt code_0154 
  0151:35 01              ldi 1 
  0153:48                 ret 

        code_0154
  0154:39 22            pushi 22 // $22 type
  0156:76               push0 
  0157:87 01              lap param1 
  0159:4a 04             send 4 

  015b:36                push 
  015c:34 0080            ldi 80 
  015f:1a                 eq? 
  0160:31 5c              bnt code_01be 
  0162:78               push1 
  0163:74 0278          lofss $03de // look>
  0166:43 25 02         callk Said 2 

  0169:31 53              bnt code_01be 
  016b:78               push1 
  016c:74 0248          lofss $03b7 // [<around,at][/room]
  016f:43 25 02         callk Said 2 

  0172:31 0c              bnt code_0180 
  0174:7a               push2 
  0175:39 1d            pushi 1d // $1d back
  0177:76               push0 
  0178:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  017e:33 3e              jmp code_01be 

        code_0180
  0180:78               push1 
  0181:74 0220          lofss $03a4 // /cabin,mansion
  0184:43 25 02         callk Said 2 

  0187:31 0c              bnt code_0195 
  0189:7a               push2 
  018a:39 1d            pushi 1d // $1d back
  018c:78               push1 
  018d:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0193:33 29              jmp code_01be 

        code_0195
  0195:78               push1 
  0196:74 021a          lofss $03b3 // /path
  0199:43 25 02         callk Said 2 

  019c:31 0c              bnt code_01aa 
  019e:7a               push2 
  019f:39 1d            pushi 1d // $1d back
  01a1:7a               push2 
  01a2:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  01a8:33 14              jmp code_01be 

        code_01aa
  01aa:78               push1 
  01ab:74 01fd          lofss $03ab // /gazebo
  01ae:43 25 02         callk Said 2 

  01b1:31 0b              bnt code_01be 
  01b3:7a               push2 
  01b4:39 1d            pushi 1d // $1d back
  01b6:39 03            pushi 3 // $3 y
  01b8:46 00ff 0000 04  calle ff procedure_0000 4 // Print 


        code_01be
  01be:48                 ret 
    )

)

// 043e
(instance twinkle 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_01bf
  01bf:87 01              lap param1 
  01c1:65 0a             aTop state 
  01c3:36                push 
  01c4:3c                 dup 
  01c5:35 00              ldi 0 
  01c7:1a                 eq? 
  01c8:31 0e              bnt code_01d8 
  01ca:39 7e            pushi 7e // $7e setCycle
  01cc:7a               push2 
  01cd:51 1a            class End 
  01cf:36                push 
  01d0:7c            pushSelf 
  01d1:72 031e          lofsa $04f2 // star2
  01d4:4a 08             send 8 

  01d6:33 27              jmp code_01ff 

        code_01d8
  01d8:3c                 dup 
  01d9:35 01              ldi 1 
  01db:1a                 eq? 
  01dc:31 21              bnt code_01ff 
  01de:7a               push2 
  01df:78               push1 
  01e0:39 64            pushi 64 // $64 allTrue
  01e2:43 40 04         callk Random 4 

  01e5:36                push 
  01e6:35 23              ldi 23 
  01e8:22                 lt? 
  01e9:31 06              bnt code_01f1 
  01eb:35 ff              ldi ff 
  01ed:65 0a             aTop state 
  01ef:33 04              jmp code_01f5 

        code_01f1
  01f1:35 00              ldi 0 
  01f3:65 0a             aTop state 

        code_01f5
  01f5:7a               push2 
  01f6:39 07            pushi 7 // $7 cel
  01f8:39 0f            pushi f // $f lsBottom
  01fa:43 40 04         callk Random 4 

  01fd:65 12             aTop seconds 

        code_01ff
  01ff:3a                toss 
  0200:48                 ret 
    )

)

// 046e
(instance owl 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_0201
  0201:87 01              lap param1 
  0203:65 0a             aTop state 
  0205:36                push 
  0206:3c                 dup 
  0207:35 00              ldi 0 
  0209:1a                 eq? 
  020a:31 0c              bnt code_0218 
  020c:7a               push2 
  020d:7a               push2 
  020e:39 07            pushi 7 // $7 cel
  0210:43 40 04         callk Random 4 

  0213:65 12             aTop seconds 
  0215:32 00af            jmp code_02c7 

        code_0218
  0218:3c                 dup 
  0219:35 01              ldi 1 
  021b:1a                 eq? 
  021c:31 37              bnt code_0255 
  021e:39 07            pushi 7 // $7 cel
  0220:76               push0 
  0221:72 031c          lofsa $0540 // owlHead
  0224:4a 04             send 4 

  0226:36                push 
  0227:35 00              ldi 0 
  0229:1a                 eq? 
  022a:31 17              bnt code_0243 
  022c:39 7e            pushi 7e // $7e setCycle
  022e:7a               push2 
  022f:51 1a            class End 
  0231:36                push 
  0232:7c            pushSelf 
  0233:72 030a          lofsa $0540 // owlHead
  0236:4a 08             send 8 

  0238:7a               push2 
  0239:76               push0 
  023a:39 03            pushi 3 // $3 y
  023c:43 40 04         callk Random 4 

  023f:a3 00              sal local0 
  0241:33 10              jmp code_0253 

        code_0243
  0243:39 7e            pushi 7e // $7e setCycle
  0245:7a               push2 
  0246:51 1b            class Beg 
  0248:36                push 
  0249:7c            pushSelf 
  024a:72 02f3          lofsa $0540 // owlHead
  024d:4a 08             send 8 

  024f:35 ff              ldi ff 
  0251:65 0a             aTop state 

        code_0253
  0253:33 72              jmp code_02c7 

        code_0255
  0255:3c                 dup 
  0256:35 02              ldi 2 
  0258:1a                 eq? 
  0259:31 15              bnt code_0270 
  025b:83 00              lal local0 
  025d:31 06              bnt code_0265 
  025f:35 01              ldi 1 
  0261:65 10             aTop cycles 
  0263:33 09              jmp code_026e 

        code_0265
  0265:7a               push2 
  0266:7a               push2 
  0267:39 05            pushi 5 // $5 view
  0269:43 40 04         callk Random 4 

  026c:65 12             aTop seconds 

        code_026e
  026e:33 57              jmp code_02c7 

        code_0270
  0270:3c                 dup 
  0271:35 03              ldi 3 
  0273:1a                 eq? 
  0274:31 23              bnt code_0299 
  0276:83 00              lal local0 
  0278:31 15              bnt code_028f 
  027a:39 06            pushi 6 // $6 loop
  027c:78               push1 
  027d:39 04            pushi 4 // $4 x
  027f:72 02be          lofsa $0540 // owlHead
  0282:4a 06             send 6 

  0284:7a               push2 
  0285:7a               push2 
  0286:39 05            pushi 5 // $5 view
  0288:43 40 04         callk Random 4 

  028b:65 12             aTop seconds 
  028d:33 08              jmp code_0297 

        code_028f
  028f:35 00              ldi 0 
  0291:65 0a             aTop state 
  0293:35 01              ldi 1 
  0295:65 10             aTop cycles 

        code_0297
  0297:33 2e              jmp code_02c7 

        code_0299
  0299:3c                 dup 
  029a:35 04              ldi 4 
  029c:1a                 eq? 
  029d:31 10              bnt code_02af 
  029f:39 06            pushi 6 // $6 loop
  02a1:78               push1 
  02a2:39 03            pushi 3 // $3 y
  02a4:72 0299          lofsa $0540 // owlHead
  02a7:4a 06             send 6 

  02a9:35 05              ldi 5 
  02ab:65 10             aTop cycles 
  02ad:33 18              jmp code_02c7 

        code_02af
  02af:3c                 dup 
  02b0:35 05              ldi 5 
  02b2:1a                 eq? 
  02b3:31 12              bnt code_02c7 
  02b5:e3 00              -al local0 
  02b7:31 06              bnt code_02bf 
  02b9:35 02              ldi 2 
  02bb:65 0a             aTop state 
  02bd:33 04              jmp code_02c3 

        code_02bf
  02bf:35 00              ldi 0 
  02c1:65 0a             aTop state 

        code_02c3
  02c3:35 01              ldi 1 
  02c5:65 10             aTop cycles 

        code_02c7
  02c7:3a                toss 
  02c8:48                 ret 
    )

)

// 049e
(instance star1 of Prop
    (properties
        y $22
        x $126
        z $0
        heading $0
        yStep $2
        view $6b
        loop $1
        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
    )
)

// 04ec
(instance star2 of Prop
    (properties
        y $d
        x $75
        z $0
        heading $0
        yStep $2
        view $6b
        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
    )
)

// 053a
(instance owlHead of Prop
    (properties
        y $3a
        x $82
        z $0
        heading $0
        yStep $2
        view $7d
        loop $3
        cel $0
        priority $e
        underBits $0
        signal $10
        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 $2
        script $0
        cycler $0
        timer $0
    )
    (method (handleEvent) // method_02c9
  02c9:78               push1 
  02ca:74 0101          lofss $03ce // deliver,feed,hold>
  02cd:43 25 02         callk Said 2 

  02d0:31 45              bnt code_0317 
  02d2:78               push1 
  02d3:74 00c7          lofss $039d // /*<chouette
  02d6:43 25 02         callk Said 2 

  02d9:2f 12               bt code_02ed 
  02db:78               push1 
  02dc:74 00d0          lofss $03af // /chouette
  02df:43 25 02         callk Said 2 

  02e2:2f 09               bt code_02ed 
  02e4:78               push1 
  02e5:74 00ae          lofss $0396 // /*/chouette
  02e8:43 25 02         callk Said 2 

  02eb:31 28              bnt code_0315 

        code_02ed
  02ed:80 00db            lag global219 
  02f0:31 18              bnt code_030a 
  02f2:80 00e0            lag global224 
  02f5:31 0d              bnt code_0304 
  02f7:7a               push2 
  02f8:39 1d            pushi 1d // $1d back
  02fa:39 04            pushi 4 // $4 x
  02fc:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0302:33 04              jmp code_0308 

        code_0304
  0304:76               push0 
  0305:45 0d 00         callb procedure_000d 0 // DontHave 


        code_0308
  0308:33 0b              jmp code_0315 

        code_030a
  030a:7a               push2 
  030b:39 1d            pushi 1d // $1d back
  030d:39 04            pushi 4 // $4 x
  030f:46 00ff 0000 04  calle ff procedure_0000 4 // Print 


        code_0315
  0315:33 57              jmp code_036e 

        code_0317
  0317:78               push1 
  0318:74 00c7          lofss $03e2 // bonjour/chouette
  031b:43 25 02         callk Said 2 

  031e:31 0d              bnt code_032d 
  0320:7a               push2 
  0321:39 1d            pushi 1d // $1d back
  0323:39 05            pushi 5 // $5 view
  0325:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  032b:33 41              jmp code_036e 

        code_032d
  032d:78               push1 
  032e:74 0094          lofss $03c5 // attraper,get/chouette
  0331:43 25 02         callk Said 2 

  0334:31 0d              bnt code_0343 
  0336:7a               push2 
  0337:39 1d            pushi 1d // $1d back
  0339:39 06            pushi 6 // $6 loop
  033b:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0341:33 2b              jmp code_036e 

        code_0343
  0343:39 03            pushi 3 // $3 y
  0345:7c            pushSelf 
  0346:8f 01              lsp param1 
  0348:39 03            pushi 3 // $3 y
  034a:46 00ff 0005 06  calle ff procedure_0005 6 // MousedOn 

  0350:2f 09               bt code_035b 
  0352:78               push1 
  0353:74 0082          lofss $03d8 // look/chouette
  0356:43 25 02         callk Said 2 

  0359:31 13              bnt code_036e 

        code_035b
  035b:7a               push2 
  035c:39 1d            pushi 1d // $1d back
  035e:39 07            pushi 7 // $7 cel
  0360:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0366:39 4c            pushi 4c // $4c claimed
  0368:78               push1 
  0369:78               push1 
  036a:87 01              lap param1 
  036c:4a 06             send 6 


        code_036e
  036e:48                 ret 
    )

)

// 058c
(instance owlBody of Prop
    (properties
        y $52
        x $7a
        z $0
        heading $0
        yStep $2
        view $7d
        loop $4
        cel $1
        priority $f
        underBits $0
        signal $10
        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
    )
    (method (handleEvent) // method_036f
  036f:39 03            pushi 3 // $3 y
  0371:7c            pushSelf 
  0372:8f 01              lsp param1 
  0374:39 03            pushi 3 // $3 y
  0376:46 00ff 0005 06  calle ff procedure_0005 6 // MousedOn 

  037c:31 13              bnt code_0391 
  037e:7a               push2 
  037f:39 1d            pushi 1d // $1d back
  0381:39 07            pushi 7 // $7 cel
  0383:46 00ff 0000 04  calle ff procedure_0000 4 // Print 

  0389:39 4c            pushi 4c // $4c claimed
  038b:78               push1 
  038c:78               push1 
  038d:87 01              lap param1 
  038f:4a 06             send 6 


        code_0391
  0391:48                 ret 
    )

)



