anfängerproblem mit blitz2d
Übersicht

florobBetreff: anfängerproblem mit blitz2d |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ich bin blutiger anfänger und wollte mal zum ausprobieren einen ping pong schläger machen und hab dazu das geschrieben:
Graphics 800,600 SetBuffer BackBuffer() x=350 Repeat If KeyDown(203) Then x=x-1 EndIf If KeyDown(205) Then x=x+1 EndIf Rect x,580,100,20 Flip Forever aber jedesmal wenn ichs ausführen will schreibt er mir ne meldung mit "Expecting 'EndIf'" was mach ich falsch??? lg flo |
||
![]() |
Bud |
![]() Antworten mit Zitat ![]() |
---|---|---|
Die 'Then's müssen in die selbe Zeile wie die 'If's, dann gehts.
Außerdem sollte ein 'Cls' an den Anfang der Schleife (nach 'Repeat') |
||
florob |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
danke jetz funkts.
lg flo |
||
florob |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hallo
sorry dass ich schon wieder stör. ich hab jetz den schläger geschafft und nen ball reinprogrammiert. der ball sollte in 5 verschiedene richtungen fliegen können und an den wänden und dem schläger abprallen. der bildschirm blieb aber schwarz.jetz hab ich zum testen ein hallo reingeschrieben, bis dort hin kommt er, aber zwischen dem hallo und dem ersten clear bleibt er hängen, wieso? Graphics 800, 600, 16, 1 SetBuffer BackBuffer() Print "hallo" x=350 ;x is rechteck koordinate a=395 ;a is kugel links rechts b=80 ;b is kugel rauf runter ;w ;winkel rechteck ;d ;winkel kugel s=4 ;geschwindigkeit kugelbild=LoadImage("kugel.bmp") Repeat Cls Rect x,585,100,15 b=b-s DrawImage kugelbild,a,b Color 255,0,0 If 150<b And b<350 Then Text 400, 200, "Ready" ElseIf b>350 Then Text 400, 200, "Go" EndIf Until ImageRectOverlap (kugelbild,a,b,x,585,100,15) Repeat If KeyHit(1) Then End EndIf If KeyDown(203) Then x=x-7 ElseIf KeyDown(205) Then x=x+7 EndIf If x<0 Then x=0 ElseIf x>700 Then x=700 EndIf Rect x,585,100,15 If ImageRectOverlap (kugelbild,a,b,x,585,100,15) And x+30>=a Then w=45 ElseIf ImageRectOverlap (kugelbild,a,b,x,585,100,15) And x+30<a And x+70>a Then w=90 ElseIf ImageRectOverlap (kugelbild,a,b,x,585,100,15) And x+70<=a Then w=135 EndIf If w=45 Then d=1 ElseIf w=90 Then d=2 ElseIf w=135 Then d=3 EndIf If a<1 And b>b1 Then d=4 ElseIf a<1 And b<b1 Then d=3 ElseIf a>800 And b>b1 Then d=5 ElseIf a>800 And b<b1 Then d=1 EndIf If b<1 And a1<a Then d=4 ElseIf b<1 And a1>a Then d=5 EndIf Select d Case 1 a=a-1 b=b-1 Case 2 b=b-1 Case 3 a=a+1 b=b-1 Case 4 a=a+1 b=b+1 Case 5 a=a-1 b=b+1 End Select DrawImage kugelbild,a,b a=a1 b=b1 Flip Cls Forever lg flo |
||
![]() |
skey-z |
![]() Antworten mit Zitat ![]() |
---|---|---|
1. am besten du benutzt den Code-Tag, der Button befindet sich über dem eingabefeld
2. Solltest du den Code einrücken, damit man ihn besser lesen kann, oirgendwann wirst du da selber nicht mehr durchblicken, Kommentare zu einzelnen Codeabschnitten sind auch hilfreich, besonders für andere, weil die dann wissen, was du da genau machen willst 3. Es kann nicht schaden bei vergleichen und rechnungen Klammern zu setzen, zb: Code: [AUSKLAPPEN] If ImageRectOverlap (kugelbild,a,b,x,585,100,15) And (x+30>=a) Then ... ansonsten könnte BB das als ... 1 AND x interpretieren, ausserdem macht es den Code übersichtlicher. 4. zu deinem Fehler, sehe da leider auf den ersten Blick keinen, wegen vorangeführten Punkten. |
||
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz BAC#57: 2. Platz |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group