Auf eigenem Hintergrundbild PingPong spielen
Übersicht

enazBetreff: Auf eigenem Hintergrundbild PingPong spielen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Bin immer noch an meinem Ultimativen Pingpongspiel beschaftigt. Jetzt möchte ich, dass ich auf einem eigenem Hintergrund spielen kann, nicht immer nur einen einfarbigen Hintergrund.
Bidde Hilfe |
||
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zeichne einfach ein Bild (DrawImage) bevor Du Deinen Ball etc. zeichnest. | ||
![]() |
Schranz0r |
![]() Antworten mit Zitat ![]() |
---|---|---|
Du schreibst einfach deinen Background als erstes!
DrawImage Background,0,0 : Hier der BG!!! dann alles andere Drawimage Spieler, x, y Drawimage Steine ..... usw EDIT : Scheisse Hase war schneller ^^ |
||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!HAUPTSACH et kost VIEL!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
enaz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Irgendwie seh ich dann aber nur en Schwarzen Bildschirm!
Hier mal der Code: Global xmax=1024,ymax=768 Graphics xmax,ymax,32,1 Global frametimer = CreateTimer(60) SeedRnd MilliSecs() SetBuffer BackBuffer() sound = LoadSound("ton.wav") Global kugel=LoadImage("kugel.bmp");damit wird die Kugel in eine Variable geladen MidHandle kugel ;der Urspung wird auf den Mittelpunkt gelegt, das macht sich bei Berechnungen besser MaskImage kugel,255,255,255;auf das Einstellen der Tranzparenzfarbe kann verzichtet werden, weil sie Standard mäßig schwarz ist. Global spieler1=LoadImage("pongspieler1.bmp");damit ist der Untere gemeint MidHandle spieler1;auch dieser bekommt seine Ursprung in die Mitte (s.Kugel) MaskImage spieler1,255,255,255;hier müssen wir die Tranzparenzfarbe angeben, weil sie vom Standard abweicht Global spieler2=LoadImage("pongspieler2.bmp");damit ist der Obere gemeint MidHandle spieler2;auch dieser bekommt seine Ursprung in die Mitte (s.Kugel) MaskImage spieler2,255,255,255;hier müssen wir die Tranzparenzfarbe angeben, weil sie vom Standard abweicht Global xsp1=xmax/2;also in der Mitte Global xsp2=xmax/2 Global sp1st Global sp2st Global xkugel# Global ykugel# Global winkel Global geschwindigkeit=11 ;wird mit Wert zugewiesen, weil man sie (noch) nicht ändern kann Global fehlersp1 Global fehlersp2 Global beweglichkeit resetkugel;damit sie an der richtigen Position ist Repeat WaitTimer (frametimer) beweglichkeit=geschwindigkeit If KeyHit(14) Then resetkugel;wenn die Löschen Taste gedrückt wurde wird die Kugel zurück gesetzt ;die Spielersteuerung If KeyHit(2) Then sp1st=sp1st+1;die Zahlentaste 1 If KeyHit(3) Then sp2st=sp2st+1;die Zahlentaste 2 If sp1st>2 Then sp1st=0 If sp2st>2 Then sp2st=0 ;die automatische Steuerung, wenn die Steuerungsvariable 0 ist: If xsp1>xkugel And sp1st=0 Then xsp1=xsp1-beweglichkeit If xsp1<xkugel And sp1st=0 Then xsp1=xsp1+beweglichkeit If xsp2>xkugel And sp2st=0 Then xsp2=xsp2-beweglichkeit If xsp2<xkugel And sp2st=0 Then xsp2=xsp2+beweglichkeit ;die Tastatursteuerung, wenn die Steuerungsvariable 1 ist: If KeyDown(203) And sp1st=1 Then xsp1=xsp1-beweglichkeit;linke Pfeiltaste If KeyDown(205) And sp1st=1 Then xsp1=xsp1+beweglichkeit;rechte Pfeiltaste If KeyDown(44) And sp2st=1 Then xsp2=xsp2-beweglichkeit;Y Taste If KeyDown(45) And sp2st=1 Then xsp2=xsp2+beweglichkeit;X Taste ;die Maussteuerung, wenn die Steuerungsvariable 2 ist: If sp1st=2 Then xsp1=xsp1+MouseXSpeed() If sp2st=2 Then xsp2=xsp2+MouseXSpeed() ;die Überprüfung: If xsp1<70 Then xsp1=70 If xsp1>xmax-70 Then xsp1=xmax-70 If xsp2<70 Then xsp2=70 If xsp2>xmax-70 Then xsp2=xmax-70 ;die Kollisionsabfrage der Spieler If ImagesCollide(spieler1,xsp1,ymax-10,0,kugel,xkugel,ykugel,0) Then ;wenn eine Kollision ist PlaySound(sound) winkel=360-winkel ;prallt die Kugel ab abweichung=2*(xsp1-xkugel) ;damit kannst du die Richtung der Kugel steuern winkel=winkel+abweichung EndIf If ImagesCollide(spieler2,xsp2,10,0,kugel,xkugel,ykugel,0) Then PlaySound(sound) winkel=360-winkel abweichung=2*(xsp2-xkugel) winkel=winkel-abweichung EndIf ;damit der Winkel nicht über den Bereich von 0-360 geht: If winkel>360 Then winkel=winkel-360 If winkel<0 Then winkel=winkel+360 ;Kollisionsabfrage Seitenwände If xkugel<60 Then winkel=180-winkel ;damit prallt die Kugel ab EndIf If xkugel>xmax-60 Then winkel=180-winkel EndIf ;wenn die Kugel durchgelassen wurde If ykugel<-10 Then ;oben fehlersp2=fehlersp2+1 ;der Obere bekommt einen Fehlerpunkt dazu resetkugel ;ein Funktionsaufruf EndIf If ykugel>ymax+10 Then ;unten fehlersp1=fehlersp1+1 ;der Untere bekommt einen Fehlerpunkt dazu resetkugel ;ein Funktionsaufruf EndIf ;das Berechnen der Kugelkoordinaten xkugel=xkugel+Cos(winkel)*geschwindigkeit ykugel=ykugel-Sin(winkel)*geschwindigkeit ;einige Informationen werden auf den Bildschirm gemalt Text 100,200,"Spielstand: "+fehlersp2 + " : " + fehlersp1 If fehlersp1=51 Then End If fehlersp2=51 Then End DrawImage kugel,xkugel,ykugel;nur damit man sieht, das sie existiert DrawImage spieler1,xsp1,ymax-10 DrawImage spieler2,xsp2,10 Flip ;da wir den Hintergrundpuffer aktiviert haben, wechseln wir jetzt die Seiten, damit wir was sehen Cls ;der nichtsichtbare Bereich wird gelöscht Until KeyHit(1) End Function resetkugel() xkugel=xmax/2:ykugel=ymax/2 If Rand(0,1)=1 Then winkel=Rand(105,45) Else winkel=Rand(315,225);der Winkel wird durch Zufall ermittelt End Function |
||
- Zuletzt bearbeitet von enaz am Do, Sep 21, 2006 16:01, insgesamt einmal bearbeitet
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code? ![]() ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
robotx |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dann nimm kein schwarzes Bild! ![]() Woher sollen wir wissen was du falsch machst, wenn du nichts zum Problem sagst? Hast du BackBuffer ? Sind alle Bilder vorhanden? Zeige mal den Codeausschnitt! mfg robotx ![]() Edit: Man bin ich langsam! ![]() |
||
www.botbomb.robotzgames.de
www.robotzgames.de |
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hast Du das wunderbare "Flip" und das wunderbare "Cls" benützt? | ||
![]() |
robotx |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja hat er, aber wo bitte schön lädst du das Hintergrundbild und zeichnest es?
robotx |
||
www.botbomb.robotzgames.de
www.robotzgames.de |
enaz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
genau das ist ja das Problem. Wo genau muss ich das hinschreiben:
DrawImage Background,0,0 : Hintergrund Muss ich das ganz am Anfang machen, oder nach der Auflösung oder was? |
||
![]() |
DerHase |
![]() Antworten mit Zitat ![]() |
---|---|---|
DerHase hat Folgendes geschrieben: Zeichne einfach ein Bild (DrawImage) bevor Du Deinen Ball etc. zeichnest.
|
||
enaz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
jetzt hab ich das nopch hinzugefügt:
Background=LoadImage("Bild.bmp") DrawImage Background,0,0 Das Bild wird aber immer noch nicht angezeigt |
||
![]() |
robotx |
![]() Antworten mit Zitat ![]() |
---|---|---|
Global Background = LoadImage("Bild.bmp")
das kommt an den Anfang des Codes, wo du auch z.B. die Schläger und den Ball lädst. DrawImage Background,0,0 kommt vor alle anderen DrawImage Befehle So muss es gehen! robotx Edit: Ich habe es bei mir mal getestet und es funktioniert einwandfrei. |
||
www.botbomb.robotzgames.de
www.robotzgames.de |
enaz |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
robotx hat Folgendes geschrieben: Global Background = LoadImage("Bild.bmp")
das kommt an den Anfang des Codes, wo du auch z.B. die Schläger und den Ball lädst. DrawImage Background,0,0 kommt vor alle anderen DrawImage Befehle So muss es gehen! robotx Edit: Ich habe es bei mir mal getestet und es funktioniert einwandfrei. Jo funtzt!!!!! Danke für eure Bemühungen!!! |
||
![]() |
Schranz0r |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Repeat
CLS ;<<<<<<--------------GANZ AM ANFANG!! Drawimage Background,0,0 alles andere Flip ;<<<<<<<<<<-------- AM Ende!!! Until keyhit(1) Versuchs mal so ! Weil in deinen Code zeichnest du die Bilder, löschts sie, und flipst sie dann in den Vordergrund... kann net gehen |
||
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!HAUPTSACH et kost VIEL!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
- Zuletzt bearbeitet von Schranz0r am Fr, Sep 22, 2006 13:50, insgesamt 2-mal bearbeitet
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Er hat
Code: [AUSKLAPPEN] Flip
Cls Das kommt auf exakt das gleiche heraus, womit dein Post sinnfrei wird, Schranz0r. |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group