Показать сообщение отдельно
Старый 26.05.2009, 11:43   #6
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: Про клавиши

Булевые значения это булевые значения, а числа это числа. Не надо мешать всё в одну кучу. Если блитз3д не делает между ними различий не значит что это правильно.
Складывая 2 булевых значения в блитз3д ты получаешь уже число а не булев.

В первой приведённой мной строке диапазон значений mbUP% равен [0..2], вместо ожидаемых тобой [0..1].

Далее ты по коду складываешь 4е аналогично полученных переменных и ожидаешьчто диапазон значений будет [0...2]. Об этом говорит условие равенства 2м. Однако сложение 4х потенциальных 2ек датёт диапазон значений [0..8], Кстати даже еслибы ты в первой приведённой мной строке решил проблему увеличения диапазона значений до 2х, то в строке:

If (mbUP+mbDown+mbLeft+mbRight)=2 диапазон всёравно бы был [0..4], что опять таки твой алгоритм неучитывает. Можно конешно строго натсрого запретить нажимать пользователю альтернативные клавиши управления.
__________________
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Randomize (26.05.2009)