Problem bei meinem Type und Field...
Übersicht
BlitzBasic
Allgemein|
|
YankeeBetreff: Problem bei meinem Type und Field... |
Antworten mit Zitat |
|---|---|---|
|
Also wie in der Ueberschrift schon steht, habe ich ein problem mit den Types und Fields...
Hier der Code und sagt mir bitte, was ich falsch mache...: Code: [AUSKLAPPEN] Graphics 640, 480,16 ball = LoadImage("ball.bmp") x = 1 Type alien Field x Field y Field graphic End Type For n = 1 To 100 mal.alien = New alien alien\x(n) = Rnd(0,640) alien\y(n) = Rnd(0,480) alien\graphic Next While x = 1 For mal.alien = Each alien Cls If alien\x(mal.alien) < 320 Then alien\x(mal.alien) = alien\x(mal.alien) + 1 Else alien\x(mal.alien) = alien\x(mal.alien) - 1 EndIf If alien\y(mal.alien) < 240 Then alien\y(mal.alien) = alien\y(mal.alien) + 1 Else alien\y(mal.alien) = alien\y(mal.alien) - 1 EndIf DrawImage ball, alien\x(mal.alien), alien\y(mal.alien) Next Wend Bitte sagt mir, was ich da falsch gemacht habe... |
||
|
|
d-bug |
Antworten mit Zitat |
|---|---|---|
|
Dieses ganze Dim Zeugs funktioniert nicht mit Types ! Brauchst du aber auch nicht !
Code: [AUSKLAPPEN] For n = 1 To 100
mal.alien = New alien mal\x = Rnd(0,640) mal\y = Rnd(0,480) ;mal\graphic ;<-- was ist denn das ? Variable ohne Wertzuweisung ? Übel !!!! ;) Next Code: [AUSKLAPPEN] While x = 1 ;<-- würde da aber eine gescheites 'while not keyhit(1)' vorziehen, denn x änderst du ja nie
Cls ;<-- lieber hier hin For mal.alien = Each alien If mal\x < 320 Then mal\x = mal\x + 1 Else mal\x = mal\x - 1 EndIf If mal\y < 240 Then mal\y = mal\y + 1 Else mal\y = mal\y - 1 EndIf DrawImage ball, mal\x, mal\y Next flip ;<-- vergessen ;) Wend so sollte es wahrscheinlich besser gehen |
||
- Zuletzt bearbeitet von d-bug am Mi, Apr 19, 2006 12:36, insgesamt einmal bearbeitet
|
|
Cardonic |
Antworten mit Zitat |
|---|---|---|
|
Hi
Code: [AUSKLAPPEN] Graphics 640, 480,16
SetBuffer BackBuffer() ball = LoadImage("ball.bmp") x = 1 Type alien Field x Field y Field graphic End Type For n = 1 To 100 mal.alien = New alien mal\x = Rnd(0,640) mal\y = Rnd(0,480) ; mal\graphic Next While Not KeyHit(1) Cls For mal.alien = Each alien If mal\x < 320 Then mal\x = mal\x + 1 Else mal\x = mal\x - 1 EndIf If mal\y < 240 Then mal\y = mal\y + 1 Else mal\y = mal\y - 1 EndIf DrawImage ball, mal\x, mal\y Next Flip Wend Ich weiss nicht, ob das in deinem Sinne ist, aber es gibt zumindest keine Fehlermeldung mehr mfg Cardonic [Edit] Mist, zu spät [/Edit] |
||
| If you should go skating on the thin ice of modern life, dragging behind you the silent reproach of a million tear-stained eyes, don't be surprised when a crack in the ice appears under your feet. | ||
- Zuletzt bearbeitet von Cardonic am Mi, Apr 19, 2006 12:38, insgesamt einmal bearbeitet
|
|
d-bug |
Antworten mit Zitat |
|---|---|---|
|
Tja Cardonic, da war ich wohl etwas schneller |
||
|
|
Yankee |
Antworten mit Zitat |
|---|---|---|
|
.... also danke erstmal So jetzt kommt zwar keine Fehlermeldung mehr, aber ich wollte ja 100 baelle statt nur einen Also bitte nochmal anschauen, und mir sagen was dann falsch ist. Oki danke |
||
Dreamora |
Antworten mit Zitat |
|
|---|---|---|
|
Du hast ja 100 bälle.
Das Problem war, dass du versuchst hast aus der X und Y Koordinate auch irgendwie arrays zu definieren, was nicht gebraucht wird, da jeder Type ein eigenständiges X und Y hat. |
||
| Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. | ||
|
|
5k41 |
Antworten mit Zitat |
|---|---|---|
|
OMG!!!! Du erstellst du 100 Bälle!!!! LOL und dann auch noch im Befehlston mit uns reden...-.- naja ich will mal nicht so sein: es liegt an der For-schleife(nicht for-each)
MfG -.- |
||
|
Projekte:
For a better World - Gesellschaftsspiel ( 100%) User posted image |
||
|
|
Yankee |
Antworten mit Zitat |
|---|---|---|
|
Also sorry, dass ich im Befehlstone gesprochen habe, aber ich kapier immer noch net wie ich das jetzt machen soll.... Plz helf mir dabei.... |
||
|
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
||
ke^kx |
Antworten mit Zitat |
|
|---|---|---|
|
Wie 5k41 schon sagte liegt es an der For schleife:
Code: [AUSKLAPPEN] For n = 1 To 100
mal.alien = New alien mal\x = Rnd(0,640) mal\y = Rnd(0,480) ;mal\graphic ;<-- was ist denn das ? Variable ohne Wertzuweisung ? Übel !!!! ;) Next So, und jetzt überleg mal, wo da 100 Bälle oder wie du es nennst erstellt werden... Jiriki |
||
|
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
||
|
|
Yankee |
Antworten mit Zitat |
|---|---|---|
|
Oki..... danke nochmal... Jezt gehts endlich ^^ |
||
|
Um so kleiner der code, um so schwieriger den Fehler zu finden:
Siehst du den Fehler? Klick mal hier drauf... hehehe |
||
ke^kx |
Antworten mit Zitat |
|
|---|---|---|
|
Gern geschehen^^ Aber besser wäre es trotzdem gewesen, wenn du selber nachgedacht hättest Jiriki |
||
|
http://i3u8.blogspot.com
Asus Striker II Intel Core2Quad Q9300 @ 2,5 GHz (aber nur zwei Kerne aktiv aufgrund der Instabilität -.-) Geforce 9800 GTX 2GB RAM |
||
Übersicht
BlitzBasic
Allgemein
Powered by phpBB © 2001 - 2006, phpBB Group
