Hallo,
Ich möchte ein Spiel in der Art von Master of Orion (Erklärung weiter unten) erstellen, ziel soll ehr sein mehr über das Programmieren zu lernen als ein Blockbuster zu erschaffen.
Version 1 soll so aussehen.
Man startet auf einem Planet und Raumschiff und kann dieses dann zu einem anderen Planeten schicken um ihn zu Kolonisieren.
Jetzt kommt mir die Überlegung: hmm gebe ich dem Raumschiff Funktionen um von A nach B zu fliegen, eine Funktion um den Planeten zu Kolonisieren. Was in etwa den Simpel Programmierbeispielen nach Schema Programmiere eine Klasse Auto welche Funktionen zum Starten und Losfahren hat.
Selbst mit Vererbung von einer Superklasse kommt mir das recht Statisch vor bei dem was ich evtl. noch alles einbauen möchte.
Meine Idee ist jetzt in etwa für jede mögliche Handlung eines Raumschiffs eine eigene Klasse zu erstellen. Eine Klasse FliegeNach, eine Klasse Kolonisieren. Meine Raumschiffsklasse hat dann einmal ein Array mit allen Handlungen die es tun kann um diese Nachzuschlagen/Anzuzeigen. Wird jetzt eine verwendet wird diese an ein neues Array "Warteschlange" angehängt, welche dann Stück für Stück abgearbeitet wird.
Pseudoablauf für das Kolonisieren.
Klick auf Raumschiff.
Im Array schauen was es kann und die Optionen in einem Menü anzeigen.
Bei klick auf Kolonisieren ein Ziel erwarten.
Nach dessen auswahl eine neue Instanz von FliegeNach in der Warteschlange erstellen, gefolgt von einer Kolonisiere Instanz.
Kommt mir im ersten Moment erst mal wie eine gute Idee vor das so zu machen. Aber ist es das wirklich?
Ich möchte eine Struktur haben die ich eben erweitern kann wenn ich möchte ohne jedes mal den Kompletten Quellcode umzugraben wenn ich eine neue Idee hab was für ein Feature ich einfügen möchte.
Ich möchte ein Spiel in der Art von Master of Orion (Erklärung weiter unten) erstellen, ziel soll ehr sein mehr über das Programmieren zu lernen als ein Blockbuster zu erschaffen.
Version 1 soll so aussehen.
Man startet auf einem Planet und Raumschiff und kann dieses dann zu einem anderen Planeten schicken um ihn zu Kolonisieren.
Jetzt kommt mir die Überlegung: hmm gebe ich dem Raumschiff Funktionen um von A nach B zu fliegen, eine Funktion um den Planeten zu Kolonisieren. Was in etwa den Simpel Programmierbeispielen nach Schema Programmiere eine Klasse Auto welche Funktionen zum Starten und Losfahren hat.
Selbst mit Vererbung von einer Superklasse kommt mir das recht Statisch vor bei dem was ich evtl. noch alles einbauen möchte.
Meine Idee ist jetzt in etwa für jede mögliche Handlung eines Raumschiffs eine eigene Klasse zu erstellen. Eine Klasse FliegeNach, eine Klasse Kolonisieren. Meine Raumschiffsklasse hat dann einmal ein Array mit allen Handlungen die es tun kann um diese Nachzuschlagen/Anzuzeigen. Wird jetzt eine verwendet wird diese an ein neues Array "Warteschlange" angehängt, welche dann Stück für Stück abgearbeitet wird.
Pseudoablauf für das Kolonisieren.
Klick auf Raumschiff.
Im Array schauen was es kann und die Optionen in einem Menü anzeigen.
Bei klick auf Kolonisieren ein Ziel erwarten.
Nach dessen auswahl eine neue Instanz von FliegeNach in der Warteschlange erstellen, gefolgt von einer Kolonisiere Instanz.
Kommt mir im ersten Moment erst mal wie eine gute Idee vor das so zu machen. Aber ist es das wirklich?
Ich möchte eine Struktur haben die ich eben erweitern kann wenn ich möchte ohne jedes mal den Kompletten Quellcode umzugraben wenn ich eine neue Idee hab was für ein Feature ich einfügen möchte.