// Update is called once per frame
    private void Update()
    {
        if (!gc.Pause)
        {
            //prendo gli input
            m_horizontal = Input.GetAxisRaw("Horizontal");
            m_vertical   = Input.GetAxisRaw("Vertical");
            m_axis_jump  = Input.GetAxisRaw("Jump");

            //controllo per non fare un doppio salto troppo in alto
            if (m_axis_jump == 0)
            {
                hasJumped = false;
            }

            //parte di animazione player
            if (!sliding && !dead && !climbing)
            {
                animator.SetFloat("Horizontal", Mathf.Abs(m_horizontal));
            }

            if (facing_right && m_horizontal < 0)
            {
                tr.localScale = new Vector3(-1, 1, 1);
                facing_right  = false;
            }
            else if (!facing_right && m_horizontal > 0)
            {
                sr.flipX      = false;
                tr.localScale = new Vector3(1, 1, 1);
                facing_right  = true;
            }

            //comandi
            if ((Input.GetKeyDown(KeyCode.W) || Input.GetKeyDown(KeyCode.S)) && !dead && IsNearLadder)
            {
                climbing        = true;
                jumping         = false;
                hasJumped       = false;
                rb.gravityScale = 0;
                rb.velocity     = Vector2.zero;
                if (ladder != null)
                {
                    ladder.DeactivatePlatform();
                    if (ladder.center != null)
                    {
                        tr.position = new Vector3(ladder.center.transform.position.x, tr.position.y, tr.position.z);
                    }
                }
                animator.SetBool("Climbing", true);
                animator.SetBool("Jumping", false);
            }
            else if (Input.GetKeyDown(KeyCode.S) && !jumping && !dead && !IsNearLadder && IsNearLever)
            {
                //TODO non ho idea di cosa sia questo per cui lo lascio
            }
            if (Input.GetKeyDown(KeyCode.F11))
            {
                DieWithFade();
            }
        }
    }