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
Joa, schon mal ein guter Ansatz. Lässt sich nicht unbedingt immer verallgemeinern, da man nicht für jeden Gegenstand eine eigene Klasse benötigt. Aber für ein simples TD-Spiel ein guter Anfang.Zitat
ich habe mir mal auf einem Blatt Papier erstmal alle Gegenstände notiert -> Ich stell mir diese dann als Klassen vor, richtig?
Zur Welt. Sie sind Elemente der Welt, nicht des Spielers. Die Welt muss über alle Elemente aus der Welt Bescheid wissen, der Spieler braucht nur "seine" Sachen zu kennen, wie z.B. seinen Punktestand.Zitat
damit kommen wir zu den "CGegnern", da bin ich mir gerade nicht sicher wo sie genau hingehören, als Liste zu einem Spieler zugeordnet? oder gleich zur Welt?
Das gehört mehr oder weniger in den Game Loop. Ob du das noch in eine oder mehrere Klassen verpackst, ist deine Sache. Der Game Loop prinzipiell muss alles anstoßen.Zitat
Mein problem nun, ich weiß irgendwie immer noch nicht genau, wie ich diese Klassen / Objekte am besten miteinander interagieren lasse... hab da sowas von Eventhandler oder Manager Objekt gelesen. aber an welche stelle gehört das in das System?
Es ist ja keine Schande etwas falsch zu machen, als Programmierer tu ich das täglich, [...].
Hmm... hast natürlich völlig Recht, daran hatte ich in meinem Beispiel gar nicht gedacht.Zitat
es ist äußerst ungünstig, erst auf eine Kollision zu prüfen und dann die Bewegung durchzuführen
ich denke, man sollte erst überprüfen, ob es nach der Bewegung zu einer Kollision kommen kann und dann erst die Bewegung durchführen
Es gibt keinen einzigen "richtigen" Weg, das bleibt eigentlich dir überlassen. Ich empfände aber einen periodischen Schaden als unrealistisch, wenn der Turm z.B. Raketen verschießt.Zitat
muss ich also eine Klasse Waffe def. die zu den Türmen gehört, die wiederum den Gegnern schadet? oder doch lieber direkt indem der Turm sagen wir periodisch ein gewissen "schaden" von seinem Ziel abzieht?
Quellcode |
|
1 2 3 4 5 6 7 8 |
Type TGameState Abstract Method Enter() Abstract 'Einstieg in den Gamestate Method Process:Int() Abstract '"Mainloop" Method Leave() Abstract 'Beenden des Gamestates Method Draw() Abstract 'Zeichenfunktion EndType |
Quellcode |
|
1 2 3 4 5 |
Gamemanager.init() repeat Gamemanager.idle() until ... Gamemanager.terminate() |
Werbeanzeige