/**********************************************************************************/
    // функция проверяющая не нажата ли конкретная кнопка
    //
    /**********************************************************************************/
    public bool IsKeyPressed(CTR_KEY key)
    {
        bool pressed   = false;
        bool isBlocked = m_bloks[(int)key];

        switch (key)
        {
        case CTR_KEY.FIRE_1:
            pressed = Input.GetButton(m_fire1Button);
            break;

        case CTR_KEY.FIRE_2:
            pressed = Input.GetButton(m_fire2Button);
            break;

        case CTR_KEY.FIRE_3:
            pressed = Input.GetButton(m_fire3Button);
            break;

        case CTR_KEY.FIRE_4:
            pressed = Input.GetButton(m_fire4Button);
            break;

        case CTR_KEY.PAUSE:
            pressed = Input.GetButton(m_pauseBtn);
            break;

        case CTR_KEY.ANY_KEY:
            pressed = Input.anyKey;
            break;
        }

        // проверяем блокировку
        if (isBlocked)
        {
            // если блокируем - инвертируем нажатие
            if (pressed)
            {
                pressed = false;
            }
            else
            {
                // снимаем блокировку
                m_bloks[(int)key] = false;
            }
        }

        return(pressed);
    }
 /**********************************************************************************/
 // функция блокирующая кнопку
 //
 /**********************************************************************************/
 public void BlockButton(CTR_KEY key)
 {
     m_bloks[(int)key] = true;
 }