void Update()
    {
        if (justSwitched)
        {
            justSwitched = false;
            return;
        }

        if (Input.GetButtonDown("Fire1"))
        {
            currentInput.Handle("Fire1");
        }
        if (Input.GetButtonDown("Fire2"))
        {
            currentInput.Handle("Fire2");
        }
        if (Input.GetButtonDown("Fire3"))
        {
            currentInput.Handle("Fire3");
        }
        if (Input.GetButtonDown("Jump"))
        {
            currentInput.Handle("Jump");
        }

        float h = Input.GetAxis("Horizontal");
        float v = Input.GetAxis("Vertical");

        currentInput.Handle(h, v);
    }