glaub hier sollte noch n forum für absolut unwissende sein
Übersicht

![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich denke das mit Select-Case verstehst du noch nicht ganz:
Also, man selektiert eine Variable, die irgendeinen Wert hat (select). Jetzt kann man bei jedem Case angeben mit was die Variable verglichen werden soll. Wenn beide zum Beispiel 10 sind, dann wird der darauffolgende Codeteil durchgearbeitet. Wenn das geschehen ist geht das Programm nach End Select weiter. zu deinem Fall: Du willst, das der Code ausgeführt wird, wenn hoch/... 1 sind. Also kannst du Select 1 machen. Auch musst du zuerst die Schrägen abfragen machen, weil sonst immer nur die Geraden berücksichtigt werden (Siehe Fettes). cu simi |
||
![]() |
Die Wurst |
![]() Antworten mit Zitat ![]() |
---|---|---|
hab mir grad keydown nochmal angeguckt... mir war net klar, dass der funktion keydown wenn sie true ist der wert 1 zugewiesen wird... alles klar *sich selbst auf den hinterkopf schlag...*
hab jetz glaub ich auch das prob mit dem schräg laufen gelöst... nur warscheinl. viel zu umständlich Code: [AUSKLAPPEN] Graphics 640,480,16,1
SetBuffer BackBuffer() ;TASTENBEFEHLE Const esc = 1 Const leer = 57 Const f12 = 88 Const breite =640 Const hoehe =480 ;BILDER LADEN ;PLAYER Dim player(7) player(0)=LoadImage("pl_hinten.bmp") player(4)=LoadImage("pl_vorne.bmp") player(6)=LoadImage("pl_links.bmp") player(2)=LoadImage("pl_rechts.bmp") player(7)=LoadImage("pl_hinten_links.bmp") player(1)=LoadImage("pl_hinten_rechts.bmp") player(5)=LoadImage("pl_vorne_links.bmp") player(3)=LoadImage("pl_vorne_rechts.bmp") MaskImage player(0),0,255,0 MaskImage player(1),0,255,0 MaskImage player(2),0,255,0 MaskImage player(3),0,255,0 MaskImage player(4),0,255,0 MaskImage player(5),0,255,0 MaskImage player(6),0,255,0 MaskImage player(7),0,255,0 ;MAP spielfeld=LoadImage("map002.bmp") ;PLAYER pl_x=(breite-25)/2 ;breite 25 hoehe 40 pl_y=(hoehe-40)/2 ;MAP map_x=0 map_y=0 ;RICHTUNG richtung=4 ;0=hoch 1=hoch-rechts 2=rechts 3=runter-rechts 4=runter 5=runter-links 6=links 7=hoch-links ;Hauptschleife While Not KeyDown(esc) ;RICHTUNGEN hoch = KeyDown(200) rechts = KeyDown(205) runter = KeyDown(208) links = KeyDown(203) If hoch Then If rechts Then richtung=1 map_y=map_y+0.7 map_x=map_x-0.7 ElseIf links Then richtung=7 map_y=map_y+0.7 map_x=map_x+0.7 Else richtung=0 map_y=map_y+2 EndIf ElseIf rechts Then If hoch Then richtung=1 map_y=map_y+0.7 map_x=map_x-0.7 ElseIf runter Then richtung=3 map_y=map_y-0.7 map_x=map_x-0.7 Else richtung=2 map_x=map_x-2 EndIf ElseIf runter Then If rechts Then richtung=3 map_y=map_y-0.7 map_x=map_x-0.7 ElseIf links Then richtung=5 map_y=map_y-0.7 map_x=map_x+0.7 Else richtung=4 map_y=map_y-2 EndIf ElseIf links Then If hoch Then richtung=7 map_y=map_y+0.7 map_x=map_x+0.7 ElseIf runter Then richtung=5 map_y=map_y-0.7 map_x=map_x+0.7 Else richtung=6 map_x=map_x+2 EndIf EndIf Cls DrawImage spielfeld,map_x,map_y DrawImage player(richtung),pl_x,pl_y Flip Wend |
||
![]() |
Die Wurst |
![]() Antworten mit Zitat ![]() |
---|---|---|
nächste frage: angenommen ich hab ne textur 10*10 pixel... wie schaff ich es, dass die textur den ganzen bildschirm füllt, und sich dann auch noch bewegt, wenn ich es will... | ||
![]() |
Kryan |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit TileBlock oder TileImage!
So anwenden: TileBlock image,scrollx,scrolly |
||
Webspaceanbieter?
Klick hier! Kultige Spieleschmiede? Klick hier! |
![]() |
Die Wurst |
![]() Antworten mit Zitat ![]() |
---|---|---|
ok... hab jetz alles angewandt, was ihr mir geraten habt... nun noch eine frage... ich habs grad probiert und nicht hinbekommen... ich will nun noch wissen, ob die figur irgendwie mit igendwas kollidiert. dann soll die figur sich nur noch in die anderen richtungen bewegen können(solange collision) | ||
Cloud |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich würde dir mal Raten dir das Buch von Rene Meyer zu kaufen
"Jetzt lerne ich Spiele programmieren mit Blitz Basic" in dem Buch werden etwa 80-90% der Probleme von Anfängern geklärt bzw die Lösung ist mit hilfe des Buches zu finden. |
||
Duron 1200 | 256 RAM | Geforce 2 TI |
![]() |
Kryan |
![]() Antworten mit Zitat ![]() |
---|---|---|
du musst dann ganz anders anfangen
ein beispiel: Code: [AUSKLAPPEN] Graphics 640,480
SetBuffer BackBuffer() Dim Level(20,15) herox=10 heroy=8 For j=1 To 15 For i=1 To 20 Read Level(i,j) Next Next Repeat Cls For i=1 To 20 For j=1 To 15 Select Level(i,j) Case 0 Color 255,0,0 Case 1 Color 0,0,255 End Select Rect i*32-32,j*32-32,32,32 Next Next If KeyHit(200) Then If Level(herox,heroy-1)=0 Then heroy=heroy-1 End If End If If KeyHit(203) Then If Level(herox-1,heroy)=0 Then herox=herox-1 End If End If If KeyHit(205) Then If Level(herox+1,heroy)=0 Then herox=herox+1 End If End If If KeyHit(208) Then If Level(herox,heroy+1)=0 Then heroy=heroy+1 End If End If Color 0,255,0 Rect herox*32-32,heroy*32-32,32,32 Flip Until KeyHit(1) Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 Data 1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,1 Data 1,0,1,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,0,1 Data 1,0,1,0,0,0,0,0,1,0,1,1,1,0,1,1,1,1,0,1 Data 1,0,1,1,1,1,1,0,1,0,1,1,1,0,1,1,1,1,0,1 Data 1,0,1,0,0,0,1,0,1,0,1,1,1,0,1,1,1,1,0,1 Data 1,0,1,0,1,0,1,0,1,0,1,1,1,0,1,1,1,1,0,1 Data 1,0,1,0,1,0,1,0,0,0,0,0,0,0,1,1,1,1,0,1 Data 1,0,1,0,1,0,1,1,1,0,1,1,1,0,1,1,1,1,0,1 Data 1,0,1,0,1,0,0,0,0,0,1,1,1,0,0,0,0,1,0,1 Data 1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1 Data 1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1 Data 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1 Data 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1 Data 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 du musst ja wissen, ob etwas eine mauer oder Ähnliches ist oder nicht |
||
Webspaceanbieter?
Klick hier! Kultige Spieleschmiede? Klick hier! |
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wie willst du dein Prgramm machen:
- Mit Tiles - fre positionierbar - Ein Bild - ... |
||
![]() |
Die Wurst |
![]() Antworten mit Zitat ![]() |
---|---|---|
@simi: die frage versteh ich jetz nich | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group