Как стать автором
Обновить
7
0
Марк Марков @Mark6

Разработчик ретро игр

Отправить сообщение

Цикл выполниться не 256 раз, а 242.

Удивительно, как я раньше не заметил, что это эквивалентно 0x80 | «нужная константа».

Я проверил, и действительно, чтобы зафиксировать нажатие, достаточно проверить, установлены ли нужные биты. Таким образом, мультитач будет работать правильно. Я обновил свой шаблонный проект, и теперь стрелка движется во все 8 направлений. В связи с новой информацией, придется менять главу статьи про управление.

Вот код который в итоге получился для кнопки Вверх:

if ((keyCode & SegaGenesis.JOYPAD_UP) != 0) {
          if (y < 0x7F) {
            continue;
          }
          //Do something
        }

Я изучил все константы в классе SegaGenesis, но не нашёл ни одной, которая бы равнялась 0x80. Скорей всего так и есть:

"Возможно, он всегда выставлен, или обозначает, что хотя бы одна кнопка нажата."

Спасибо. Добавил

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Software Developer, Game Developer
Senior
От 150 000 ₽
Git
.NET
C#
Java
OOP
English