Tämä on QBasic-versio kauan sitten kirjoittamastani Kirjainten järjestely -efektistä VB:lle. Ohjelma siis tekee vaikkapa pelin alkuun sopivan efektin, jossa kirjaimet ensin sekoitetaan ympäri ruutua, ja sitten järjestetään oikeisiin paikkoihin animaation kera.
'muuttujatyyppi kirjaimille TYPE tkirjain kirjain AS STRING * 1 ax AS INTEGER ay AS INTEGER nx AS SINGLE ny AS SINGLE askelx AS SINGLE askely AS SINGLE END TYPE CLS 'tekstin asetukset x% = 10 y% = 5 vari% = 9 teksti$ = "Ohjelmointiputka - QB, VB & PHP - www.ohjelmointiputka.net" pykalat% = 15 'mitä suurempi, sen hitaampi animaatio REDIM kirjain(LEN(teksti$)) AS tkirjain 'oikeat paikat (ax, ay), sekoitetut paikat (nx, ny) ja paikkojen 'välinen askel (askelx, askely) COLOR vari% RANDOMIZE TIMER FOR i = 1 TO LEN(teksti$) kirjain(i).kirjain = MID$(teksti$, i, 1) kirjain(i).ax = x% + (i - 1) kirjain(i).ay = y% kirjain(i).nx = INT(RND * 80) + 1 kirjain(i).ny = INT(RND * 23) + 1 kirjain(i).askelx = (kirjain(i).nx - kirjain(i).ax) / pykalat% kirjain(i).askely = (kirjain(i).ny - kirjain(i).ay) / pykalat% LOCATE kirjain(i).ny, kirjain(i).nx: PRINT kirjain(i).kirjain NEXT 'odotetaan näppäimenpainallusta SLEEP '[pykalat%] pykälän animaatio FOR j = 1 TO pykalat% FOR i = 1 TO LEN(teksti$) 'poistetaan vanha merkki LOCATE kirjain(i).ny, kirjain(i).nx: PRINT " " 'uuden paikan laskeminen kirjain(i).nx = kirjain(i).nx - kirjain(i).askelx kirjain(i).ny = kirjain(i).ny - kirjain(i).askely 'piirretään uusi merkki LOCATE kirjain(i).ny, kirjain(i).nx: PRINT kirjain(i).kirjain NEXT 'hidaste WAIT &H3DA, 8 NEXT 'tulostetaan vielä koko teksti, jotta kaikki kirjaimet 'näkyvät varmasti LOCATE y%, x%: PRINT teksti$
Kiva
Hieno. Hieman pätkii tossa järjestely vaiheessa.
Aihe on jo aika vanha, joten et voi enää vastata siihen.