Ich brauch mal ein paar mehr Meinungen, ich glaub ich hab hier irgendwo einen Denkfehler:
Mein Kartenskript fllt erstmal jeden Raum mit dem Pseudoraum "Placeholder", dann erzeugt mir eine Funktion meine "unschne" Strae (Sprich nur Asphalt Bodentile).
Jetzt soll das ganze natrlich eine schne Strae werden und ich hab fr jede Kurve und Gerade einen eigenen Raum und Funktion angelegt, die so aussieht:
//Check the South-East curve
function IsSECurve(x : LongInt; y : LongInt) : boolean;
var
y1, x1 : LongInt;
begin
result := false;
dec(y1);
if (y1 < 0) then y1 := y;
dec(x1);
if (x1 < 0) then x1 := x;
if ((GetRoomAtPos(x, y1) <> 'PlaceHolder') and
(GetRoomAtPos(x1, y) <> 'PlaceHolder')) then result := true;
end;
Die Randteile (also wenn x1 und y1 < 0 werden) sind sowieso fraglich, aber der Grundgedanke ist folgender:
Bisher sind auf der Karte nur die Rume "Placeholder" und "Street" vertreten, das heit wenn die angrenzenden Rume (im Sinne des Straenverlaufs, bei einer Kurve ist es der Raum darber oder darunter und links oder rechts davon) nicht "Placeholder" sind, dann hab ich meinen Straenpunkt gefunden.
Leider ist das Resultat nicht so schn und ich hab meistens denn Raum, den ich als letzter auf die Form abfrage.
Irgendwo hier muss ein Denkfehler von mir sein, sieht ihn vieleicht jemand?