Raster

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

M2M

Betreff: Raster

BeitragSo, März 04, 2007 0:05
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute,
ich arbeite zur Zeit an meinem ersten kompletten BlitzBasic Spiel und bin auch schon sehr gut voran gekommen.
Ich habe ein kleines Problem, was eher ein Schönheitsfehler ist:
http://img375.imageshack.us/my...ildpq2.png
Und zwar sollen die Bomben die ich mit
Code: [AUSKLAPPEN]

DrawImage bmpBombe,Bombe(R,1),Bombe(R,2),Bombe(R,3)

erzeuge, in einem 35 x 35 Pixel Raster erscheinen. Also die sollen praktisch wenn sie erzeugt werden, an dieses Raster "springen".
Vielen Dank euch Wink

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragSo, März 04, 2007 0:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Meinst du etwa so?
Code: [AUSKLAPPEN]
For x= 0 To 15
    For y = 0 To 15
        Rect x*35,y*35,34,34,0
        DrawImage bmpBombe,Bombe(R,1)+x*35,Bombe(R,2)+y*35,Bombe(R,3)
    Next
Next
[BB2D | BB3D | BB+]

M2M

BeitragSo, März 04, 2007 1:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, das meinte ich nicht Razz
Ich meine es so wie zB in einem Mapeditor, das man die Objekte, die man erstellt, nicht einfach dort gezeichnet werden, wo die Maus ist, sondern sich an einem Raster ausrichten. Ich wollte nicht wie in deinem Beispiel das überall Bomben angezeigt werden. Vielleicht verstehe ich es auch falsch.

Danke trotzdem Wink

Gameprogman

BeitragSo, März 04, 2007 1:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Teile die Mauskoordinaten durch die Rastergröße.
Wenn die Rastergröße 40*40 Pixel sein soll:
Code: [AUSKLAPPEN]

Rasterxpos=mousex()/40
Rasterypos=mousey()/40


Blitzbasic rundet das dann Automatisch auf.

Wenn mousex also 50 ist dann ist Rasterxpos=2
Dann musst du die Bombe auf Rasterxpos (also 2) mal 40 malen.

Ich hoffe du hast das jetzt verstanden... Razz
www.bandradr.de ! Awesome !
  • Zuletzt bearbeitet von Gameprogman am So, März 04, 2007 12:54, insgesamt einmal bearbeitet

Gameprogman

BeitragSo, März 04, 2007 1:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Edit:
Hab mal schnell nen Klick-Editor gemacht. Ich hoffe du verstehst in:

Code: [AUSKLAPPEN]

Graphics 640,480,0,2
SetBuffer BackBuffer()

Dim map(30,30)   ;die Karte


Repeat    ;die Haupschleife
Cls

RPosX=MouseX()/40    ; Die RasterX Koordinate ermitteln
RPosY=MouseY()/40    ; Die RasterY Koordinate ermitteln

If MouseDown(1) Then map(RPosX,RPosY)=1

For x=0 To 30   ;alle X Werte durchgehen
 For y=0 To 30   ;Alle Y Werte durchgehen
   If map(x,y)=1 Then Rect x*40, y*40, 40, 40, 1   ;Ein rechteck erstellen; an x*40; da durch 40 geteilt wurde und aus y*40 aus demselben Grund
   Rect x*40,y*40,40,40,0    ;ein rastergitter zeichnen
 Next
Next

Flip
Until KeyHit(1)
www.bandradr.de ! Awesome !

M2M

BeitragSo, März 04, 2007 2:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Na damit kann ich doch was anfangen, danke Very Happy
Ja und ich versteh es, hatte anfangs noch ein wenig Probleme mit Dims und so, aber mittlerweile hab ich es ganz gut im Griff.

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group