fb:porticula NoPaste
10.2: Scrolling
Uploader: | nemored |
Datum/Zeit: | 29.10.2011 00:43:40 |
Hinweis: Dieser Quelltext ist Bestandteil des Projekts OpenBook: 2D-Spieleprogrammierung, zu dem es auf FreeBASIC-Portal.de eine Projektseite gibt.
' *** CODE 10.2: Scrolling
SCREENRES 200, 200, 32
SETMOUSE 100, 100,, 1
DIM bild AS ANY PTR, datei AS STRING = "meinBild.bmp"
DIM AS INTEGER breit, hoch, dateinr
DIM AS INTEGER posX = 0, posY = 0, mausX, mausY, mausButton
' Bildgroesse (Breite und Hoehe) auslesen
dateinr = FREEFILE
OPEN datei FOR BINARY AS #dateinr
GET #dateinr, 19, breit
GET #dateinr, 23, hoch
CLOSE #dateinr
' Bildpuffer erstellen und Bild laden
bild = IMAGECREATE(breit, hoch)
BLOAD datei, bild
PUT (0, 0), bild, (posX, posY)-STEP(199, 199), PSET
DO
GETMOUSE mausX, mausY,, mausButton
' Verschiebungen durchfuehren
IF mausX < 10 AND posX > 0 THEN ' nach links schieben
posX -= 1 : PUT (0, 0), bild, (posX, posY)-STEP(199, 199), PSET
END IF
IF mausY < 10 AND posY > 0 THEN ' nach oben schieben
posY -= 1 : PUT (0, 0), bild, (posX, posY)-STEP(199, 199), PSET
END IF
IF mausX > 190 AND posX < breit-200 THEN ' nach rechts schieben
posX += 1 : PUT (0, 0), bild, (posX, posY)-STEP(199, 199), PSET
END IF
IF mausY > 190 AND posY < hoch-200 THEN ' nach unten schieben
posY += 1 : PUT (0, 0), bild, (posX, posY)-STEP(199, 199), PSET
END IF
SLEEP 1
LOOP UNTIL mausButton > 0
IMAGEDESTROY bild