If Not KeyDown(rauf) And Not KeyDown(runter) Then
Übersicht

DebbieDangerBetreff: If Not KeyDown(rauf) And Not KeyDown(runter) Then |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
mein code
BlitzBasic: [AUSKLAPPEN] If Not KeyDown(rauf) And Not KeyDown(runter) Then sagt mir "expecting expression" wie verwende ich "and"s und "not"s in einer if abfrage? Die Commendhelp der deutschen oh hilft mir net sorecht . |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi,
du musst noch klammern setzen, denn BB weiss nicht ob du es BlitzBasic: [AUSKLAPPEN] If Not(KeyDown(rauf) And Not KeyDown(runter)) Then oder so BlitzBasic: [AUSKLAPPEN] If Not(KeyDown(rauf)) And Not(KeyDown(runter)) Then meinst.... |
||
DebbieDanger |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das kam mir auch schon in den sinn, aber es ging nicht .
Ich habe jetzt deine version angewendet und er sagt immernoch expecting expression. Komisch ![]() |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
ist mir auch erst gerade aufgefallen, habe gemeint das BB mit den Klammern bei And nicht so strikt ist..... Code: [AUSKLAPPEN] If (Not(KeyDown(rauf))) And (Not(KeyDown(runter))) Then So sollte es gehen... |
||
![]() |
Chester |
![]() Antworten mit Zitat ![]() |
---|---|---|
mach doch einfach :
BlitzBasic: [AUSKLAPPEN]
|
||
DebbieDanger |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok ich habe das problem mit
BlitzBasic: [AUSKLAPPEN]
gelöst, trotzdem danke für deine rasche antwort. Dann habe ich noch etwas was mir kopfzerbrechen macht. Ich habe ein bild das in viele frames aufgeteilt ist. Also 20framesx30 pixel breit und 40 pixel hoch BlitzBasic: [AUSKLAPPEN] If plstance=True Then Ich dachte dann müsste er die animation abspielen (das ganze hat auch ne hauptschleife doublebuffering mit cls am anfang der schleife und am ende nen flip und sowas.) Andere animationen spielt er ab die sind aber auch anders benutzt. |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi,
also lade nie ein Bild in der Hauptschleife!! (oder ist es hier nicht in der Hauptschleife?? Dann zu der Animation: Am Besten schaltest du alle z.B. 200 Millisekunden die Animationsstufe um eins höher....: Code: [AUSKLAPPEN] if Millisecs()-time>200 then a = (a+1) mod 20 time = Millisescs() end if DrawImage player,plx,ply,a |
||
DarkMike |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ja und was ist jetzt deine frage? | ||
2 dinge sind unendlich die menschliche Dummheit und das Universum obwohl beim Universum bin ich mir nicht ganz sicher. (Albert Einstein) |
DebbieDanger |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Also ich habe in dem thread "Bilder und bewegung " nachgeschaut un ein stück nützlichen code gefunden
BlitzBasic: [AUSKLAPPEN] If plstance=True Then damit spielt er sie erstmal ab aber sehr sehr schnell , wie kann ich das ändern? So , nein die grafik wird ausserhalb der schleife geladen. Ich verstehe nicht ganz was das bewirkt die animationsstufen höherzustellen? |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Siehe meinen letztn Post, der kleine Code, der Bewirkt, dass nur alle 200 Millisekunden der animindex erhöht wir, kannst du auch bei diesem Beispiel gebrauchen..... | ||
![]() |
Jolinah |
![]() Antworten mit Zitat ![]() |
---|---|---|
Edit: Zu spät ^^
Er meinte wahrscheinlich du sollst das Bildframe nur alle 200ms um eins erhöhen. Wenn du ne for-Schleife machst und danach erst zeichnest ist das Frame immer auf das letzte eingestellt (keine Animation sichtbar). Und wenn du in jedem Schleifendurchgang das Bild zeichnest werden einfach alle Frames übereinander gemalt (auch keine Animation sichtbar). Du speicherst also das aktuelle Frame in einer variable und erhöhst es alle 200ms um 1. Wenn das Maximum (19) erreicht wurde stellst du es wieder auf 0. |
||
DebbieDanger |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Yay es funktioniert, du warst mir eine große hilfe.
Nun bin ich erstmal zufrieden, da ist zwar noch eine kollision die nicht funktioniert aber naja. @simi bist du aus der schweiz(auf avatar guck) ich kenne viele hilfreiche schweizer @Jolinah danke nochmal für die erklärung. bloß das mit dem MOD 9 verstehe ich nicht mod gibt doch einen restwert an oder nicht? |
||
![]() |
simi |
![]() Antworten mit Zitat ![]() |
---|---|---|
jo,
der PC teilt durch neun und gibt dann den Rest zurück (kennst du sicher früher von der Schule, als man noch nicht Komma rechnen konnte....) Das bewirkt das die Variable nie grösser als neun wird... (denn wenn die Variable neun ist, dann ist der Rest 0....) |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group