Space Shooter Type
Übersicht

![]() |
joshmamiBetreff: Space Shooter Type |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo Community!
Ich lese gerade dieses Tutorial http://de.wikibooks.org/wiki/B...ceShooter) Und mache mich gerade daran den Spaceshooter zu programmieren. Inzwischen habe ich begriffen dass ich die Schüsse mit TYPE's realisieren muss.Aber wie sorge ich dafür dass sich der Name jedes Schusses ändert? Wenn ich habe(in meiner Hauptschleife) BlitzBasic: [AUSKLAPPEN]
Dann wird der Schuss ja bei jedem Druck der Taste wieder zurückgeholt! |
||
Mfg Joshmami |
- Zuletzt bearbeitet von joshmami am Di, März 01, 2011 20:12, insgesamt einmal bearbeitet
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
So wie es aussieht, nutzt du hier nur einen der Type-Einträge, indem du ihn in einer Variable festhältst.
BlitzBasic erstellt automatisch eine Liste von allen erstellten Type-Einträgen. Wenn du nun alle nutzt, wirst du auch mehr Schüsse sehen und nicht nur den letzten erstelllten: BlitzBasic: [AUSKLAPPEN] If KeyDown(57) Then mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
![]() |
joshmami |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jetzt wird garnichts angezeigt... ![]() Es kommt aber auch keine Fehlermeldung ![]() |
||
Mfg Joshmami |
![]() |
HolzchopfMeisterpacker |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aus dem kaputten Thread entnommen:
Midimaster hat Folgendes geschrieben: Bei NEW erzeugst Du jedesmal eine neue Variable vom Typ Schuss.
Um die alle einzeln anzusprechen kommt du nicht ohne FOR/EACHIN/NEXT aus. BlitzBasic: [AUSKLAPPEN] For locSchuss.SchussTyp= Each SchussTyp Benenne um Himmels willen den TYPE, die Variable und die Bilder je mit einem unterschiedlichen Namen: z.b SchussTyp locSchuss neuSchuss SchussBild |
||
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BY ♫ BinaryBorn - Yogurt ♫ (31.10.2018) Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Jetzt wäre der ganze aktuelle Code hilfreich. | ||
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 THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
joshmami |
![]() Antworten mit Zitat ![]() |
---|---|---|
Aktueller Code:
BlitzBasic: [AUSKLAPPEN]
|
||
Mfg Joshmami |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Eigentlich meinte ich den ganzen Code, also Hauptschleife + Funktionen. Denn so sollte es funktionieren - der Fehler wird wo anders liegen. | ||
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 THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
joshmami |
![]() Antworten mit Zitat ![]() |
---|---|---|
Oh,sorry,ganzer Code:
BlitzBasic: [AUSKLAPPEN]
Wobei ich als Bild(Nur zum Spaß) den Millenium Falken aus Star wars genommen hab und ein bewegter Sternenhintergrund ist auch dabei! |
||
Mfg Joshmami |
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
A) Du deklarierst keine Variable YPositionFalke:
Code: [AUSKLAPPEN] DrawImage Falke, XPositionFalke,650
was bedeutet, bei der 1. Benutztung ist sie null und die Geschosse... Code: [AUSKLAPPEN] Schuss.TypeShot\YPosition = 0 - 100
entstehen 100px über dem Sichtbaren bereich... Ich empfehle, die IDEal IDE zu benutzen und alle Variablen zu deklarieren - dann sieht man anhand der Farbe, ob die Variablen richtig geschrieben wurden usw. Ansonsten hilft dir bei sowas Debuglog ![]() |
||
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 THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das wichtigste beim Programmieren ist eine Methode zu entwickeln, mit der man die Fehler findet.
Ich habe z.B. gerade bei Deinem Code einfach folgende Ergänzungen eingefügt: BlitzBasic: [AUSKLAPPEN] If KeyHit(57) ...um herauszufinden, ob der Schuss überhaupt losgeht. BlitzBasic: [AUSKLAPPEN] DrawImage Falke, XPositionFalke,650 ...um festzustellen wo er sich gerade befindet und wieviele Schüsse unterwegs sind. Und das zusätzliche DRAWIMAGE dient mir dazu, festzustellen, ob das SchussBild überhaupt sichtbar ist. |
||
- Zuletzt bearbeitet von Midimaster am Mi, März 02, 2011 15:33, insgesamt 2-mal bearbeitet
![]() |
joshmami |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok,ich habe jetzt alles getan was du gesagt hast:
1.Beim Druck der Leertaste wird wie erwartet "feuer" ausgegeben 2.Nach dem ersten Druck steigt die Zahl wie zu erwarten rasend schnell, weil sie ja mit jedem Durchlauf der Hauptschleife erhöht wird 3.Es wird ohne Probleme der "Probeschuss" angezeigt Edit: Jetz hab ich die Lösung! Ich habe ihn noch anzeigen lassen wo der Schuss aktuell ist, dort wurde aber von Anfang an eine Minus Ziffer angezeigt weil YPositionFalke gar kein Wert zugewiesen wurde und ich beim Zeichnen des Falkens 650 als Wert verwendet hatte! Vielen Dank für den Tipp, mir die Werte ausgeben zu lassen! |
||
Mfg Joshmami |
![]() |
Midimaster |
![]() Antworten mit Zitat ![]() |
---|---|---|
Lass solche Entwicklerzeilen so lange wie möglich drin. du erfährst viel über das, was dein Programm eben nicht so tut, wie Du es erwartest.
Ich habe da mal ein Tutorial zum Fehlerfinden geschrieben. Vielleicht liest Du ja mal Kapitel IV durch.... https://www.blitzforum.de/foru...620#354620 Das größte Problem bei Anfänger ist, dass Sie solche Informationszeilen entweder gar nicht aufnehmen und wenn ja, dann gleich wieder entfernen, weil das ja den Spielscreen "verunreinigt". Dabei würden sie einem oft auch noch Stunden später bei einem weiteren Problem auf den richtigen Lösungsweg führen. |
||
![]() |
joshmami |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja , Danke, werd ich machen.Und meine Infozeilen lass ich erst mal drin... | ||
Mfg Joshmami |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group