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
Zitat von »"ChrisJ"«
weil man da alle elemente nacheinander durchgehen kann... ich finds bequemer
Zitat von »"ChrisJ"«
geschmackssache auf jeden fall braucht man so einen container für die dynamisch erzeugten projektile
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
typedef std::list< int > list_type; list_type liste; list.push_back( 10 ); ... list_type::iterator it( liste.begin() ); for ( ; it != liste.end(); ++it ) { std::cout << *it << std::endl; } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
typedef std::vector< int > list_type; list_type liste; list.push_back( 10 ); ... list_type::iterator it( liste.begin() ); for ( ; it != liste.end(); ++it ) { std::cout << *it << std::endl; } |
Zitat von »"ChrisJ"«
eine liste ist flexibler... wenn ein projektil vor einem anderen trifft und explodiert, kann ich es einfacher löschen
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
std::vector<CMissile> vect_missile; // Objekte einlesen //... //... for(std::vector<CMissile*>::iterator it = vect_missile.begin(); it != vect_missile.end(); it++) { eCollisionType colType; // Eine Aufzählung welche die Objekttypen bestimmt(Wand, Flugzeug, andere Rakete etc.) colType = CheckCol((*it)->GetPosition()) // Eine Funktion die überprüft ob das Objekt an der übergeben Position mit irgendeinem Objekt kollidiert und dann einen Kollisionstypen zurückgibt) (*it)->Explode(colType); // NAtürlich hier keine aufwändige explosion, aber z.B zerstörung der Schiffe etc. // GetPosition und Explode sind Methoden der Missile Klasse. } |
Werbeanzeige