Immer noch Frontbuffer
Übersicht

![]() |
NoobyBetreff: Immer noch Frontbuffer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da mir in meinem alten Thema keiner mehr antwortet mach ich halt ein neues auf.
Ich habe immer noch mein Snake-Problem. Ich zeige hier mal den Code, an dem ich gerade bastle: Code: [AUSKLAPPEN] Graphics 1024,768,32,1
SetBuffer BackBuffer() Cls Dim wurm(2,2) Dim feld(1024,700) Dim richtung(2) Dim crash(2) Dim wurmfeld(1024*700,2) richtung(1)=2 richtung(2)=4 wurm(1,1)=512 wurm(1,2)=350 wurm(2,1)=512 wurm(2,2)=350 feld(wurm(1,1),wurm(1,2))=1 feld(wurm(2,1),wurm(2,2))=1 Color 255,100,100 Rect wurm(1,1),wurm(1,2),2,2 Color 100,100,255 Rect wurm(2,1),wurm(2,2),2,2 Repeat ; Cls Delay 10 ; CopyRect 0,0,1024,700,0,0,FrontBuffer(),BackBuffer() If KeyDown(203) And richtung(1)<>2 richtung(1)=4 ElseIf KeyDown(205) And richtung(1)<>4 richtung(1)=2 ElseIf KeyDown(200) And richtung(1)<>3 richtung(1)=1 ElseIf KeyDown(208) And richtung(1)<>1 richtung(1)=3 EndIf If KeyDown(30) And richtung(2)<>2 richtung(2)=4 ElseIf KeyDown(31) And richtung(2)<>1 richtung(2)=3 ElseIf KeyDown(17) And richtung(2)<>3 richtung(2)=1 ElseIf KeyDown(32) And richtung(2)<>4 richtung(2)=2 EndIf crash(1)=0 crash(2)=0 For a=1 To 2 If richtung(a)=1 wurm(a,2)= wurm(a,2)-2 ElseIf richtung(a)=2 wurm(a,1)= wurm(a,1)+2 ElseIf richtung(a)=3 wurm(a,2)= wurm(a,2)+2 ElseIf richtung(a)=4 wurm(a,1)= wurm(a,1)-2 EndIf Next For a=1 To 2 If feld(wurm(a,1),wurm(a,2))=1 Then crash(a)=True Next If crash(1) And crash(2) Text wurm(1,1),wurm(1,2),"ultracrash" Text wurm(2,1),wurm(2,2),"ultracrash" ElseIf crash(1) Text wurm(1,1),wurm(1,2),"crash1" ElseIf crash(2) Text wurm(2,1),wurm(2,2),"crash2" EndIf Color 255,100,100 Rect wurm(1,1),wurm(1,2),2,2 Color 100,100,255 Rect wurm(2,1),wurm(2,2),2,2 feld(wurm(1,1),wurm(1,2))=1 feld(wurm(2,1),wurm(2,2))=1 Flip Until KeyHit(1) End Das Problem ist nun, dass die Schlangen nicht gepunktet sein sollen. Ich hab schon alles Versucht, aber ich kriegs nich hin. Und da bei BlitzPlus das mit nur Frontbuffer irgendwie nich geht und jeden einzelnen punkt der Schlange zu speichern zu viel speicher braucht (das Programm wird zu lahm. Zumindest bei mir) brauche ich dringend Hilfe. |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
![]() |
d-bug |
![]() Antworten mit Zitat ![]() |
---|---|---|
gaaaaanz einfach !!!
bei der Stelle das ql:Backbuffer: Code: [AUSKLAPPEN] Graphics 1024,768,32,1
SetBuffer BackBuffer() gegen ql:FrontBuffer tauschen Code: [AUSKLAPPEN] Graphics 1024,768,32,1
SetBuffer FrontBuffer() und hier Code: [AUSKLAPPEN] Flip
Until KeyHit(1) End das ql:Flip auskommentieren Code: [AUSKLAPPEN] ;Flip
Until KeyHit(1) End et voila |
||
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: gaaaaanz einfach !!!
außer bei Blitz Plus Bei BlitzPlus kannst du nicht auf den Frontbuffer zugreifen! |
||
[BB2D | BB3D | BB+]
|
![]() |
RallimenSieger des 30-EUR-Wettbewerbs |
![]() Antworten mit Zitat ![]() |
---|---|---|
In deinem Fall gibt es eine einfache Lösung!
einen imagebuffer auf dem gemalt wird, und dann auf den BACKBUFFER eingezeichnet wird! habs mal schnell eingebaut! Code: [AUSKLAPPEN] Graphics 1024,768,32,1
SetBuffer BackBuffer() ;###################################### Bufferimage = CreateImage (1024,768) ;###################################### Cls Dim wurm(2,2) Dim feld(1024,700) Dim richtung(2) Dim crash(2) Dim wurmfeld(1024*700,2) richtung(1)=2 richtung(2)=4 wurm(1,1)=512 wurm(1,2)=350 wurm(2,1)=512 wurm(2,2)=350 feld(wurm(1,1),wurm(1,2))=1 feld(wurm(2,1),wurm(2,2))=1 Color 255,100,100 Rect wurm(1,1),wurm(1,2),2,2 Color 100,100,255 Rect wurm(2,1),wurm(2,2),2,2 ;###################################### SetBuffer ImageBuffer (Bufferimage) ;###################################### Repeat ; Cls Delay 10 ; If KeyDown(203) And richtung(1)<>2 richtung(1)=4 ElseIf KeyDown(205) And richtung(1)<>4 richtung(1)=2 ElseIf KeyDown(200) And richtung(1)<>3 richtung(1)=1 ElseIf KeyDown(208) And richtung(1)<>1 richtung(1)=3 EndIf If KeyDown(30) And richtung(2)<>2 richtung(2)=4 ElseIf KeyDown(31) And richtung(2)<>1 richtung(2)=3 ElseIf KeyDown(17) And richtung(2)<>3 richtung(2)=1 ElseIf KeyDown(32) And richtung(2)<>4 richtung(2)=2 EndIf crash(1)=0 crash(2)=0 For a=1 To 2 If richtung(a)=1 wurm(a,2)= wurm(a,2)-2 ElseIf richtung(a)=2 wurm(a,1)= wurm(a,1)+2 ElseIf richtung(a)=3 wurm(a,2)= wurm(a,2)+2 ElseIf richtung(a)=4 wurm(a,1)= wurm(a,1)-2 EndIf Next For a=1 To 2 If feld(wurm(a,1),wurm(a,2))=1 Then crash(a)=True Next If crash(1) And crash(2) Text wurm(1,1),wurm(1,2),"ultracrash" Text wurm(2,1),wurm(2,2),"ultracrash" ElseIf crash(1) Text wurm(1,1),wurm(1,2),"crash1" ElseIf crash(2) Text wurm(2,1),wurm(2,2),"crash2" EndIf Color 255,100,100 Rect wurm(1,1),wurm(1,2),2,2 Color 100,100,255 Rect wurm(2,1),wurm(2,2),2,2 feld(wurm(1,1),wurm(1,2))=1 feld(wurm(2,1),wurm(2,2))=1 ;################################# CopyRect 0,0,1024,700,0,0,ImageBuffer (Bufferimage),BackBuffer() ;################################# Flip Until KeyHit(1) End Die Stellen sind markiert! |
||
[BB2D | BB3D | BB+]
|
![]() |
d-bug |
![]() Antworten mit Zitat ![]() |
---|---|---|
Da sieht mans mal wieder!
Der d:bug hat noch nie BlitzPlus besessen ![]() Streichen wir diesen Beitrag und schämen uns dafür ![]() |
||
Burnser |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
sorry falsches topic -.-" | ||
![]() |
Nooby |
![]() Antworten mit Zitat ![]() |
---|---|---|
das is ja ganz schön und gut, nur isses - zumindest bei mir - vieeeel zu lahm. ![]() |
||
DAS PERPETUOMOBILE!!!
http://www.sax.de/~stalker/pad/199801/ |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group