FireURQ Bugtracker - FireURQ
Просмотр подробностей проблемы
0000037FireURQинтерпретаторобщая2009-07-17 21:372009-07-27 23:27
GoRD 
fireton 
обычныймалаявсегда
закрытрешен 
 
1.0.31.0.3 
0000037: Оператор anykey и возвращаемые значения
Реагирует на клавиушу Shift (как и на другие модификаторы), в то время как не должен, зато возвращает 0 на все клавиши, включая стрелки и Fx.
В результате этого невозможно играть, например, в игру "Корпарация 'Мысли'"

Кроме того предложение от горафа сделать в новых интерпретаторах разделение специальных клавишь на два кода + переменная которая будет включать такое поведение.
:loop
anykey s
pln #s$
goto loop

Простой тестовый код
Нет прикрепленных меток.
история изменений
2009-07-17 21:37GoRDНовый инцидент
2009-07-17 21:37GoRDОтветственный => fireton
2009-07-17 21:52firetonКомментарий добавлен: 0000038
2009-07-17 21:52firetonСостояниеновый => рассмотрен
2009-07-17 22:04firetonКомментарий изменен: 0000038
2009-07-17 22:05firetonСостояниерассмотрен => назначен
2009-07-17 22:05firetonЦелевая версия => 1.0.3
2009-07-27 22:51firetonКомментарий добавлен: 0000057
2009-07-27 22:51firetonСостояниеназначен => отработан
2009-07-27 22:51firetonРешен в версии => 1.0.3
2009-07-27 22:51firetonРешениеоткрыт => решен
2009-07-27 23:27firetonСостояниеотработан => закрыт

Комментарии
(0000038)
fireton   
2009-07-17 21:52   
(изменен: 2009-07-17 22:04)
Т.е. 0 должен игнорироваться, а возвращаться только младший символ служебной клавиши.

(0000057)
fireton   
2009-07-27 22:51   
Воссоздать поведение досурки в подробностях не удалось, т.к. там работа с консолью, а у меня нет. В частности, не удалось получить одинаковый с досуркой сканкод функциональных клавиш, когда зажат SHIFT. Зато теперь есть переменная is_syskey, которая принимает значение 1, если нажата функциональная клавиша (F1-F10, стрелки и т.д.)