Nur 1 figur bewegbar?
Übersicht

![]() |
GhostBetreff: Nur 1 figur bewegbar? |
![]() Antworten mit Zitat ![]() |
---|---|---|
moin ich bin noch sogenannter "noob" im bb programmieren aber bin schon mal dazu gekommen dass ich meine figuren mit den tasten bewegen kann.
ich wollte eine art fangis machen und weil ich dazu 2 bewegliche figuren brauche hab ich beide gemacht. ich hab zuerst beide figuren einzeln gemacht und nachher 1 teil in den anderen kopiert. (übersichtshalber) einzeln kann ich beide figuren perfekt bewegen. aber nachdem ich 1 code in die hauptversion kopiert habe, kann ich nur 1 figur bewegen. Code: [AUSKLAPPEN] Graphics 640,480,16,1
;player1------------------------- SetBuffer BackBuffer() player=LoadImage("C:\Documents and Settings\Vlad\Desktop\My Pictures\smily.bmp") player_x=550 player_y=100 While Not KeyDown(1) If KeyDown(200) ;nach oben player_y=player_y-10 If player_y<0 Then player_y=0 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; If KeyDown(208) ;nach unten player_y=player_y+10 If player_y>450Then player_y=450 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; If KeyDown(203) ;nach links player_x=player_x-10 If player_x<0 Then player_x=0 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; If KeyDown(205) ; nach rechts player_x=player_x+10 If player_x>604 Then player_x=604 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; Cls DrawImage player,player_x,player_y Flip ;--------------------¨ ;player 2------------------------- SetBuffer BackBuffer() player2=LoadImage("C:\Documents and Settings\Vlad\Desktop\My Pictures\smily2.bmp") player2_x=100 player2_y=400 If KeyDown(17) player2_y=player2_y-10 If player2_y<0 Then player2_y=0 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; If KeyDown(31) player2_y=player2_y+10 If player2_y>450Then player2_y=450 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; If KeyDown(30) player2_x=player2_x-10 If player2_x<0 Then player2_x=0 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; If KeyDown(32) player2_x=player2_x+10 If player2_x>604 Then player2_x=604 EndIf ;;;;;;;;;;;;;;;;;;;;;;;; Cls DrawImage player2,player2_x,player2_y Flip ;--------------------- Wend End ich aknn nur den player 1 mit den pfeiltasten bewegen. den player2 kann ich nur ca 1 cm vom fleck rühren (tasten w,a,s,d) ich habs ca 20 mal durchgelesen aber keinen fehler entdeckt? pls help ![]() wenn ihrs selberprobieren wollt ersetzt meine 2 spielfigur durch eigene pics von eurem pc damit das programm nicht sagt dass komischerweise meine fotos nicht auf eurem pc sind ![]() greez.. help please ![]() |
||
Das ist keine Lüge sondern eine sachzwangreduzierte Ehrlichkeit.
---- Anakin: " Was für eine Lichtschwertform habt ihr da eigentlich benutzt, Meister? " Obi Wan: " Form? Es war wohl eher ein Mangel an Form. " |
![]() |
the FR3AK |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du definierst ja die Player2_X und Y Variable in der Schleife immer wieder auf 500 oder so die kann sich ja net verändern ![]() Machs vor die Schleife dann müsste das funktionieren |
||
![]() |
Ghost |
![]() Antworten mit Zitat ![]() |
---|---|---|
thxvm jetzt kapier ichs | ||
Das ist keine Lüge sondern eine sachzwangreduzierte Ehrlichkeit.
---- Anakin: " Was für eine Lichtschwertform habt ihr da eigentlich benutzt, Meister? " Obi Wan: " Form? Es war wohl eher ein Mangel an Form. " |
![]() |
Goodjee |
![]() Antworten mit Zitat ![]() |
---|---|---|
du lädst in der schleife bilder....macht man nicht
du setzt in der schleife variablen,m die sich eigentlich ändern sollten zurück...unfug und du setzt in der scchleife den buffer auf backbuffer...auch unsinn aba ansonsten stimmt das glaube ich so |
||
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/ |
![]() |
Ghost |
![]() Antworten mit Zitat ![]() |
---|---|---|
Goodjee hat Folgendes geschrieben: du lädst in der schleife bilder....macht man nicht
du setzt in der schleife variablen,m die sich eigentlich ändern sollten zurück...unfug und du setzt in der scchleife den buffer auf backbuffer...auch unsinn aba ansonsten stimmt das glaube ich so danke das habe ich auch geändert. jetz will ich dass das programm auf eine kollision reagiert.. z.b. sich beendet. aber als ich das mit der kollision reinbrachte, machte es das fenster automatisch zu, ohne auf die kollision zu warten. wie müsste ich die kollisionsregel reinbringen? greez |
||
Das ist keine Lüge sondern eine sachzwangreduzierte Ehrlichkeit.
---- Anakin: " Was für eine Lichtschwertform habt ihr da eigentlich benutzt, Meister? " Obi Wan: " Form? Es war wohl eher ein Mangel an Form. " |
![]() |
Dottakopf |
![]() Antworten mit Zitat ![]() |
---|---|---|
vielleicht kannst du dich beim programieren an so eine art grund strucktur halten. Also die varriert von programierer zu programierer aber so in etwa sollte es aussehen.
Code: [AUSKLAPPEN] Graphics 800,600,16,2 setbuffer backbuffer() ;GLobale Varriablen festlegen ;Constanten festlegen ;grafiken ,sound usw.. laden ;arry definieren ;types ;includes ;so und jetzt gehts los Repeat cls <anweisung> <anweisung> ;du kannst dir auch funktionen anschauen.. flip until keyhit(1) ;ab hier endet eigentlich das programm aber --> ;hier kommen dan u.a. (sovern vorhanden) funktionenen rein ;aber nichts mehr das sich wiederholten muss z.b. ein bild zeichnen oder so Viele programierer benützen auch eine "maske" .. einfach ein projekt ladem in dem scho so grund elemente drin sind.... grafikmodus gesetzt und die Hauptschleife ... und evt ein fps zähler mit drin. wegen dieser kollisionsregel. wie sieht na die aus ? Code: [AUSKLAPPEN] If imagescollide(bild1,x,y,fram,bild2,x,y,frame) then END wenn du einfach nur ein end hast.. dan ist es ja klar das bei kollision das program ohne nachricht abbricht^^ .. vll hilft ein waitkey() und ein print mfg Dottakopf |
||
Rechtschreibfehler gelten der allgemeinen Belustigung! |
![]() |
Ghost |
![]() Antworten mit Zitat ![]() |
---|---|---|
Danke für die Struktur.
Wegen dem kollidieren: Das was du gepostet hast hab ich ja versucht... Aber ich kapier nicht was ich bei x,y eingeben muss? -.- xD so dumm bin ich auch wieder nicht. Bei meinem 1. Versuch hatte ich ![]() aber als ich das Programm startete, stand schon oben links "Au!" obwohl meine Figuren sich gar nciht berührten.. dann machte ich statt print => end.. und kaum habe ich das programm gestartet, beendete es sich selber ![]() greez |
||
Das ist keine Lüge sondern eine sachzwangreduzierte Ehrlichkeit.
---- Anakin: " Was für eine Lichtschwertform habt ihr da eigentlich benutzt, Meister? " Obi Wan: " Form? Es war wohl eher ein Mangel an Form. " |
![]() |
Dottakopf |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das liegt daran das deine kollison immer 1 also true zurückgibt.
Wie du verstehst nicht was du bei x,y eingeben musst ? ![]() Ja etz aber nochmal robsite drucharbeiten aber hop hop. vom prinzip funtz dat so Code: [AUSKLAPPEN] hero = loadimage Stein = laodimage if imagescollide(hero, hero_x_pos, hero_y_pos , hero_einzelbild , Stein, Stein_x , usw) wenn das bild keine animation hat gibts du für das hero_einzelbild einfach 0 an und für den stein auch. mfg Dottakopf |
||
Rechtschreibfehler gelten der allgemeinen Belustigung! |
![]() |
Ghost |
![]() Antworten mit Zitat ![]() |
---|---|---|
xD jasooo.. ![]() also keine feste koordinaten wo sie kollidieren müssen.. ok das wär auch blöd.. aber auf robsite unter kollisionen stenht nirgends was man unter x,y eingeben soll.. aber danke für hilfe.. greez ![]() |
||
Das ist keine Lüge sondern eine sachzwangreduzierte Ehrlichkeit.
---- Anakin: " Was für eine Lichtschwertform habt ihr da eigentlich benutzt, Meister? " Obi Wan: " Form? Es war wohl eher ein Mangel an Form. " |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group