Mich würde interessieren, wie euer Feedback so zu meiner Arbeit aussieht, was sagen die erfahreneren Programmierer so zu meiner Planung und der bisherigen Umsetzung? Also ich persönlich habe bis jetzt das erreicht, wie ich es mir vorgestellt habe. Insgesamt ist es glaub ich auch nicht mehr viel Arbeit (relativ betrachtet), da ich aber nun Anfänger bin, muss ich mich mit (wahrscheinlich einfachen) Problemen recht lange herumschlagen
Dann habe ich nochmal die Frage, ob jemand Erfahrungen mit Roguelike-Games hat und zwar im Speziellen mit Field of View. Das mit den Vektoren war Blödsinn. Ich habe jetzt folgende Überlegung:
(1) Erstelle die Karte auf eine Offscreen-Konsole, die Map soll also nicht gleich vollständig auf das Rootfenster gezeichnet werden.
(2) Variablen: Anzahl der Strahlen = 360, Schritte = 3 und Radius = <Was auch immer>
(3) Strahlenrichtung wird über Sinus (und wohl auch Cosinus) berechnet.
(4) "Strahl" meint: Gehe Feld für Feld in die berechnetete Richtung
(5) Prüfe für jedes Feld die Höhe und vergleiche Sie mit der Spielerhöhe.
(6) Höhe des Felder =< Spielerfeld: Feldeigenschaft Visible = True
(7) Ist Höhe eines Feldes höher als Spielerfeld : break, Strahl endet also und das dahinter wird nicht mehr aufgedeckt
===== Jetzt der Teil, wo ich noch nicht ganz durchblicke=====
(
Bilde alle Felder mit visible = true auf dem Fenster fov ab (das vorher deklariert wurde)
(9) Blitte fov auf Root
(10) Zentrum der Fov-Berechnung = player.x | player.y, d.h. wenn der Spieler sich bewegt, bewegt sich auch das Field of View
Hoffe, dass ich das die nächsten Tage hinbekomme, ist bis jetzt das schwierigste Thema für mich, davor gings. Ist eigentlich auch nur ein Feature, auf das man theoretisch auch verzichten kann, jetzt interessiert mich aber irgendwie, wies nun geht xD