Du bist nicht angemeldet.

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!

Werbeanzeige

1

26.07.2011, 18:13

Problem mit dem Spawn-System

Hallo.
ich habe jetzt mal ein erstes eigenes spiel geproggt und hab zugleich ein problem.
denn mein Spieler kann sich zwar bewegen aber die Gegner werden nicht gespawnt.
der fehler muss irgendwo im game-konstruktor, in der gegner-klasse oder in der spawngegner funktion sein, aber ich finde ihn einfach nicht. ;(

Hier mal der code:
Klick

thx guys!

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

2

26.07.2011, 18:25

Habe grad deinen Code geladen. Wäre schön wenn du hier die Stellen einfach posten könntest. Habe keine lust mich durch den Code zu wühlen. Mir ist aber grad aufgefallen, dass beim Gegner nie eine Position gesetzt wird. In der Updatefunktion wird jeden Step die Position um 1 erhöht und dein Alive Wert dann zwischendurch auf false gesetzt. Kann es sein dass dein Gegner nur wenige Frames am leben ist, da er dann direkt gekillt wird? Habe jetzt nicht genau geguckt was dann mit ihm passiert;)
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

3

26.07.2011, 18:28

Und die Funktion "ZeigeAllesAn" rendert keinen Gegner. Von daher wird der Gegner vielleicht auch einfach nicht angezeigt. Debugging hilft dir sicherlich weiter;)
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

4

26.07.2011, 18:31

ich fände es halt etwas viel. ^^

die position wird i der funktion setposition in gegner.cpp gesetzt, diese funktion wird via konstruktor der game-klasse und durch die im main-loop ausgelöste kettenreaktion mehrfach ausgeführt.

ja die dinger sollen nur wenige frames leben. vielleicht leben sie auch nur werden dann so schnell gekillt, dass ich sie nicht sehe. :lol:
ich will halt dieses alte autospiel nachbauen wo man einen player hatte und ein paar felder, und dann kamen andere autos entgegen denen man ausweichen musste.
bislang will ich erstmal das es überhaupt läuft, das mit kollision und so ist wieder was anderes. :D

die framerate kann man aber nicht künstlich runterschrauben, oder?
hmm.... ein sf::Sleep(1) am anfang der hauptschleife, würde dieses das gewünschte ergebnis geben? ?(

th

5

26.07.2011, 18:34

hey schön, es klappt.
die gegner kommen nur nicht.
am anfang kommt einer aber der ist gleich wieder weg. ?(

6

26.07.2011, 19:34

Das ganze ließe sich doch über eine lliste lösen, wenn ich mich nicht irre.

Aber mein Compiler, MinGW, findet push_back nicht. :pinch:


ja kenne ichcj

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »MisterX« (26.07.2011, 21:53)


NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

7

26.07.2011, 19:42

ja die dinger sollen nur wenige frames leben. vielleicht leben sie auch nur werden dann so schnell gekillt, dass ich sie nicht sehe. :lol:

Wieso einige Frames? Dann würden sie auf jedem Rechner ja unterschiedlich lang überleben. Machs einfach Zeitabhängig.
die framerate kann man aber nicht künstlich runterschrauben, oder?
hmm.... ein sf::Sleep(1) am anfang der hauptschleife, würde dieses das gewünschte ergebnis geben? ?(

Probiers mal mit VSync.

Was soll sich mit einer Liste lösen lassen?

Kennst du die Editfunktion? :rolleyes:
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

8

26.07.2011, 21:52

einigewenige

Das Spawn-System.

thyxx

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »MisterX« (26.07.2011, 22:41)


NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

9

26.07.2011, 22:09

Sorry, bei solchen Antworten verkneif ichs mir zu helfen.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

10

26.07.2011, 22:18

dann weise mich bitte nochmal ein welche info du benötigst oder was du mir konkret empfiehlst für das erfragte spawn-system.
ansonsten hoffe ich das iich trotzzdem nohc atworten bekmme.
soll ich den kompletten code hier echt posten? :wacko:

EDIT: Durch die Liste könnte man dann doch mehrere genher einzeln auf true setzen. ist ja ein besonderes array, sozusagen. wie sollte man es dann sonst lösen. ich sehe jetzt ja nicht mal wirklcihde n fehler nicht

Werbeanzeige