Страница 1 из 1

Как сделать действие по нажатию 2 клавиш!?

СообщениеДобавлено: 21 ноя 2017, 10:56
hennesity
Мне нужно чтобы определённое действие делалось нажатием 2 клавиш сразу тоесть если нажата 1 клавиша действия не будет! а клавиши это: LeftShift и Vertical.
Я знаю как сделать чтобы действие было на 1 клавишу это вот так - if (Input.GetKey (KeyCode.LeftShift)) {
НО КАК СДЕЛАТЬ НА 2 КЛАВИШИ!?

Re: Как сделать действие по нажатию 2 клавиш!?

СообщениеДобавлено: 21 ноя 2017, 11:25
immeasurability
Синтаксис:
Используется csharp
if (Input.GetKey (KeyCode.LeftShift)) {
    if (Input.GetKey (KeyCode.W)){

        //нажаты две кнопки...
    }
}
if (Input.GetKey (KeyCode.LeftShift)) {
    if (Input.GetKeyDown (KeyCode.W)){

         //W через LeftShift...
    }
}

Re: Как сделать действие по нажатию 2 клавиш!?

СообщениеДобавлено: 21 ноя 2017, 14:30
Yaro
или одним if
Синтаксис:
Используется csharp
if (Input.GetKey (KeyCode.A) && Input.GetKey (KeyCode.D)) {
   
}

Re: Как сделать действие по нажатию 2 клавиш!?

СообщениеДобавлено: 21 ноя 2017, 15:13
Cr0c
Синтаксис:
Используется csharp
private readonly int Action1 = 1;
private readonly int Action2 = 2;
private readonly int MoveVertical = 4;
private readonly int MoveHorizontal = 8;
////
int flag = 0;
if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.D)) flag += MoveHorizontal;
if (Input.GetKey(KeyCode.W) || Input.GetKey(Input.GetKey(KeyCode.S)) flag += MoveVertical;
if (Input.GetKey(KeyCode.Shift)) flag += Action1;
if (Input.GetKey(KeyCode.Space) flag += Action2;
switch (flag) {
 case 5:
  //move vertical & shift
  break;
 case 6:
  // move vertical & space
    break;
}
 

Что-то в таком духе