1 |
james |
28 |
REM > RandWalk |
2 |
|
|
|
3 |
|
|
ON ERROR ON ERROR OFF: OSCLI"ScreenSave RandImage": REPORT: PRINT "("+STR$ERL+")": END |
4 |
|
|
|
5 |
|
|
MODE MODE |
6 |
|
|
OFF |
7 |
|
|
|
8 |
|
|
s% = 2 |
9 |
|
|
|
10 |
|
|
x% = 400 |
11 |
|
|
y% = 300 |
12 |
|
|
|
13 |
|
|
b% = &FF |
14 |
|
|
g% = &FF |
15 |
|
|
r% = &FF |
16 |
|
|
|
17 |
|
|
REPEAT |
18 |
|
|
REM ColourTrans_SetGCOL (3-351) |
19 |
|
|
SYS &40743, (b% << 24) + (g% << 16) + (r% << 8) |
20 |
|
|
CIRCLE FILL x% * 2, y% * 2, 4 |
21 |
|
|
|
22 |
|
|
CASE RND(8) OF |
23 |
|
|
WHEN 1: y% += s% |
24 |
|
|
WHEN 2: x% += s%: y% += s% |
25 |
|
|
WHEN 3: x% += s% |
26 |
|
|
WHEN 4: x% += s%: y% -= s% |
27 |
|
|
WHEN 5: y% -= s% |
28 |
|
|
WHEN 6: x% -= s%: y% -= s% |
29 |
|
|
WHEN 7: x% -= s% |
30 |
|
|
WHEN 8: x% -= s%: y% += s% |
31 |
|
|
ENDCASE |
32 |
|
|
IF x% < 0 THEN x% = 800 |
33 |
|
|
IF y% < 0 THEN y% = 600 |
34 |
|
|
IF x% > 800 THEN x% = 0 |
35 |
|
|
IF y% > 600 THEN y% = 0 |
36 |
|
|
|
37 |
|
|
IF RND(2) = 1 THEN c% = 4 ELSE c% = -4 |
38 |
|
|
CASE RND(3) OF |
39 |
|
|
WHEN 1: b% += c% |
40 |
|
|
WHEN 2: g% += c% |
41 |
|
|
WHEN 3: r% += c% |
42 |
|
|
ENDCASE |
43 |
|
|
IF b% < 0 THEN b% = 0 |
44 |
|
|
IF g% < 0 THEN g% = 0 |
45 |
|
|
IF r% < 0 THEN r% = 0 |
46 |
|
|
IF b% > &FF THEN b% = &FF |
47 |
|
|
IF g% > &FF THEN g% = &FF |
48 |
|
|
IF r% > &FF THEN r% = &FF |
49 |
|
|
|
50 |
|
|
UNTIL 0 |
51 |
|
|
|