beim test vom programm werden die bilder nicht gezeigt

Übersicht BlitzBasic Allgemein

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen

 

kevinb

Betreff: beim test vom programm werden die bilder nicht gezeigt

BeitragSa, Jul 18, 2009 11:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich hab mir ein test aus dem internet geholt und alles so gemacht wie es dort steht es geht ja alles! also fast alles die bilder werden beim testen nicht angezeigt woran liegt das???

Code: [AUSKLAPPEN]
AppTitle "Ping-Pong"

Graphics 1024,798,32,2
SetBuffer BackBuffer()
Global frametimer = CreateTimer(60)
SeedRnd MilliSecs()

Global kugel=LoadImage("Kugel.png")
MidHandle kugel
MaskImage kugel,255,255,255

Global spieler1=LoadImage("gfx\pongspieler1.bmp")
MidHandle spieler1
MaskImage spieler1,255,255,255

Global spieler2=LoadImage("gfx\pongspieler2.bmp")
MidHandle spieler2
MaskImage spieler2,255,255,255

Global begrenzung=LoadImage("gfx\Seitenwand.bmp")
MaskImage begrenzng,255,255,255


Global xsp1=xmax/2
Global xsp2=xmax/2
Global sp1st
Global sp2st
Global xkugel#
Global ykugel#
Global winkel
Global geschwindigkeit=5
Global fehlersp1
Global fehlersp2
Global beweglichkeit

ClsColor 255,0,0
Repeat
WaitTimer (frametimer)

beweglichkeit=geschwindigkeit

For z2=0 To 1
If z2=1 Then x=xmax-50 Else x=0
For z=0 To ymax/50
DrawImage begrenzung,x,y*50
Next
Next

If KeyHit(14) Then resetkugel

If KeyHit(2) Then sp1st=sp1st+1
If KeyHit(3) Then sp2st=sp2st+1

If sp1st>2 Then sp1st=0
If sp1st>2 Then sp1st=0

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

If KeyDown(203) And sp1st=1 Then xsp1=sp1-beweglichekeit
If KeyDown(205) And sp1st=1 Then xsp1=sp1+beweglichekeit

If KeyDown(44) And sp2st=1 Then xsp2=sp2-beweglichekeit
If KeyDown(45) And sp2st=1 Then xsp2=sp2+beweglichekeit

If sp1st=2 Then xsp1=xsp1+MouseXSpeed()
If sp2st=2 Then xsp2=xsp2+MouseXSpeed()

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

resetkugel

If ImagesCollide(spieler1,xsp1,ymax-10,0,kugel,xkugel,ykugel,0) Then
 winkel=360-winkel
 abweichung=2*(xsp1-xkugel)
 winkel=winkel+abweichung
EndIf

If ImagesCollide(spieler2,xsp2,10,0,kugel,xkugel,ykugel,0)Then
 Winkel=360-winkel
 abweichung=2*(xsp2-xkugel)
 winkel=winkel-abweichung
EndIf

If winkel>360 Then winkel=winkel-360
If winkel<0 Then winkel=winkel+360

If xkugel<60 Then
winkel=180-winkel
EndIf

If xkugel>xmax-60 Then
winkel=180-winkel
EndIf

If ykugel<-10 Then
fehlersp2=fehlersp2+1
resetkugel
EndIf

If ykugel>ymax+10 Then
fehlersp1=fehlersp1+1
resetkugel
EndIf

xkugel=xkugel+Cos(winkel)*geschwindigkeit
ykugel=ykugel-Sin(winkel)*geschwindigkeit

Text 200,300,"Geschwindigkeit:" +geschwindigkeit
Text 500,300,"Spielstand: "+fehlersp2 +"   :  " + fehlersp1
Text 55,ymax-25,"Spieler1"
If sp1st>0 Then
         If sp1st=2 Then Text 120,ymax-25,"Maussteuerung" Else Text 120,ymax-25,"Tastartursteuerung"
         Else Text 120,ymax-25,"Computer
EndIf
:If spieler1man>0 Then Text 250,ymax-25,scorep1

Text 55,5,"Spieler2"
If sp2st=0 Then
 If sp2st=2Then
  Text 120,5,"Maussteuerung"
Else
  Text 120,5,"Tastatursteuerung"
 EndIf
Else
  Text 120,5,"Computer"
EndIf


DrawImage kugel,xkugel,ykugel
DrawImage spieler1,xsp1,ymax-10
DrawImage spieler2,xsp2,10
Cls
Flip
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)
End Function


Das habe ich als code stehen und wen ich es testen will kommt immer
lllegal memory adress

Nicdel

BeitragSa, Jul 18, 2009 11:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Sind alle Bilddateien ("kugel.png", usw.) im selben Ordner, wie das Programm? Es ist besser, wenn du selber lernst (z.b. mit Rob's BB-Tutorial) als alles aus dem Internet zu kopieren.

Edit: Soweit, wie Xeres hab ich gar nicht runter geschaut....
Noch was:
Code: [AUSKLAPPEN]
Graphics 1024,798,32,2

Es sollte normalerweise 768 heißen.

Und bei einem Timer immer Flip 0 verwenden.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7
  • Zuletzt bearbeitet von Nicdel am Sa, Jul 18, 2009 11:38, insgesamt 4-mal bearbeitet

Xeres

Moderator

BeitragSa, Jul 18, 2009 11:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]
Cls
Flip

Daran liegt's. Du könntest ja mal langsam anfangen, die Tipps die man dir gibt zu befolgen, und zu versuchen, selbst zu verstehen was du da machst.
Immer neue Themen zu kopierten Codes zu eröffnen macht dich ganz schnell ganz unbeliebt.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Duempel

BeitragSa, Jul 18, 2009 11:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Und der Fehler ist auch wieder hier:
Code: [AUSKLAPPEN]
Global begrenzung=LoadImage("gfx\Seitenwand.bmp")
MaskImage begrenzng,255,255,255

MaskImage begrenzung!!!

Darauf wurdest du aber auch schon in deinen anderen Threads hingewiesen!

Und schon wieder hast du xmax, ymax etc nicht definiert...
 

kevinb

Betreff: öööhm

BeitragSa, Jul 18, 2009 11:41
Antworten mit Zitat
Benutzer-Profile anzeigen
hey ne so ganz isses ja nich
ich hab vorgestern mit blitzbasic lernen angefangen und hilfen aus dem internet gesucht und da waren ca 80 seiten die ich mir ausgedruckt habe und täglich durchlese
und da is dan als übung ganz unten ma son halb fertiger code drin und den hab ich genommen!

wene mir nich blaubst guckl selber

http://de.wikibooks.org/wiki/B...y-Tutorial

Nicdel

BeitragSa, Jul 18, 2009 11:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Nimm als Tutorial lieber Rob's BB-Tutorial. Damit hab ich's auch gelernt und es ging sehr schnell. Und ich musste das BlitzForum nicht mit kopierten Codes nerven.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7
 

kevinb

Betreff: äähm

BeitragSa, Jul 18, 2009 11:46
Antworten mit Zitat
Benutzer-Profile anzeigen
hast du da vllt ma nen link für die seite wo dus her hast?

Nicdel

BeitragSa, Jul 18, 2009 11:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Seite ist www.robsite.net. Ein ganzes Paket mit verschiedenen BB-Tutorials ist hier: http://robsite.net/files/0000/...orials.zip
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7
 

kevinb

Betreff: aber

BeitragSa, Jul 18, 2009 12:07
Antworten mit Zitat
Benutzer-Profile anzeigen
hey aber es kommt doch immer wen ich es starten will

lllegal memory adress

und das heißt doch eig das er die bilder nich findet weil ein falscher pfad angegeben wurde

und ich hab auch schon da im internet geguckt und so ausgefürt wie es auf meinem tutorial steht das ich mir ausgedruckt habe

also ich hab bei mir auf dem desktop ein ordner gemacht der ping pong heißt und dadrine einen unterordner namens gfx in dem ich die bilder gespiechert habe und in dem ordner ping-pong hab ich das programm gespiechert.
Dan müste der pfad doch eig. gfx\Kugel.bmp sein oder???

Nicdel

BeitragSa, Jul 18, 2009 12:09
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn das Bild wirklich "kugel.bmp" heißt... Dann ja.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

DaysShadow

BeitragSa, Jul 18, 2009 12:20
Antworten mit Zitat
Benutzer-Profile anzeigen
Falls du die Bilder von der Seite einfach nur gespeichert hast, solltest du festgestellt haben dass es PNG sind und nicht BMP, also lädts du auch nichts ein, ob deine Bilder nu im gfx Ordner liegen oder in Bagdad ist egal.

Zudem scheint der Code nichts zu sein, Anpassen der Pfade mit richtiger Endung lässt das "Spiel" zwar laufen, aber man hat nur einen Ball der in der oberen linken Ecke zappelt und den Score nach oben treibt.

Mit Copy&Paste lernt man nichts, überleg dir was du machen willst, such dir die Befehle die du brauchst und fang an zu schreiben.
Wenn du dann ein Problem hast wird dir sicher gerne geholfen.

MfG DaysShadow
Blessed is the mind too small for doubt
 

kevinb

Betreff: -.-

BeitragSa, Jul 18, 2009 14:25
Antworten mit Zitat
Benutzer-Profile anzeigen
ich hab sie von der seite gespiechert und dan in bmp umgewandelt

Nicdel

BeitragSa, Jul 18, 2009 14:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Und warum in bmp? Das ist das größte Format von allen. Oder besitzt du nur die Demo?
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7
 

kevinb

Betreff: ja

BeitragSa, Jul 18, 2009 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
ja ich hab nur die demo

The_Nici

BeitragSa, Jul 18, 2009 14:31
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie hast du sie umgewandelt?
 

kevinb

BeitragSa, Jul 18, 2009 14:38
Antworten mit Zitat
Benutzer-Profile anzeigen
also
ich erzähl jetz ma alles von den bilder

als erstes habe ich Sie von einer seite als Png gespeichert.
dann hab ich sie mit paint geöffnet und als Bmp gespeichert

DaysShadow

BeitragSa, Jul 18, 2009 14:54
Antworten mit Zitat
Benutzer-Profile anzeigen
jo, so hab ich das jetzt auch gemacht, die bilder lädt er ganz normal, es kommt kein fehler, der code ist trotzdem müll.

ich hoffe dein code vom ersten post ist nicht mehr aktuell, da lädts du eine "kugel.png" ein, was ja mit deiner demoversion nicht geht.

MfG DaysShadow
Blessed is the mind too small for doubt
 

kevinb

BeitragSa, Jul 18, 2009 14:57
Antworten mit Zitat
Benutzer-Profile anzeigen
und wieso ist er müll?

ich hab es jetz auch hinbekommen das keine fehlermeldung mehr kommt
aber die bilder kommen trotzdem nich

woran liegt das
und was ist alles am code müll?

er siet jetz so aus
Code: [AUSKLAPPEN]
AppTitle "Ping-Pong"

Graphics 1024,768,32,2
SetBuffer BackBuffer()
Global frametimer = CreateTimer(60)
SeedRnd MilliSecs()

Global kugel=LoadImage("Kugel.bmp")
MidHandle kugel

Global spieler1=LoadImage("pongspieler1.bmp")
MidHandle spieler1
MaskImage spieler1,255,255,255

Global spieler2=LoadImage("pongspieler2.bmp")
MidHandle spieler2
MaskImage spieler2,255,255,255

Global begrenzung=LoadImage("Seitenwand.bmp")
MaskImage begrenzung,255,255,255

Global xsp1=xmax/2
Global xsp2=xmax/2
Global sp1st
Global sp2st
Global xkugel#
Global ykugel#
Global winkel
Global geschwindigkeit=5
Global fehlersp1
Global fehlersp2
Global beweglichkeit

ClsColor 0,0,0
Repeat
WaitTimer (frametimer)

beweglichkeit=geschwindigkeit

For z2=0 To 1
If z2=1 Then x=xmax-50 Else x=0
For x=0 To ymax/50
DrawImage begrenzung,x,y*50
Next
Next

If KeyHit(14) Then resetkugel

If KeyHit(2) Then sp1st=sp1st+1
If KeyHit(3) Then sp2st=sp2st+1

If sp1st>2 Then sp1st=0
If sp1st>2 Then sp1st=0

If xsp1>xkugel And sp1st=1 Then xsp1=xsp1-beweglichkeit
If xsp1<xkugel And sp1st=1 Then xsp1=xsp1+beweglichkeit

If xsp2>xkugel And sp2st=2 Then xsp2=xsp2-beweglichkeit
If xsp2<xkugel And sp2st=2 Then xsp2=xsp2+beweglichkeit

If KeyDown(203) And sp1st=1 Then xsp1=sp1-beweglichekeit
If KeyDown(205) And sp1st=1 Then xsp1=sp1+beweglichekeit

If KeyDown(44) And sp2st=2 Then xsp2=sp2-beweglichekeit
If KeyDown(45) And sp2st=2 Then xsp2=sp2+beweglichekeit

If sp1st=2 Then xsp1=xsp1+MouseXSpeed()
If sp2st=2 Then xsp2=xsp2+MouseXSpeed()

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

resetkugel

If ImagesCollide(spieler1,xsp1,ymax-10,0,kugel,xkugel,ykugel,0) Then
 winkel=360-winkel
 abweichung=2*(xsp1-xkugel)
 winkel=winkel+abweichung
EndIf

If ImagesCollide(spieler2,xsp2,10,0,kugel,xkugel,ykugel,0)Then
 Winkel=360-winkel
 abweichung=2*(xsp2-xkugel)
 winkel=winkel-abweichung
EndIf

If winkel>360 Then winkel=winkel-360
If winkel<0 Then winkel=winkel+360

If xkugel<60 Then
winkel=180-winkel
EndIf

If xkugel>xmax-60 Then
winkel=180-winkel
EndIf

If ykugel<-10 Then
fehlersp2=fehlersp2+1
resetkugel
EndIf

If ykugel>ymax+10 Then
fehlersp1=fehlersp1+1
resetkugel
EndIf

xkugel=xkugel+Cos(winkel)*geschwindigkeit
ykugel=ykugel-Sin(winkel)*geschwindigkeit

Text 200,300,"Geschwindigkeit:" +geschwindigkeit
Text 500,300,"Spielstand: "+fehlersp2 +"   :  " + fehlersp1
Text 55,ymax-25,"Spieler1"
If sp1st>0 Then
         If sp1st=2 Then Text 120,ymax-25,"Maussteuerung" Else Text 120,ymax-25,"Tastartursteuerung"
         Else Text 120,ymax-25,"Computer
EndIf
:If spieler1man>0 Then Text 250,ymax-25,scorep1

Text 55,5,"Spieler2"
If sp2st=0 Then
 If sp2st=2Then
  Text 120,5,"Maussteuerung"
Else
  Text 120,5,"Tastatursteuerung"
 EndIf
Else
  Text 120,5,"Computer"
EndIf


DrawImage kugel,xkugel,ykugel
DrawImage spieler1,xsp1,ymax-10
DrawImage spieler2,xsp2,10
Cls
Flip
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)
End Function

The_Nici

BeitragSa, Jul 18, 2009 15:01
Antworten mit Zitat
Benutzer-Profile anzeigen
So gesagt: ALLES.
Er ist nicht eingerückt, hat viel zu viele Variablen die garnicht gebraucht werden, und funktioniert scheinbar nicht.
Tipp: Was auch immer das für ein Tutorial ist, benutz es nicht.

MfG

DaysShadow

BeitragSa, Jul 18, 2009 15:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe nicht deinen Code ausprobiert sondern den von der Wikibooks-Seite und wenn man diesen Code ausführt, hat man kein funktionierendes Pong-Spiel sondern einen zappelnden Ball in der linken oberen Ecke, ein gezeichnetes Bild der Abgrenzung auch dort oben links und zwei Texte, wovon einer der Score ist und dieser fleißig steigt.Müll also.

Wie The_Nici schon gerade schrieb, such dir was anderes oder fange besser gleich selbst an zu denken und zu schreiben, das ist sicher nicht böse gemeint sondern ein gut gemeinter Rat von Leuten die sich schon eine Weile mit der Programmierung beschäftigt haben.

MfG DaysShadow
Blessed is the mind too small for doubt
  • Zuletzt bearbeitet von DaysShadow am Sa, Jul 18, 2009 15:04, insgesamt einmal bearbeitet

Gehe zu Seite 1, 2  Weiter

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group