Vielleicht wird das normalerweise so gemacht. Sie haben eine Liste mit verschiedenen Kacheln, die Straßenkacheln in all ihren möglichen Ausrichtungen darstellen. Von links nach rechts, alle vier Ecken, von oben nach unten, was auch immer. Jetzt indizieren Sie alle diese Kacheln mit jeweils einem Byte. 8 Bits, eines für jede Richtung. Dies kann in einer Hashmap oder nach Dateiname erfolgen ... wie auch immer Sie dies tun möchten.
Sie haben also Folgendes:
Der Bytecode für die obige Kachel lautet 00000000 . Dann ist Ihre Kachel, die von links nach rechts (oder von rechts nach links) geht, wie folgt:
Der Bytecode für diese Kachel lautet 10001000 oder 136. Als weiteres Beispiel sehen wir uns einen Drei-Wege-Schnittpunkt an:
Der Bytecode für diese Kachel lautet 10101000 .
Sie sehen wahrscheinlich, wohin ich gehe. Sie setzen Bitpositionen im Byte, die Verbindungen darstellen. Dies ist weitaus besser als der Versuch, eine große if / else-Kette zu erstellen, die ich zuvor gesehen habe. Wenn Sie eine Kachel platzieren möchten, untersuchen Sie die Kacheln um sie herum und erstellen Sie unterwegs ein Byte. Setzen Sie 1 für Kacheln mit Straßen (oder was auch immer Sie verbinden möchten) und 0 für Kacheln ohne Straßen. Wenn Sie fertig sind, haben Sie den Bytecode für die genaue Kachel, die Sie benötigen.
Beachten Sie, dass Sie beim Erstellen der Assets viele davon wiederverwenden können, indem Sie sie einfach drehen und den richtigen Bytecode zuweisen.
BEARBEITEN : Bilder wurden aktualisiert, um weniger beschissen zu sein. Ja das sind besser als vorher.