Exe läuft nicht

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

Flori-D

Betreff: Exe läuft nicht

BeitragMi, Dez 31, 2003 13:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi.Ich hab jetzt mein Game fertig und wollte eine Exe draus machen.
Das kompilieren ging problemlos, aber wenn ich die Exe starten will kommt für Ungefähr 3sek. ein schwarzer Bildschirm und dann komme ich zrück in meinen Ordner. Crying or Very sad Woran liegt das?
BB is Macht!

Homepage: www.flori-d.de

Slayer

BeitragMi, Dez 31, 2003 14:35
Antworten mit Zitat
Benutzer-Profile anzeigen
hmmmm ??

Code ?

Läuft's aus IDE heraus ?

Ohne code kann man dir schlecht helfen ?

Hast Du es schon mal auf einem anderen rechner probiert ?
AMD2500XP, SB5.1, DX9, 512MB DDR333,
XPPro SP1a,ATI 9800SE 256bit 128MB,B3B, B+ immer die neue Version

Flori-D

BeitragMi, Dez 31, 2003 14:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Ne hab ich nicht.Wenn ich as Blitz starte gehts nur aus der Exe nicht.

Code: [AUSKLAPPEN]
Graphics 640,480
SetBuffer BackBuffer()
hinter = LoadImage("stars.bmp")
schiff = LoadImage("R4.bmp")
alienbild = LoadImage("Rock1.bmp")
rakete = LoadImage("torpedo0016.bmp")
explosion = LoadAnimImage("explodeA.bmp", 60,46, 0,6)
schusston = LoadSound("soundfx11.wav")
trefferton = LoadSound("soundfx25.wav")
tiles = LoadImage ("blocks1.bmp")
maus = LoadImage ("pointer.bmp")



Dim Rak(100,2)
Dim Alien(50,2)
Dim AlienExplodiert(50,1)
X = 305
Y = 420



; Graphik für Menüpunkt erzeugen

stein = CreateImage(32,32)
SetBuffer ImageBuffer(stein)
DrawImageRect tiles, 0, 0, 444, 308, 32, 32
ScaleImage stein, 8, 2

; Graphik für aktiven Spielstein erzeugen

aktivstein = CreateImage(32,32)
SetBuffer ImageBuffer(aktivstein)
DrawImageRect tiles, 0, 0, 2, 342, 32, 32
ScaleImage aktivstein, 8, 2

; Menü definieren

Dim MenuZeile(3) : Dim MenuName$(3)
MenuZeile(1) = 100 : MenuName$(1) = "Start"
MenuZeile(2) = 200 : MenuName$(2) = "Einstellungen"
MenuZeile(3) = 300 : MenuName$(3) = "Ende"

;
; Hauptmenü-Schleife
;

Repeat
 TileBlock hinter
 Menu = 0
 X = MouseX()
 Y = MouseY()
   
 For I=1 To 3
  If ImageRectOverlap (maus, X, Y, 192, 100*I, 256, 64) Then
   DrawImage aktivstein, 192, I * 100
   Menu = I
  Else
   DrawImage stein, 192, I * 100
  EndIf
  Text (640 - StringWidth( MenuName$(I) )) / 2, I*100 + 12, MenuName$(I)
 Next

 DrawImage maus, X,Y
 Flip

 If MouseHit(1) Then
  If Menu = 1 Then Start()
  If Menu = 2 Then Einstellungen()
  If Menu = 3 Then Ende()
 EndIf
 
 Until KeyHit(1)
End

;
; Funktionen für Menüpunkte
;


Function Einstellungen()
 Repeat
  Cls
  Text 100,100, "Hier dran wird noch gearbeitet.Zrück mit Esc."
  Flip
 Until KeyHit(1)
End Function

Function Ende()
 Repeat
 Cls
 Text 100,100, "Um zu beenden bitte Esc oder Leertaste drücken.."
 Flip
 Until KeyHit(1) Or KeyHit(57)
 End
End Function

Function Start()
 Repeat
  Cls
 
hinter = LoadImage("stars.bmp")
schiff = LoadImage("R4.bmp")
alienbild = LoadImage("Rock1.bmp")
rakete = LoadImage("torpedo0016.bmp")
explosion = LoadAnimImage("explodeA.bmp", 60,46, 0,6)
schusston = LoadSound("soundfx11.wav")
trefferton = LoadSound("soundfx25.wav")


;
; Hauptschleife
;

X = 400
Y = 500
Repeat
 Cls
 H = H+1
 If H=200 Then H=0
 TileBlock hinter, 0,H
 DrawImage schiff, X,Y
 
 

;Punkte Anzeige
Text 400,10, "Sie haben "+punkte+" Punkte
Punkte = Punkte +1


; Schuß-Test
 If KeyHit(57) Then
 Schuss = Schuss + 1
 If Schuss = 101 Then Schuss = 1
 Rak(Schuss,0) = 1
 Rak(Schuss,1) = X+10
 Rak(Schuss,2) = Y-19
 PlaySound(schusston)
EndIf

; ggf. Raketen zeichnen
 For I=1 To 100
  If Rak(I,0) = 1 Then
   DrawImage rakete, Rak(I,1), Rak(I,2)
   Rak(I,2) = Rak(I,2) - 10
 EndIf
Next

; Pfeiltasten abfragen
 If KeyDown(200) = 1 Then Y = Y - 1
 If KeyDown(208) = 1 Then Y = Y + 1
 If KeyDown(205) = 1 Then X = X + 2
 If KeyDown(203) = 1 Then X = X - 2


; Rand-Überschreitung verhindern
 If X < 0 Then X = 0
 If X > 609 Then X = 609
 If Y < 0 Then Y = 0
 If Y > 449 Then Y = 449

; Kollision testen
 For I=1 To 100
  If Rak(I,0) <> 0 Then
   For J=1 To 50
    If ImagesOverlap(alienbild, Alien(J,1), Alien(J,2), rakete,Rak(I,1),Rak(I,2)) Then
     PlaySound(trefferton)
     Alien(J,0) = -1
    EndIf
   Next
  EndIf
 Next


; Explosion Alien zeichnen
  For I=1 To 50
   If Alien(I,0) = -1 Then
    If AlienExplodiert(I,1) + 100 < MilliSecs() Then
     AlienExplodiert(I,0) = AlienExplodiert(I,0) + 1
     AlienExplodiert(I,1) = MilliSecs()
     
If AlienExplodiert(I,0) = 6 Then
   AlienExplodiert(I,0) = 0
   AlienExplodiert(I,1) = 0
   Alien(I,0) = 0
  EndIf
 EndIf
 DrawImage explosion, Alien(I,1), Alien(I,2), AlienExplodiert(I,0)
 EndIf
Next


;Kollision Komet-Spieler
For I=1 To 50
If ImagesOverlap(alienbild, Alien(I,1), Alien(I,2), schiff ,X,Y)  Then
PlaySound(trefferton)
Alien(I,0) = -1
Print ("Game Over")
Delay 900000000
EndIf
Next





; Alien-Steuerung
 For I=1 To 50
  If Alien(I,0) = 0 Then
   Alien(I,0) = Rand(100,400)
   Alien(I,1) = Rand(-20,640)
   Alien(I,2) = Rand(-100,0)
  EndIf
 
If Alien(I,0) <> -1 Then
  Alien(I,2) = Alien(I,2) + 1
  Alien(I,1) = 320 + Sin( Alien(I,2) ) * Alien(I,0)
EndIf
 
 If Alien(I,2) > 480 Then Alien(I,0) = 0

 If Alien(I,0) <> -1 Then DrawImage alienbild, Alien(I,1), Alien(I,2)
Next

 

  Flip
 Until KeyHit(1)
Until KeyHit(1)
End Function
BB is Macht!

Homepage: www.flori-d.de

Slayer

BeitragMi, Dez 31, 2003 14:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, ich vermute das du das ganze aus der IDE im Debug mod laufen lässt, und das es dann im Fenster modus läuft.

Da ich die gfx/sound nicht habe kann ich es jetzt schlecht bei mir testen,
aber soweit ich weis musst du den aktuellen buffer wieder auf backbuffer stellen.

so wie ich das seh ist er noch im imagebuffer.

Und ich denke wenn's im windows mod läuft, biegt win es mit dem buffer so hin das es in der IDE läuft.
AMD2500XP, SB5.1, DX9, 512MB DDR333,
XPPro SP1a,ATI 9800SE 256bit 128MB,B3B, B+ immer die neue Version

Flori-D

BeitragMi, Dez 31, 2003 16:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Und wie ändere ich das?
BB is Macht!

Homepage: www.flori-d.de

Flori-D

BeitragMi, Dez 31, 2003 16:46
Antworten mit Zitat
Benutzer-Profile anzeigen
So hab da jetzt Unten noch einen BackBffer hingekleistert.Jetzt läuft das Game flüssiger aber die Exe läuft immer noch nicht.
Code: [AUSKLAPPEN]
Graphics 640,480
SetBuffer BackBuffer()
hinter = LoadImage("stars.bmp")
schiff = LoadImage("R4.bmp")
alienbild = LoadImage("Rock1.bmp")
rakete = LoadImage("torpedo0016.bmp")
explosion = LoadAnimImage("explodeA.bmp", 60,46, 0,6)
schusston = LoadSound("soundfx11.wav")
trefferton = LoadSound("soundfx25.wav")
tiles = LoadImage ("blocks1.bmp")
maus = LoadImage ("pointer.bmp")



Dim Rak(100,2)
Dim Alien(50,2)
Dim AlienExplodiert(50,1)
X = 305
Y = 420



; Graphik für Menüpunkt erzeugen

stein = CreateImage(32,32)
SetBuffer ImageBuffer(stein)
DrawImageRect tiles, 0, 0, 444, 308, 32, 32
ScaleImage stein, 8, 2

; Graphik für aktiven Spielstein erzeugen

aktivstein = CreateImage(32,32)
SetBuffer ImageBuffer(aktivstein)
DrawImageRect tiles, 0, 0, 2, 342, 32, 32
ScaleImage aktivstein, 8, 2

; Menü definieren

Dim MenuZeile(3) : Dim MenuName$(3)
MenuZeile(1) = 100 : MenuName$(1) = "Start"
MenuZeile(2) = 200 : MenuName$(2) = "Einstellungen"
MenuZeile(3) = 300 : MenuName$(3) = "Ende"

;
; Hauptmenü-Schleife
;

Repeat
 TileBlock hinter
 Menu = 0
 X = MouseX()
 Y = MouseY()
   
 For I=1 To 3
  If ImageRectOverlap (maus, X, Y, 192, 100*I, 256, 64) Then
   DrawImage aktivstein, 192, I * 100
   Menu = I
  Else
   DrawImage stein, 192, I * 100
  EndIf
  Text (640 - StringWidth( MenuName$(I) )) / 2, I*100 + 12, MenuName$(I)
 Next

 DrawImage maus, X,Y
 Flip

 If MouseHit(1) Then
  If Menu = 1 Then Start()
  If Menu = 2 Then Einstellungen()
  If Menu = 3 Then Ende()
 EndIf
 
 Until KeyHit(1)
End

;
; Funktionen für Menüpunkte
;


Function Einstellungen()
 Repeat
  Cls
  Text 100,100, "Hier dran wird noch gearbeitet.Zrück mit Esc."
  Flip
 Until KeyHit(1)
End Function

Function Ende()
 Repeat
 Cls
 Text 100,100, "Um zu beenden bitte Esc oder Leertaste drücken.."
 Flip
 Until KeyHit(1) Or KeyHit(57)
 End
End Function

Function Start()
 Repeat
  Cls
 
hinter = LoadImage("stars.bmp")
schiff = LoadImage("R4.bmp")
alienbild = LoadImage("Rock1.bmp")
rakete = LoadImage("torpedo0016.bmp")
explosion = LoadAnimImage("explodeA.bmp", 60,46, 0,6)
schusston = LoadSound("soundfx11.wav")
trefferton = LoadSound("soundfx25.wav")


;
; Hauptschleife
;

X = 400
Y = 500
Repeat
 Cls
 H = H+1
 If H=200 Then H=0
 TileBlock hinter, 0,H
 DrawImage schiff, X,Y
 
 

;Punkte Anzeige
Text 400,10, "Sie haben "+punkte+" Punkte
Punkte = Punkte +1


; Schuß-Test
 If KeyHit(57) Then
 Schuss = Schuss + 1
 If Schuss = 101 Then Schuss = 1
 Rak(Schuss,0) = 1
 Rak(Schuss,1) = X+10
 Rak(Schuss,2) = Y-19
 PlaySound(schusston)
EndIf

; ggf. Raketen zeichnen
 For I=1 To 100
  If Rak(I,0) = 1 Then
   DrawImage rakete, Rak(I,1), Rak(I,2)
   Rak(I,2) = Rak(I,2) - 10
 EndIf
Next

; Pfeiltasten abfragen
 If KeyDown(200) = 1 Then Y = Y - 1
 If KeyDown(208) = 1 Then Y = Y + 1
 If KeyDown(205) = 1 Then X = X + 2
 If KeyDown(203) = 1 Then X = X - 2


; Rand-Überschreitung verhindern
 If X < 0 Then X = 0
 If X > 609 Then X = 609
 If Y < 0 Then Y = 0
 If Y > 449 Then Y = 449

; Kollision testen
 For I=1 To 100
  If Rak(I,0) <> 0 Then
   For J=1 To 50
    If ImagesOverlap(alienbild, Alien(J,1), Alien(J,2), rakete,Rak(I,1),Rak(I,2)) Then
     PlaySound(trefferton)
     Alien(J,0) = -1
    EndIf
   Next
  EndIf
 Next


; Explosion Alien zeichnen
  For I=1 To 50
   If Alien(I,0) = -1 Then
    If AlienExplodiert(I,1) + 100 < MilliSecs() Then
     AlienExplodiert(I,0) = AlienExplodiert(I,0) + 1
     AlienExplodiert(I,1) = MilliSecs()
     
If AlienExplodiert(I,0) = 6 Then
   AlienExplodiert(I,0) = 0
   AlienExplodiert(I,1) = 0
   Alien(I,0) = 0
  EndIf
 EndIf
 DrawImage explosion, Alien(I,1), Alien(I,2), AlienExplodiert(I,0)
 EndIf
Next


;Kollision Komet-Spieler
For I=1 To 50
If ImagesOverlap(alienbild, Alien(I,1), Alien(I,2), schiff ,X,Y)  Then
PlaySound(trefferton)
Alien(I,0) = -1
Print ("Game Over")
Delay 900000000
EndIf
Next





; Alien-Steuerung
 For I=1 To 50
  If Alien(I,0) = 0 Then
   Alien(I,0) = Rand(100,400)
   Alien(I,1) = Rand(-20,640)
   Alien(I,2) = Rand(-100,0)
  EndIf
 
If Alien(I,0) <> -1 Then
  Alien(I,2) = Alien(I,2) + 1
  Alien(I,1) = 320 + Sin( Alien(I,2) ) * Alien(I,0)
EndIf
 
 If Alien(I,2) > 480 Then Alien(I,0) = 0

 If Alien(I,0) <> -1 Then DrawImage alienbild, Alien(I,1), Alien(I,2)
Next

SetBuffer BackBuffer()

  Flip
 Until KeyHit(1)
Until KeyHit(1)
End Function
BB is Macht!

Homepage: www.flori-d.de

Slayer

BeitragMi, Dez 31, 2003 17:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Kannst Du mal die ganze Resourcen zum Download hochladen ?

oder sie mir als Mail schicken ?

fs-softec@aon.at


Ich geh jetzt erstmal essen, vieleicht komm ich dann heut noch dazu das ganze bei mir zu prüfen.
AMD2500XP, SB5.1, DX9, 512MB DDR333,
XPPro SP1a,ATI 9800SE 256bit 128MB,B3B, B+ immer die neue Version

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group