Hallo Leute,
ich habe eine Frage.
Und zwar habe ich einen ObjektManager der mir die Objekte in das Spiel lädt, bisher habe ich den Gamestate wann es gezeichnet werden soll immer im Objekt mit verspeichert. Mir gefällt diese Lösung aber nicht und ich bin gerade dabei das ich das umbaue. Ich habe mir überlegt einfach dei Objekte in meine Liste zu laden und alles was drinnen ist anzuzeigen. Damit aber das bei dem Richtigen gamestate angezeigt wird, müsste ich die Liste immer leeren und befüllen, damit die Aktuellen Objekte auch angezeigt werden können. Wenn ich nun zb. in meinem MainWindow bin und auf den Button Credits Drücke springt mir da Spiel zu diesem Gamestate. Da ich aber nun keine unterscheidung mehr habe auf welchem Gamestate welcher button angezeigt wird, hätte ich alle MainWindow buttons auch im Fenster Credits drinnen. Meine Idee war es nun die Ressourcen zu laden und in einem RessourcenManager zu verwalten, das habe ich. Lege ich nun einen neuen Button an hole ich mir vom RessourceManager die Refernz von dem Bild und setzte es. Soweit so gut, damit ich aber eben vermeide das meine Buttons überall angezeigt werden, müsste ich die Objekte vorher löschen und die neuen in die Liste laden. Das ist ja ein bisschen umständlich wenn ich jetzt zb. nur in das CreditFenster gehe dann habe ich da nur einen Text.
Damit ich das machen kann muss ich die Buttons zuerst erzeugen dann warten, dann drückt der Spieler Credits, Buttons löschen Textliste aufbauen, anzeigen, der User verlässt das Credits fenster, Texte entleeren, Buttons erzeugen und wieder anzeigen.
Ich hoffe ihr versteht was ich meine. Wie könnte ich das sonst lösen ? oder ist das eine gute Lösung ?
Ich denke mir halt, warum sollte ich objekte in meiner Liste behalten wenn diese ohnehin nicht angezeigt werden