Модераторы: javastic, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> нажатие цифровых клавиш, проблема с нажатием клавиш в игре 
:(
    Опции темы
aaa25
Дата 15.1.2011, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 28
Регистрация: 18.12.2010

Репутация: нет
Всего: нет



приведенный участок кода реагирует на нажатие клавиш джойстика и не реагирует на нажатие клавиш 1 и 3 (хотя , казалось бы, должен реагировать).  как сделать, чтобы игра реагировала на нажатие клавиш 1 и 3 ? 


protected void keyPressed(int keyCode)
    {             int act = getGameAction(keyCode);
        switch(act)
        { 
              case Canvas.FIRE:
              
           {    int n1 = xko +10*yko;
                  }
                break;
      case Canvas.LEFT:
            if (x>18)   { x -= 20; xko-=1;}
                break;
       case Canvas.RIGHT:
           if (x<180)    { x += 20; xko+=1;}
                       break;
       case Canvas.UP:
            if (y>218)   { y -= 20; yko-=1; }
                break;
       case Canvas.DOWN:
          if (y<240)     { y+=20; yko+=1; }
                break;
                case Canvas.KEY_NUM1:
              immn = "13";
              break;
            case Canvas.KEY_NUM3:
                immn = "imx1";
                break;
            default:
                break;
        }
PM MAIL   Вверх
math64
Дата 17.1.2011, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2505
Регистрация: 12.4.2007

Репутация: 8
Всего: 72



Для большинсва телефонов нажатие клавиш 2,4,5,6,8 воспринимается как нажатие кнопок джойстика.
Если их нужно отличать, нужно проверить сначала на цифровые клавиши, а затем на джойстик:
Код

protected void keyPressed(int keyCode) {
  switch(keyCode) {
    case '0': ...; break;
    case '1': ...; break;
    case '2': ...; break;
    case '3': ...; break;
    case '4': ...; break;
    case '5': ...; break;
    case '6': ...; break;
    case '7': ...; break;
    case '8': ...; break;
    case '9': ...; break;
    default:
      int act = getGameAction(keyCode);
      switch(act) {
        case Canvas.FIRE: ...; break;
        case Canvas.UP: ...; break;
        case Canvas.DOWN: ...; break;
        case Canvas.LEFT: ...; break;
        case Canvas.RIGHT: ...; break;
        default: ...; break;
      }
  }
}


PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса

  • Прежде чем задать вопрос прочтите это!
  • Литература по Java находится здесь.
  • Литературу по Java обсуждаем здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда

  • FAQ раздела лежит здесь!
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java ME (J2ME) | Следующая тема »


 




[ Время генерации скрипта: 0.0508 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.