Konsolen Spielfeld Idee
-
Mein Ziel ist es ein Space Invaders hinzubekommen.
Nun habe ich schon das ersten Problem wie sollte ich das mit dem Spielfeld machen, weil ich hatte soetwas mit Pfeiltasten nie vorher gemacht.Also ich habe mir schon ein paar Gedanken gemacht und bin zu den möglichkeiten gekommen.
1. Zweidimensionaler Array
2. Ausgabe per Schleife (immer ein Zeichen, pro Druchlauf)Oder gibt es noch andere Möglichkeiten?
-
Nun habe ich schon das ersten Problem wie sollte ich das mit dem Spielfeld machen, weil ich hatte soetwas mit Pfeiltasten nie vorher gemacht.
Wäre es schlimm für dich, dich auf ein einziges Betriebssystem zu beschränken? Wenn nicht wird es eklig.
Für Windows: Eine Möglichkeit: http://stackoverflow.com/questions/8435923/getting-arrow-keys-from-cin
Oder ReadConsoleInput aus <windows> oder so ähnlich.Für Linux: Da kann man sich Equivalente schreiben. Wenn du ncurses installierst kriegst, ist es damit ziemlich schön zu machen. Aber ich glaube zum das Laufen zu bekommen ist für Einsteiger mehr Frust als Spaß.
-----
Da kommen sicher noch bessere Antworten als die hier.
-----
EDIT: Zu den anderen Fragen: Du wirst dich später über das flackern der Console ärgern, sodass du dir darüber Gedanken machen wirst nur das zu zeichnen, was sich verändert hat. (windows: SetConsoleCursorPosition oder so ähnlich) auch hierzu ist im Forum viel zu finden.
EDIT 2: Wieso beantworte ich eigentlich immer Sachen, die gar nicht gefragt waren, ich sollte mir mal mehr Zeit zum Lesen und nachdenken nehmen -.-
-
Ich glaube, mit deiner Frage kann niemand wirklich etwas anfangen. Was genau möchtest du wissen? Programmierer neigen dazu, Fragen sehr wörtlich zu nehmen. Die zu erwartende Antwort auf
Fragenstellerasd schrieb:
Oder gibt es noch andere Möglichkeiten?
ist daher natürlich "Ja". Es gibt immer andere Möglichkeiten (auch wenn ein Programm ohne Schleifen schon ziemlich schwer vorstellbar ist).
Aus der letzten Nebenbemerkung wird vielleicht auch klar, wie verschwommen deine Fragestellung ist. Wenn man deine Frage mal salopp übersetzt, steht da ungefähr:
Freie Interpretation deines Beitrags schrieb:
Ich möchte ein Spiel schreiben. Dazu habe ich mir folgendes überlegt:
-Das Programm soll Variablen benutzen, um Daten zu speichern
-Das Programm soll Schleifen enthalten
Ist das gut?Ja? Daten zu speichern und diese mit sich immer zu wiederholenden Arbeitsschritten zu verarbeiten ist das Grundprinzip jedes Computerprogramms. Was soll man dazu noch mehr sagen?
Siehe:
http://www.c-plusplus.net/forum/200753, insbesondere auch den Link ganz am Ende.
-
Danke für die Antworten schon mal.
Dann versuche ich es nun besser zu erklären.
Wie gesagt mein Ziel ist es ein space invaders hinzubekommen.
Dabei stellt sich die Frage für mich wie ich das Spielfeld aufbauen soll.
Natürlich gibt es mehr Varianten. Mir sind aber nur 1stk. eingefallen.1. Mit einem zweidimesionalen array (per Schleife)
Und nun die Frage ist das eine gute Idee? Oder gibt es noch eine bessere Möglichkeit? Weil ich habe soetwas mit einem Spielfeld noch nie gemacht.
Und ich benutze das OS Windows 7.
Ich hoffe ich konnte es nun ein wenig besser erklären...

-
Da Dein Spielfeld sicherlich aus Zeilen und Spalten bestehen wird, ist ein zweidimensionales Array eine gute Idee!
-
Belli schrieb:
Da Dein Spielfeld sicherlich aus Zeilen und Spalten bestehen wird, ist ein zweidimensionales Array eine gute Idee!
Hier habe ich mal einen Link.
http://www.c-plusplus.net/forum/p2396686#2396686
Das habe ich mal vor ein paar WOchen gelesen und da ist der Array in der Funktion und wird jedemal neu deklariert...Wie kann ich das ändern?