Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Moinsen
weiß net ob ich visual basic fragen auch hier reinpacken kann aber ich hoffe mal das passt ;D
also ich habe ein kleines Pacman (2D) programmiert mit Visual Basic. Wenn ich dass im Editor (Microsoft Visual Basic 6.0 Professional) starte klappt alles wunderbar wie es sein sollte. Doch nun das Problem:
Wenn ich Datei-> Exe erstellen mache, und diese dann ausführe, kommt, nachdem das Programm zum nächsten Fenster wechselt, eine Fehlermeldung meines Visual Studio Just-In-Time Debuggers. Da dieser bei mir jedoch leider nicht funktioniert habe ich keine richtigen Anhaltspunkte woran es liegen kann
hier ein screen der Meldung:
Hat jemand evtl eine Idee woran das liegen kann? Wenn ich dass Spiel im Kompiler starte klappt es aber warum nach dem kompilieren zur .exe nicht mehr?
Bin für jede Hilfe dankbar!
mfG
edit edit: gut ich hab den Fehler eingrenzen können und es liegt an einer von 2 Funktionen (glaub ich) weil wenn ich diese Funktionen nicht aufrufe, alles wunderbar funktioniert. EIne Funktion wäre die Kollisionsabfrage und die andere die Funktion zum Bewegen des Geists.
Die Kollisionsabfrage sieht ungefähr so aus:
C-/C++-Quelltext
1
2
3
4
5
6
7
If image.Left + image.Width > CommandButton2.Left And image.Left < CommandButton2.Left + CommandButton2.Width Then
If image.Top + image.Width > CommandButton2.Top And image.Top < CommandButton2.Top + CommandButton2.Height Then
image.Left = Leftalt
image.Top = Topalt
End If
End If
und dies halt mit jedem Commandbutton der vorhanden ist gefolgt von einem Aufruf der Funktion Essen, also ob Man einen "Punkt" berührt hat, diese Funktion ist wiefolgt:
C-/C++-Quelltext
1
2
3
4
5
6
7
8
9
10
11
Private Function Punkte_essn(ByVal Punkt As Object)
If Image1.Left + Image1.Width -8> Punkt.Left And Image1.Left < Punkt.Left + Punkt.Width Then
If Image1.Top + Image1.Width -10> Punkt.Top And Image1.Top < Punkt.Top + Punkt.Height -10 Then
If Punkt.Visible = True Then
Punkt.Visible = False
Punkte = Punkte +10
Label1 ="Punkte: "& Punkte
End If
End If
End If
End Function
die andere Funktion zum Geister bewegen sieht wie folgt aus(wieder Zeilen mehrfach vorhanden für jedes existierende Objekt):
Man sieht schon, ich muss anscheinend fast alle meine Funktionen posten weil gerade die mit den meisten aufrufen fehler haben müssen
Die Funktion Geist_Collision ist wie die Check_Collision funktion aufgebaut, deswegen will ich sie hier nicht nochmal schreiben, sie ist nur auf andere Objekte bezogen.
So die letzte Funktion wäre dann noch Richtungändern, diese ist wie folgt aufgebaut:
C-/C++-Quelltext
1
2
3
4
5
6
Private Function Richtungändern(ByVal bild As Object, ByVal bild2 As Object)
If bild.Left = bild2.Left And bild.Top = bild2.Top Then
Randomize
Richtunggeist = Int((4* Rnd) +1)
End If
End Function
Geschaft *sigh* hoffe jetzt kann man mir eher helfen, wo ich doch jetzt meinen halben Code gepostet habe