Figur animiert zumlaufen bringen
Übersicht
BlitzBasic
Beginners-Corner
maviBetreff: Figur animiert zumlaufen bringen |
Antworten mit Zitat |
|
|---|---|---|
|
Peinlich!
aber ich probiere den ganzen abend rum...wie bekomm ich eine figur zumlaufen...(kein problem) -Hauptschleife + Variablen ändern. aber dass die figuren animiert sind :O ich häng mich dran auf Hi übrigens... mag mir wer drauf antworten? |
||
|
|
Thunder |
Antworten mit Zitat |
|---|---|---|
|
Ich kann ja mal versuchen es zu erklären:
bild=LoadAnimImage("Bild.jpg",[Breite eines Einzelbildes],[Höhe eines Einzelbildes],0,[Anzahl der Einzelbilder]) dann in der Hauptschleife: Drawimage bild,x,y,i und i gibt das Bild an das angezeigt werden soll, d.h. du kannst i=(i+1) Mod [Anzahl der Einzelbilder-1] in die Schleife Schreiben und dann wird zwischen den Bildern durchgeschalten. aber ich würde dir erstmal empfehlen das: LoadAnimImage und das: DrawImage durchzulesen.
|
||
| Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit | ||
mavi |
Antworten mit Zitat |
|
|---|---|---|
|
Thunder hat Folgendes geschrieben: Ich kann ja mal versuchen es zu erklären:
bild=LoadAnimImage("Bild.jpg",[Breite eines Einzelbildes],[Höhe eines Einzelbildes],0,[Anzahl der Einzelbilder]) dann in der Hauptschleife: Drawimage bild,x,y,i und i gibt das Bild an das angezeigt werden soll, d.h. du kannst i=(i+1) Mod [Anzahl der Einzelbilder-1] in die Schleife Schreiben und dann wird zwischen den Bildern durchgeschalten. aber ich würde dir erstmal empfehlen das: LoadAnimImage und das: DrawImage durchzulesen.Das ist mir schon klar. aber alle bilder alle animationen Nachoben-unten-links-rechts-laufen sind in einem bild. |
||
|
|
mabox |
Antworten mit Zitat |
|---|---|---|
|
dann musst du die x oder die y Position deines Bildes in der Hauptschleife ändernlassen z.B. X_bild = X_Bild +1.
~EDIT: oh sorry, ich glaube ich habe dein Problem falsch verstanden. sind die Bilder alle übereinander? dann schau dir mal CLS und FLIP an. |
||
|
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
||
mavi |
Antworten mit Zitat |
|
|---|---|---|
|
mabox hat Folgendes geschrieben: dann musst du die x oder die y Position deines Bildes in der Hauptschleife ändernlassen z.B. X_bild = X_Bild +1.
~EDIT: oh sorry, ich glaube ich habe dein Problem falsch verstanden. sind die Bilder alle übereinander? dann schau dir mal CLS und FLIP an. nö das hab ich ja in meiner schleife! ^^ |
||
|
|
mabox |
Antworten mit Zitat |
|---|---|---|
| Dann zeig uns mal deinen Code, oder erklär genauer was das Problem ist. | ||
|
Fujitsu-Siemens Laptop, 2Ghz Intel Core2Duo Prozessor, 2GB Ram, 120GB Festplatte, ATI Mobility Radeon X1400, Windows Vista Ultimate
www.mausoft.de.tl Dönerfresser Homepage |
||
Gast |
Antworten mit Zitat |
|
|---|---|---|
|
Ich glaube du meinst, dass alee Bilder in einem Bild sind:
Code: [AUSKLAPPEN] Bild: I--------I--------I--------I I 1. I 2. I 3. I I I I I I--------I--------I--------I Oder wie meinst du es? Wenn du es meinst, wie ich es gesagt habe, dann ist LoadAnimImage Richtg. |
||
mavi |
Antworten mit Zitat |
|
|---|---|---|
|
Code: [AUSKLAPPEN] AppTitle "Test"
Graphics 800,600 SetBuffer BackBuffer() ;=============================================================================================== posx = 100 posy = 100 ;====================================================================================== ;================================================================================== Repeat Cls ;========================================================================================================= If KeyDown(200) ;Pfeiltaste Hoch posy = posy - 2 EndIf If KeyDown(203) ;Pfeiltaste Links posx = posx - 2 EndIf If KeyDown(205) ;Pfeiltaste Rechts posx = posx + 2 EndIf If KeyDown(208) ;Pfeiltaste Runter posy = posy + 2 EndIf ;=============================================================================================== If posx < 0 Then posx = 800 EndIf If posx > 800 Then posx = 0 EndIf If posy < 0 Then posy = 600 EndIf If posy > 600 Then posy = 0 EndIf Flip Forever Zwar nich viel...wie ihr seht, Pfeiltasten zur bewegung den rest mit Loadanimimage hab ich rausgenommen wenn ich jetzt nach links gehen will will ich die animation links abspielen und genauso in die anderen 3 richtungen. aber ich packs nicht^^ ich lösch immer wieder alles fang von vorne an. da die animationen in einem bild:
|
||
|
|
ToeB |
Antworten mit Zitat |
|---|---|---|
|
Als erstes lädst du das Bild....
Code: [AUSKLAPPEN] global Bild = LoadAnimImage(Pfad$,einzelbild_breite,einzelbild_höhe,anfang(=0),Framen(=4*4=16))
Du musst nur drauf achten, dass erste Bild ist nicht Frame 1 sonderen Frame 0... Setzte einen Timer, damit die Figur nicht zu schnell sich bewegt. Code: [AUSKLAPPEN] Global MS = Millisecs(),RI
If KeyDown(200) then ;Bewegen RI = 3 If MS <= Millisecs()-100 then ;Wenn 100ms vergangen sind... FRAME = FRAME + 1 MS = Millisecs() EndIf EndIf Das ganze machst du jetzt für die anderen Tasten, nur mit dem Unterschied von RI. Dem gibst du nämlich den wert von der Animations-reihe der Laufrichtung. Also z.b. in der ersten bilderreihe von deinem Bild sieht der Typ nach unten. Und mit KeyDown(208) laüfst du nach unten. Heit hinter KeyDown(208) setzt du RI = 0. Verstanden ? Berim malen machst du folgendes : Code: [AUSKLAPPEN] DrawImage BILD,xpos,ypos,(RI*4)+FRAME
Gaaanz einfach ^^, ne ? mfg ToeB |
||
|
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt! |
||
Übersicht
BlitzBasic
Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group


