Was ist falsch an meinem Code?

Für allgemeine Fragen zur Programmierung mit PureBasic.
polo-mo
Beiträge: 6
Registriert: 14.09.2004 16:05

Was ist falsch an meinem Code?

Beitrag von polo-mo »

Hi Leute.

Also erstmal grundlegendes:
Ich will ein kleines Game proggen, wo aus 9 Hüten Köpfe kommen und man diese schlagen muss. Ich hab mit einem 3d Programm einen Kopf erstellt, 2-D Bilder davon gemacht und will diese Hüten kommen lassen.

Aber soweit reicht mein Problem noch gar nicht:
Wenn ich die Bilder der Köpfe laden will, kommt ein Auszug des Codes, wo die Zeile

Code: Alles auswählen

 LoadSprite(30+x,"felix" + Str(x) + ".jpg",0)
schwarz hinterlegt ist.

Hier der Teil, wo anscheinend der Fehler steckt... :? Ich verstehs nicht.

Code: Alles auswählen

InitSprite()


OpenScreen(1024,768,16,"Hau den Felix!")

LoadSprite(0,"background.jpg",0)
For x = 0 To 9 
 LoadSprite(30+x,"felix" + Str(x) + ".jpg",0)
 TransparentSpriteColor(30+x,255,0,255)
Next
For x=1 To 4
LoadSprite(10+x,"gfx/hammer"+Str(x)+".jpg",0)
TransparentSpriteColor(10+x,255,255,255)
Next
LoadSprite(20,"gfx/felixflach.jpg",0)
TransparentSpriteColor(20,255,255,255)

[/code]


Ach ja, ich arbeite noch nicht so lange mit Purebasic, hab aber schon mit leichteren Programmierprogrammen Erfahrung.
Zuletzt geändert von polo-mo am 14.09.2004 22:58, insgesamt 1-mal geändert.
Bin neu und will ein kleines Spiel proggen.
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

Hi
Ich nehme mal an, dass diese Zeile im Debuggerfenster schwarz markiert ist. Schau mal was in der Statusleiste des Debuggerfensters steht, er kann die Bilder wahrscheinlich nicht laden.

greetz
remi
Benutzeravatar
Franky
Beiträge: 1132
Registriert: 29.08.2004 16:31
Wohnort: Münsterland
Kontaktdaten:

Beitrag von Franky »

Dir fehlt auf jeden fall schon mal ein JPEGImageDecoder(), bevor du die sprites laden kannst.

Ansonsten, welchen fehler gibt dir der Debugger denn aus?

>>Edit:Verflucht seist du remi :twisted:
Falsch zugeordnetes Zitat des Tages: "O'zapft is" - Edward Snowden :)
polo-mo
Beiträge: 6
Registriert: 14.09.2004 16:05

Beitrag von polo-mo »

Ok, danke schonmal.

Unten im Debuggerfenster steht: Sprite filename not found!

...Oh ja, jetzt sehe ich meinen Fehler. Die Zeile for x=0 to 9 müsste for x= 1 to 9 heißen - klar dass es die Datei felix0.jpg nicht findet... :|

Nja, auf jeden Fall danke dass ihr trotz meiner Dummheit geantwortet habt^^ Wäre trotzdem nett, wenn ihr den Thread erstmal für den Fall weiterer Fehler offen lassen würdet! :D
Bin neu und will ein kleines Spiel proggen.
Benutzeravatar
Rob
Shadow Admin
Beiträge: 258
Registriert: 26.08.2004 01:39
Kontaktdaten:

Beitrag von Rob »

Weitere Fehler in dem kurzen Codeschnipsel sind wohl recht unwahrscheinlich.

Mach besser für jede Frage einen eigenen Thread auf, so kann man leichter suchen.
Build a man a fire and he's warm for a day. Set a man on fire and he's warm for the rest of his life
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

polo-mo hat geschrieben:Wäre trotzdem nett, wenn ihr den Thread erstmal für den Fall weiterer Fehler offen lassen würdet! :D
Was zahlst du mir? :mrgreen:

Übrigens, solange jemand aus seinen Fehlern lernt, ist es nicht weiter schlimm wenn er hier postet, wie dämlich das Problem auch sein mag.

*sichoutend*: Auch ich saß schonmal mindestens eine halbe Stunde vor einem Code mit ähnlichem Fehler.
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
polo-mo
Beiträge: 6
Registriert: 14.09.2004 16:05

Beitrag von polo-mo »

dann bin ich ja beruhigt^^
Bin neu und will ein kleines Spiel proggen.
polo-mo
Beiträge: 6
Registriert: 14.09.2004 16:05

Beitrag von polo-mo »

Okay, kleine Frage. Bin ja nun doch noch ziemlicher Anfänger in PB. Gibt es irgendeine Art von Delay, wo man aber die Maus trotzdem noch weiterbewegen kann und das Spiel z.B. per Escape beenden kann(das Beenden ist hier nicht gefragt, nur wie man die Maus während eines Delays bewegen kann, bzw. wie man das umgehen kann...
Bin neu und will ein kleines Spiel proggen.
sbehrens
Beiträge: 274
Registriert: 08.09.2004 18:41
Kontaktdaten:

Beitrag von sbehrens »

polo-mo hat geschrieben:Gibt es irgendeine Art von Delay, wo man aber die Maus trotzdem noch weiterbewegen kann und das Spiel z.B. per Escape beenden kann
Den

Code: Alles auswählen

Delay(x)
Befehl kannst du ohne Probleme einsetzen, ohne dass man eigentlich merkt, das überhaupt ein Delay() im Prog ist, außer das die Prozessorauslastung deutlich sinkt! (zB. von 100% auf 5% oder sogar weniger) Ich persönlich benutze immer einen Delay von 20ms, im Forum sehe ich eigentlich nur 1ms Delays.

mfG
Basti
enjoy life... while you can!
polo-mo
Beiträge: 6
Registriert: 14.09.2004 16:05

Beitrag von polo-mo »

okay danke, hab aber meine frage nicht kobkret genug gemacht^^.
Ich will, dass sich eine Variable autmomatisch nur jede x Millisekunden, oder auch wenn der Spieler auf einen bestimmten Knopf drückt, ändert. Die Millisekunden hätte ich gerne von einer Variablen abhängig, aber ich habe im Moment keinen blassen Schimmer wie ich das Ganze anstellen soll(auch das mit dem Drücken)...
Bin neu und will ein kleines Spiel proggen.
Antworten