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

Anonymous

unregistriert

31

07.09.2008, 14:20

Auch wenn der gute drakon dir den Fehler gezeigt hat, möchte ich dir jedoch meinen Code nicht vorenthalten. Ich habe den etwas klarer Strukturiert, damit er nicht mehr so "wirr" aussieht.

Hier erstmal die zip, die Quelltext, Beispiel und eine Projektdatei für VS2008 enthält: http://trash.germangamedev.de/erschaffer_game.zip

Es gibt insgesammt 3 paar Dateien:
common.cpp/.hpp
Hier sind alle notwendigen Includes enthalten und ein kleines template-Makro für die Benutzereingabe. Dieses Makro wird sicherlich derzeit dein Verständnis weit übersteigen, doch es ist ganz hilfreich. Du kannst bei diesem Makro einen Text übergeben, der angezeigt werden soll, bevor der Benutzer einen Wert eingibt. Das Makro prüft auch ob die Eingabe korrekt ist, also wenn du eine Zahl haben möchtest, er jedoch einen String eingibt, das er solange neue Werte eingeben muss, bis der Wert eine Zahl ist. :)

Dieses Dateipaar ist, wie der Name schon sagt, für allen generellen Kram. Also ein globaler Header/Source sozusagen, oft recht hilfreich.

field.cpp/.hpp
Deine CField-Klasse, nur ich nenne sie field. Ich mag das C nicht ;) Hier ist einmal ein Konstruktor enthalten, ein Kopie-Konstruktor und ein Destruktor, sowie die Funktion zum zeichnen eines Spielfelds.

Die Abmessungen des Spielfelds werden am Konstruktor übergeben und gesichert, die Werte sind "unsigned", dass bedeutet, dass nur positive Werte übergeben werden können. Ein Spielfeld von -20x40 hab ich noch nicht gesehen :D

main.cpp/.hpp
Dies ist die Hauptklasse und Heimat der "main"-Funktion. In dieser Klasse ist einmal das Hauptmenü, die Initialisierung deines Spielfelds und eine kleine Info.

Ich denke der Quelltext der 6 Dateien ist gut kommentiert und du wirst einige Zeit haben bis du alles verstehst, aber so kannst du sehen, wie man etwas schön aufteilt und wie man Quelltext übersichtlich formatiert. ;)

so long!
- unsigned long

Errschaffer

Alter Hase

  • »Errschaffer« ist der Autor dieses Themas

Beiträge: 865

Wohnort: Frankfurt

  • Private Nachricht senden

32

07.09.2008, 14:24

Ok danke. Ich blicke zwar da noch nicht durch aber das kommt bestimmt noch :)

Also erstmal danke für eure Hilfe.

Anonymous

unregistriert

33

07.09.2008, 14:25

Errschaffer
Geh den mal Stück für Stück durch und wenn du fragen hast: posten, posten und nochmals posten ;)

Werbeanzeige