Можливо, так це робиться, як правило. У вас є список різних плиток, які представляють дорожню плитку у всіх їх можливих напрямках. Зліва направо, усі чотири кути, зверху вниз, як би там не було. Тепер ви будете індексувати всі ці плитки кожним байтом. 8 біт, по одному для кожного напрямку. Це може бути в хешмапі або за назвою файлу ... однак ви хочете це зробити.
Отже, у вас це є:
Код байта для вищезазначеної плитки - 00000000 . Тоді ваша плитка, яка йде зліва направо (або справа наліво), виглядає так:
Код байтів для цієї плитки 10001000 , або 136. Як інший приклад, давайте подивимось тристоронній перетин:
Код байта для цієї плитки - 10101000 .
Ви, мабуть, бачите, куди я йду. Ви встановлюєте бітові позиції в байті, що представляє з'єднання. Це набагато краще, ніж намагатися зробити якийсь великий ланцюг if / else, який я бачив раніше. Коли ви хочете розмістити плитку, огляньте плитки навколо неї та створіть байт по дорозі. Встановіть значення "1" для плиток, на яких є дороги (або будь-що, що ви хочете підключити), і 0 для плиток, які не мають. Коли ви закінчите, ви отримаєте код байта для точної плитки, яка вам потрібна.
Зауважте, що при створенні активів ви можете багато разів використовувати їх, просто обертаючи та присвоюючи йому правильний байт-код.
РЕДАКТУВАННЯ : Оновлені зображення, щоб вони були менш бадьорими. Так, це краще, ніж раніше.