Вопрос

Я использую редактор кафельной карты, чтобы сделать 2D-карты для создания игры с Pyglet.Плитка пронумерована и сохранена в файл .tmx.Числа плиток начинаются с 1 и сохраняют восходящуюся, но когда вы переворачиваете плитку, которую число плитки изменяется с помиринами, поэтому при использовании данных вы знаете, как его перевернуть.Документ объясняет, как сломать его [здесь] ( https:// github.com / bjorn / filed / wiki / tmx-map-формат # Данные ) Под листовой плитой.Я понятия не имею, где даже начать, я никогда не использовал побитовые.Я посмотрел поминул для питона и читал о & |<< >> Битовые операторы и играют с ними в переводчике, но я до сих пор не понимаю, как сломать числа плиток, чтобы получить данные.Одно из номеров у меня есть 2684354578 Может ли кто-нибудь показать мне, как это сделать?

Это было полезно?

Решение

Числа ширины 32 бита.Верхние 3 бита № 31, 30 и 29 идентичности Листовой информации.

Вы можете заставить эти 3 бита до нуля путем выражения

result = number & 0x1FFFFFFF
.

Префикс 0x означает, что это шестнадцатеричный номер.Каждая цифра представляет 4 бита с использованием значений 0 до 9 и A до F. Число, таким образом, 3 Zeros, а затем 29.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top