Miten saa tehtyä kaksoispuskuroinnin uglläs?
Mä kyllä tierän miten saa vaihrettua muistisivuja mutta se kuitenki välkkyy.
Ja sorsa:
DECLARE SUB PiirraLevu () '$INCLUDE: 'ugl\inc\ugl.bi' '$INCLUDE: 'ugl\inc\kbd.bi' '$STATIC DIM SHARED v AS LONG, a AS INTEGER DIM SHARED tile(10) AS LONG 'tilemuuttuja DIM x AS INTEGER, y AS INTEGER: DIM SHARED k(20, 10) AS INTEGER DIM SHARED sx AS INTEGER DIM SHARED wp AS INTEGER, vp AS INTEGER DIM kbd AS TKBD'nppinhandleri ON ERROR GOTO virhe v = uglInit v = uglSetVideoDC(UGL.16BIT, 320, 240, 2) uglSetVisPage 1 a = uglPutBMP(v, 0, 0, "ts\squiral.bmp") uglSetVisPage 0 SLEEP a = uglPutBMP(v, 0, 0, "ts\sqtile.bmp") tile(1) = uglNew(UGL.MEM, UGL.16BIT, 32, 32) ' tile(2) = uglNew(UGL.MEM, UGL.16BIT, 32, 32) 'luodaan paikat tilej varten tile(3) = uglNew(UGL.MEM, UGL.16BIT, 32, 32) ' uglGet v, 32, 0, tile(2) 'GETataan uglGet v, 0, 0, tile(3) 'tilet uglGet v, 64, 64, tile(1)' uglClear v, 0 x = 0: y = 0: sx = 0 wp = 0: vp = 1 kbdInit kbd 'nppinhandleri 'uglPut v, 100, 100, r 'uglHLine v, 0, 220, 320, 255 FOR q = 0 TO 6 FOR w = 0 TO 19 READ k(w, q) NEXT w, q 'SLEEP 'pluuppi DO uglClear v, 0 a = uglPutBMP(v, x, y, "ts\tso1.bmp") PiirraLevu IF kbd.left THEN x = x - 1 IF kbd.right THEN x = x + 1 IF kbd.rshift AND i = 0 THEN h = 120: i = 1 IF kbd.left AND kbd.ctrl THEN x = x - 2 IF kbd.right AND kbd.ctrl THEN x = x + 2 IF h > 0 THEN y = y - 1 h = h - 1 ELSEIF uglPGet(v, x + 38, y + 62) = 0 THEN y = y + 1: i = 1 ELSE i = 0 END IF LOOP UNTIL kbd.esc kbdEnd uglRestore uglEnd END virhe: kbdEnd SLEEP: uglRestore COLOR 4: PRINT "ERROR" uglEnd END DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 DATA 1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0 DATA 1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 DATA 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 SUB PiirraLevu DIM q AS INTEGER, w AS INTEGER FOR q = 0 TO 10 FOR w = 0 TO 20 SELECT CASE k(w, q) CASE 1: uglPut v, w * 32, (q * 32) - sx, tile(1) 'CASE 0: uglPut v, w * 32, (q * 32) - sx, tile(2) END SELECT NEXT w, q END SUB
ja tarvittavat tiedostot tästä. tuo paketti on rarilla tehty exe. purkaa se ts kansioon(tai muuta sorsaa).
Tuo paketti on sitte komentorivisysteemi(cdeetät ts kansioon ja purkaat). Siis se UGLlän esimerkkikaksoispuskurointisysteemi(aika pitkä sana) ei toimi tuos.
Selkis jo. Vika oli siinä että ukkelin kuva ladattiin joka kierroksella.
Aihe on jo aika vanha, joten et voi enää vastata siihen.