www.open-tager.ru http://www.open-tager.ru/forum/ |
|
"Аскет" - пульт http://www.open-tager.ru/forum/viewtopic.php?f=5&t=2058 |
Страница 6 из 33 |
Автор: | iranklim [ 19 окт 2013, 22:01 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
В горячих думаю нужно: 1) пауза 2) оживить 3) убить 4) сменить цвет команды 5) сменить режим (в помещении) 6) сменить режим (улица) |
Автор: | Sabbah [ 20 окт 2013, 04:58 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
В альтернативных думаю нужно: 1) снять с паузы 2) разоружить 3) восстановить патроны 4) удвоить жизни 5) прибавить жизнь 6) отнять жизнь |
Автор: | tayatlas [ 20 окт 2013, 11:04 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
Скажу по собственному опыту. Фактически на играх я пользуюсь на пульте всего двумя кнопками: рестарт и сменить цвет. ВСЁ ! Может быть еще пригодилась бы функция убить (выключить из игры проштрафившихся игроков). Остальное - мной на играх не использовалось никогда! |
Автор: | mail_robot [ 21 окт 2013, 04:06 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
tayatlas писал(а): Скажу по собственному опыту. Фактически на играх я пользуюсь на пульте всего двумя кнопками: рестарт и сменить цвет. ВСЁ ! Может быть еще пригодилась бы функция убить (выключить из игры проштрафившихся игроков). Остальное - мной на играх не использовалось никогда! у нас удвоение жизни и смена мощности выстрела частенько используется для сценариев типа заложник и ВИП. В остальном все как описано. Только две кнопки - новая игра и смена цвета |
Автор: | mail_robot [ 21 окт 2013, 04:13 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
а еще у меня созрела пословица (или поговорка, не силен в терминологии) хочешь убить хорошую задумку - поручи ее пингвину )))) он даже из простецкого пульта ядерный реактор сотворит философское начало проекта потеряно в дебрях мелочей. Я бы сделал платку пульта, сделал на ней 5-6 кнопок, сделал бы на этих кнопках базовые функции (самые самые прям вот нужные) и выложил бы прошивку. А там дальше пускай колхоз светлый путь сам идет туда куда где ему померещится комунизм. Кто какие себе захочет функции, тот те пусть и шьет под себя. Главное просто иметь железяку с шаблоном прошивки. А прошивку сделать с конфигурируемым хидером, чтобы просто ченить раскомментить и кнопка стала с нужным атрибутом. То есть минимальное кодокопание. |
Автор: | Pingvin [ 21 окт 2013, 05:54 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
mail_robot писал(а): а еще у меня созрела пословица (или поговорка, не силен в терминологии) хочешь убить хорошую задумку - поручи ее пингвину )))) он даже из простецкого пульта ядерный реактор сотворит философское начало проекта потеряно в дебрях мелочей. Я бы сделал платку пульта, сделал на ней 5-6 кнопок, сделал бы на этих кнопках базовые функции (самые самые прям вот нужные) и выложил бы прошивку. А там дальше пускай колхоз светлый путь сам идет туда куда где ему померещится комунизм. Кто какие себе захочет функции, тот те пусть и шьет под себя. Главное просто иметь железяку с шаблоном прошивки. А прошивку сделать с конфигурируемым хидером, чтобы просто ченить раскомментить и кнопка стала с нужным атрибутом. То есть минимальное кодокопание. Всё это уже есть. Есть функция (написал на днях) send_message(ID, DATA); Есть обработчики нажатий кнопок джойстика. Вставляй в нужный обработчик кнопок "UD","DOWN","LEFT","RIGHT","CENTRAL" отправку нужного сообщения, и все. Так всем же готовое на блюде надо, вот и спрашиваю - чего изволите? |
Автор: | mail_robot [ 21 окт 2013, 06:16 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
а нафига спрашивать то? прошивай по минимуму и айда. Дальше сами допилят |
Автор: | Pingvin [ 21 окт 2013, 07:59 ] | ||
Заголовок сообщения: | Re: "Аскет" - пульт | ||
Вот шаблон Код: switch(joystick_event) { case key_up_pressing: { if (fire_mode()==queues)//если "Shift" нажат { } else //"Shift" не нажат { send_message(ID_Command, Command_ImmediateNewGame); } joystick_event = no_pressing; } break; case key_right_pressing: { if (fire_mode()==queues)//если "Shift" нажат { } else //"Shift" не нажат { } joystick_event = no_pressing; } break; case key_down_pressing: { if (fire_mode()==queues)//если "Shift" нажат { } else //"Shift" не нажат { } joystick_event = no_pressing; } break; case key_left_pressing: { if (fire_mode()==queues)//если "Shift" нажат { } else //"Shift" не нажат { } joystick_event = no_pressing; } break; case key_central_pressing: { if (fire_mode()==queues)//если "Shift" нажат { } else //"Shift" не нажат { send_message(ID_Add_Health, 10); } joystick_event = no_pressing; } break; default: joystick_event = no_pressing; } У меня определено Код: #define ID_Add_Health 0x80 //сообщение добавить жизни #define ID_Add_Rounds 0x81 //сообщение добавить патронов #define ID_Command 0x83 //сообщение-команда #define Control_Byte 0xE8 //корректное значение контрольного байта сообщения #define Command_ImmediateNewGame 0x05 //командв "новая игра" Поэтому Код: send_message(ID_Command, Command_ImmediateNewGame); равносильно Код: send_message(0x83, 0x05 ); Все коды команд описаны в протоколе. http://www.open-tag.ru/forum/download/file.php?id=2300
|
Автор: | Pingvin [ 21 окт 2013, 08:49 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
Не понял суть команды Код: New game (ready): Prepares taggers for the 0x02 start game command. В чем заключается эта подготовка? И заметил - плата LW часто на команду ImmediateNewGame срабатывает только со второго раза. Что это? У меня где то косяк или особенности работы платы LW? Может, сначала нужно "приготовиться" к команде "новая игра немедленно"? А в чем разница между "новой игрой" и "респаундом"? Кто-нибудь ещё объяснил назначение команд и как должен таг реагировать на ту или иную команду. |
Автор: | G-man [ 21 окт 2013, 09:34 ] |
Заголовок сообщения: | Re: "Аскет" - пульт |
Pingvin писал(а): А в чем разница между "новой игрой" и "респаундом"? В теории респаунд от новой игры отличается тем что респашийся игрок не всегда мертв, он может быть ранен или без патронов. для него респ = сбросу в режим ожидания, затем следом идет команда - новая игра. Но это в теории, что тамана у ЛВ... |
Страница 6 из 33 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |