Da stimme ich dir allerdings nicht unbedingt zu. Wenn du dich am Anfang festlegst, dass du z.B. 20 Wegpunkte machst kannst du einfach (falls man viele Maps braucht) die alte Map kopieren, ummappen und die Wegpunkte entsprechend verschieben. Bei etwas komplexeren KS kommt die Abfrage der Position des nächsten Wegpunktes warscheinlich sehr heufig vor, wesshalb es dann einfacher wäre, als überall wieder die Werte zu ändern.Zitat von Teufelsauge
Zu 1:
Wie ja bereits erwähnt wurde hängt das von der Art des Spieles ab und wie viel Gedult du hast
Zu 2:
Hab ich ja bereits gesagt...
Zu 3:
Musst dann wohl erstmal festlegen, was das Ziel der "Einheit" ist. Ist z.B. der Held ausgewählt wird automatisch der Wegpunkt berechnet, welcher diesem am nächsten ist. Das minimiert die Warscheinlichkeit einen Falschen Weg zu nehmen. Danach muss dann wohl oder übel berechnet werden, welchem Wegpunkt die "Einheit" am nächsten steht. Wenn du die Wegpunkte mit einem geschickten System positioniert hast, müsstest du dann einfach nur noch 2 Variablen machen. In der einen steht, zu welchem Wegpunkt die "Einheit" muss, in der anderen, an welcher sie gerade ist. Vieleicht dann auch noch eine in welche Richtung sie gehen muss (1 für aufsteigend, 2 für absteigend). Sind die Wegpunkte nun wirklich geschickt verknüpft ensteht am Ende eine Art Kreislauf.
Mal zur Verdeutlichung:
= Die "Einheit"
= Der Held
= Ein Blocker (ein Stein, eine Erhöhung etc. Irgendetwas unpassierbares)
= Der Wegpunkt
= Der Strich dient dazu den Kreislauf zu verdeutlichen ^^
Also in diesem Beispiel würde die "Einheit" nachdem alles Errechnet würde zum Punkt 1 marschieren (natürlich mit dem üblichen Vorgang). Danach über 2 zu 3 zu 4 usw bis zu 10 wo ja errechnet wurde, dass der Held diesem Punkt am nächsten ist. Dann würde sich die Einheit dem Punkt lösen und direkt auf den Helden zumarschieren. Natürlich müsste man ab da auch überprüfen ob der Held nun der "Einheit" oder einem andern Punkt näher ist. Wäre nun die "Einheit" weiter als z.B. 2 Felder vom Helden entfernt, als dies ein beliebiger Wegpunkt ist, wird der ganze Vorgang erneut gestartet (also bewegt sich die "Einheit" zu dem besagten Punkt in dem bereits erwähnten Kreislauf). Natürlich könnte man speziell für diese Map eine Sonderregelung einführen, die besagt, dass wenn sich die "Einheit" auf Punkt 2 befindet und der Held einem der Punkte zwischen 7 und 11 am nächsten ist, das die "Einheit" dann direkt zu Punkt 9 weitergeht. Sollte nun der Held einem Punkt unter 9 am nächsten sein muss die bereits erwähnte dritte Variable auf 2 gestellt werden, so dass sich der Held zu Punkt 8, dann zu 7 usw. bewegt.
Das macht zwar extrem viel Arbeit, aber vieleicht würde es sogar funktionieren
mfg
Phönix Tear