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
C-/C++-Quelltext |
|
1 |
void c_spieler::SpielerMove(sf::Event events, char map[100][100], sf::RenderWindow *spielWindow, sf::Sprite *s_spieler) |
Community-Fossil
Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].
im Grunde hat BlueCobold schon alles geschrieben
zu 1.)
wie schon geschrieben ist dein Design wohl nicht das beste
der Spieler sollte nach Möglichkeit nur sich selbst kennen und max. wissen, in welcher Umgebung er sich befindet (auf welche er aber keinen "Vollzugriff" benötigt)
zum Wissen über sich selbst würde gehören, welcher Spieler ihn kontrolliert, was für ein Aussehen er hat und (wenn man so will) auch die Position, an der er sich befindet
da für die Bewegung aber genaueres Wissen über die Umgebung erforderlich ist, kann der Spieler selbst nicht prüfen, wie weit er sich in eine bestimmte Richtung bewegen kann
das heißt, die Umgebung muss entweder gefragt werden, wie weit sich der Spieler in die Richtung bewegen kann oder die Umgebung muss sich um die Bewegung des Spielers kümmern
dann wären die Parameter nicht mehr erforderlich, da die Umgebung bereits alles weiß, was sie wissen muss (man müsste nur noch den Spieler übergeben, der bewegt werden soll und die Richtung, in die er laufen soll)
Community-Fossil
Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer
Der Spieler braucht das Fenster nicht zu kennen. Der Spieler ist ein abstraktes Modell und hat mit der Repräsentation Deines Programms als Fenster nichts zu tun.
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].
Community-Fossil
Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer
Hmm ich geb das Fenster halt weiter damit ich es Updaten kann, ich versteh sonst nicht wie ich den Spieler sonst in das Fenster drawen soll? Ich definier ja das Sprite erst in der Spieler klasse, somit ist es in der eigentlichen Run() funktion nicht bekannt, soll ich jetzt das Sprite von der Spielerklasse zurück an die Run klasse geben oder das Fenster von der Run in die Spielerklasse?
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »BlueCobold« (25.09.2012, 09:50)
Soll ich jetzt eifach mal den Spieler fortbewegen, und nachdem er gewandert ist, die Karte fragen ob ich da überhaupt stehen darf? und wenn nicht dann wieder zurücksetzen?
Werbeanzeige