Tämän koodinpätkän pitäisi vääristää näyttöä siten, että vaikuttaa, kuin kuva olisi veden alta. Ohjelma piirtää ensin (melko tökerön) vedenalaisen maiseman, ja sitten värisyttää sitä "virtausten" mukaan, kunnes painetaan Esciä.
SCREEN 13
'maaston piirtäminen
'-------------------
'teksti
LOCATE 3, 10: PRINT "Veden alla -efekti"
LOCATE 5, 9: PRINT "(C) Antti Laaksonen"
'vesi
PAINT (1, 1), 1, 15
'hiekka
FOR i = 190 TO 199
FOR j = 1 TO 320
PSET (j, i), INT(RND * 6) + 137
NEXT
NEXT
'vesikasvi
LINE (250, 1)-(250, 195), 10
'kalat
FOR h = 50 TO 170 STEP 5
kx = INT(RND * 170) + 20
ky = h
GOSUB piirrakala
NEXT
GOTO piirretty
'piirtää yksittäisen kalan datan perusteella
piirrakala:
RESTORE kala
ks = SGN(INT(RND * 20) - 10)
FOR i = 1 TO 3
FOR j = 1 TO 7
READ v
PSET (kx + j * ks, ky + i * ks), v
NEXT
NEXT
RETURN
piirretty:
'efekti
DIM vesiosa(200) AS INTEGER
asuunta = -3
asuuntas = 1
DO
suunta = asuunta
FOR i = 1 TO 199
IF i MOD 2 = 0 THEN
kohta = kohta + suunta
END IF
IF kohta < 0 THEN
GET (ABS(kohta), i)-(320, i), vesiosa
PUT (0, i), vesiosa, PSET
ELSEIF kohta > 0 THEN
GET (0, i)-(319 - kohta, i), vesiosa
PUT (kohta, i), vesiosa, PSET
ELSE
GET (0, i)-(319, i), vesiosa
PUT (0, i), vesiosa, PSET
END IF
IF kohta > 3 THEN
suunta = -1
ELSEIF kohta < -3 THEN
suunta = 1
END IF
NEXT
WAIT &H3DA, 8
IF INKEY$ = CHR$(27) THEN END
asuunta = asuunta + asuuntas
IF asuunta > 3 THEN
asuuntas = -1
ELSEIF asuunta < -3 THEN
asuuntas = 1
END IF
LOOP
'kalan kuva datana
kala:
DATA 1,0,0,0,0,1,0
DATA 0,5,5,5,0,0,5
DATA 1,0,0,0,0,1,0joo hieno
Todella hyvä mielestäni!
Hieno.. Tosi hieno
Saako käyttää omissa ohjelmissa?
Siitä vain..
Muuten ihan hieno, mutta sivussa oleva kasvi "paloittuu".
... Ja mukana myös osa tekstiä.
Tosi Tosi Tosi HIENO!!!!!!!
:) :)
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
HIENOOOOO!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
JOS KÄYTTÄÄ OMASSA OHJELMASSA, HAITTAAKO JOS POISTAA SUN COPYRIGHT-TEKSTIT?
EDIT: sori, jäi ISOT kirjaimet qbasicista päälle.
EDIT2: WOWW! siis super hiaano!
Hieno, mutta vähän enemmän katseltavaa veden alle. Kalat voisivat myöskin olla hieman isompia.
Tosi hienooooooooooo!!! |-)
ihan hyvä.
Aihe on jo aika vanha, joten et voi enää vastata siihen.