Seite 2 von 2

Verfasst: Montag 4. Mai 2009, 12:42
von Basti91
pygame-sprites? sry bin neu auf dem gebiet.

Hab jetzt das hier versucht aber ich muss iwie nach dem ersten durchlaufen das zaehler=0 wegbekommen damit er auch weiterläuft.

Code: Alles auswählen

if Bewegung:
        if rechts:
            Mariorechts= (Mariorechts2,Mariorechts3,Mariorechts4,Mariorechts5,Mariorechts6)
            zaehler=0
            MarioX+= 5
            Mario=Mariorechts[zaehler]
            pygame.time.wait(100)
            zaehler+=1

Gibt es nicht nen Befehl der abfragt ob eine Variable nicht definieret ist?
z.B sowas wie "not definited")

Verfasst: Montag 4. Mai 2009, 13:12
von Basti91
Treath kann geschlossen werden.... nach langem experimentieren hab ichs endlich hinbekommen :D :D :D :D Vielen Dank für eure Hilfe

Verfasst: Montag 4. Mai 2009, 13:19
von cofi
Thread heisst das.

Um anderen Hilfe-suchenden mit ähnlichem Anliegen zu helfen, könntest/solltest du aber noch deine Lösung offen legen. ;)

Verfasst: Montag 4. Mai 2009, 13:24
von Basti91
Whoops sry, jaja die Rechtschreibung^^

Also gut zuerst einmal müsst ihr außerhalb eine Variable zaehler definieren, und diese am besten zaehler =0.

Nun der entscheidende Quelltextteil:

Code: Alles auswählen

if Bewegung:
        if rechts:
            Mariorechts= [Mariorechts2,Mariorechts3,Mariorechts4,Mariorechts5,Mariorechts6]
            MarioX+= 5
            Mario=Mariorechts[zaehler]
            pygame.time.wait(100)
            zaehler= zaehler+1
            if zaehler==5:
                zaehler=0

Verfasst: Montag 4. Mai 2009, 13:24
von derdon
Warum sollte dieser Thread geschlossen werden?

Verfasst: Montag 4. Mai 2009, 14:41
von BlackJack
@Basti91: Das sollte alles in einer Klasse verschwinden, am besten eine, die von `pygame.sprite.Sprite` abgeleitet ist.

Verfasst: Montag 4. Mai 2009, 14:48
von Dill
dann solltest du noch die variablen klein schreiben und dir vor allem nicht mitten im programm datenstrukturen zusammenbauen:

Code: Alles auswählen

Mariorechts= [Mariorechts2,Mariorechts3,Mariorechts4,Mariorechts5,Mariorechts6] 
ist böse!

leerzeichen hinter "," machen sich auch gut.

Verfasst: Montag 4. Mai 2009, 16:43
von ichbinsisyphos
Is aber lustig, dass "wait" hier funktioniert? Ist dieses Ding unabhängig von der main-loop, ein eigener thread? Oder, wenn ich mir den Code-Schnippsel ansehe, ist das einfach ein Teil der main-loop?

Verfasst: Montag 4. Mai 2009, 17:28
von BlackJack
@ichbinsisyphos: Bei `pygame` musst Du Dir die Hauptschleife selber schreiben. Der Ausschnitt steht also höchstwahrscheinlich in dieser Schleife, die normalerweise eine "Endlosschleife" ist, in der eine ``for``-Schleife über die Ereigniswarteschlange steckt.