[EMAIL PROTECTED] wrote:

> Towards Christmas
>
> Hello,
> just in case you need it, here is a Christmas thing that uses the 2.2 console (ahem).
>
> Happy new year to Rebol Tech. and all others ML people.

Hi,

very nice, just doesn't work here :-) so, I played a little bit with a console 
functionality consulting with
notes.html file, and dared to change your script a little bit. See below ...

Cheers,

-pekr-

>
>
> Ciao,
> Daniele.
>
> REBOL [
>     Title: "REBOL Christmas"
>     Author: "Daniele Forsi"
>     Email: [EMAIL PROTECTED]
>     Date: 17-Dec-1999
>     Needs: 2.2
>     Comment: "Needs some polishing"
> ]
>
> levels: 5    ; change this for overall size
>
> dup: func [ s [string!] n [integer!] /local i r ] [ r: copy "" i: 0 while [ i <= n ] 
>[ i: i + 1 append r s ] r ]
>
> light: []
>
> first-branch: 1
> prin [ "^(page)^(9B)0 p" ]
>

; you seem to ommit (^1B)[ sequence, which tells the console escape chars will follow 
...
prin [ "^(page)^(1B)[0P" ]   ; what was 0 p supposed to do???



> print rejoin [ dup " " levels * 2 - first-branch "X===" ]
> line: 1
> for level 2 levels 1 [
>     for branch first-branch level * 2 - 1 1 [
>         print rejoin [ dup " " levels * 2 - branch rejoin array/initial branch * 2 - 
>1 "*" ]
>         line: line + 1
>     ]
>     print rejoin [ dup " " (levels - level) * 2 - 1 rejoin [ "o" rejoin 
>array/initial level * 4 - 1 "*" "o" ] ]
>     line: line + 1
>     append light reduce [ line (levels - level) * 2 + 1 level * 4 ]
>     first-branch: level * 2 - 1
> ]
> for level 2 levels 1 [
>     print rejoin [ dup " " levels * 2 - 2 "###" ]
> ]
> print "REBOL Christmas to everybody"
> print "by Daniele Forsi ([EMAIL PROTECTED])"
> print "(press any key to stop)"
>
> lamp: "o"
> until [
>     wait random 4
>     light: head light
>     lamp: either lamp == "o" [ "O" ] [ "o" ]
>     foreach [ line row1 offset ] light [
>         prin rejoin ["^(9B)" line ";" row1 "H" lamp ]
>         prin rejoin ["^(9B)" line ";" row1 + offset "H" lamp ]
>

        prin rejoin ["^(1B)[" line ";" row1 "H" lamp ]
        prin rejoin ["^(1B)[" line ";" row1 + offset "H" lamp ]


>     ]
>    input?
> ]
> prin [ "^(9B) p" ]

prin [ "^(1B)[J" ]  ; or ... ?

>
> ;eof

Reply via email to