Вниз  Java-программирование (1-ые посты)
- 28.12.2011 / 19:02
Dimon638
  Пользователь

Dimon638 
Сейчас: Offline
BPS (28.12.2011/17:02)Dimon638,
  1. int key = getKeyStates();  if ((key & RIGHT_PRESSED) != 0) {  speed++; } else if ((key & LEFT_PRESSED) != 0) {  speed-=10; }

BPS, аа, ну в обычном тоже можно, правда несколько иначе

вот пример:
  1. ...
  2. int key;
  3.  
  4. public void paint(Graphics g)
  5. {
  6. ...
  7. if(key==RIGHT){//нажаали джой вправо(или 6)}
  8. if(key==KEY_POUND){//нажали решётку}
  9. ну и т. д.
  10. ...
  11. }
  12.  
  13. ...
  14.  
  15. public void keyPressed(int k){key=getGameAction(k);}
  16. public void keyRepeated(int k){key=getGameAction(k);}
  17. public void keyReleased(int k){key=k=0;}
  18.  
  19. ...

- 28.12.2011 / 19:03
BPS
  Супермодератор

BPS 
Сейчас: Offline
Dimon638, Спасибо, откатываю
- 28.12.2011 / 19:32
LPzhelud
  Пользователь

LPzhelud 
Сейчас: Offline
Зверс написал хороший пост, только зачем-то его удалил. Он прав, если неправильно распланировать архитектуру, то при маленьком фпс в геймканвасе будет казаться, что ничего и не тормозит
__________________
 Эль Презеденте
- 29.12.2011 / 14:16
BPS
  Супермодератор

BPS 
Сейчас: Offline
Dimon638, Не реагирует на решётку
- 29.12.2011 / 14:27
ScRoLiS
  Пользователь

ScRoLiS 
Сейчас: Offline
BPS,
  1. int key;
  2.  
  3. public void paint(Graphics g) {
  4.   if(key==KEY_POUND){//нажали решётку}
  5. }
  6.  
  7. public void keyPressed(int keyCode) {
  8.   key=keyCode;
  9. }
  10.  
  11. public void keyRepeated(int keyCode) {
  12.   key=keyCode;
  13. }
  14.  
  15. public void keyReleased(int keyCode) {
  16.   key=0;
  17. }

__________________
 Чпок... Добрый вечер!
- 29.12.2011 / 17:40
treut
  Пользователь

treut 
Сейчас: Offline
Скажите пожалуйста, можно ли в канвасе к команде "привязать" картинку, и если да,то как пожалуйста.
- 29.12.2011 / 18:01
Dimon638
  Пользователь

Dimon638 
Сейчас: Offline
BPS, короче придется две переменные юзать: одну для игровых клавиш, с помощью метода getGameAction(int KeyCode) (влево/вправо/вверх/вниз)(то что в моём коде), другую для остальных клавиш(KEY_POUND, KEY_STAR, а так же от "KEY_NUM0" до "KEY_NUM9" и ещё некоторых)(то что в коде ScRoLiS'а ).
Короче, вот :gg:
  1. ...
  2. int key,key2;
  3.  
  4. public void paint(Graphics g)
  5. {
  6. ...
  7. if(key==RIGHT){//нажаали джой вправо(или 6)}
  8. if(key2==KEY_POUND){//нажали решётку}
  9. ну и т. д.
  10. ...
  11. }
  12.  
  13. ...
  14.  
  15. public void keyPressed(int Code){key=getGameAction(Code); key2=Code;}
  16. public void keyRepeated(int Code){key=getGameAction(Code); key2=Code;}
  17. public void keyReleased(int Code){key=key2=0;}
  18.  
  19. ...


Изменено Dimon638 (29.12 / 18:02) (всего 1 раз)
- 29.12.2011 / 18:38
BPS
  Супермодератор

BPS 
Сейчас: Offline
Dimon638, ScRoLiS, спасибо, теперь всё ок
- 30.12.2011 / 04:05
Dmitriy
  Пользователь

Dmitriy 
Сейчас: Offline
Несколько вопросов:
Random.nextInt(int n) генерирует числа включая n? И ноль?
Доступ к локальной быстрее чем к элементу массива объектов?
И есть ли приоритет у слоёв LayerManager?
- 30.12.2011 / 11:18
LPzhelud
  Пользователь

LPzhelud 
Сейчас: Offline
Dmitriy, 1. Исключая. Читай документацию
2. Быстрее
3. Есть. Читай документацию
__________________
 Эль Презеденте
Наверх  Всего сообщений: 16875
Фильтровать сообщения
Поиск по теме
Файлы топика (794)