doesnt detect collision ?

im trying to make a character jump, so to make that i was taught in college to detect a collision with the floor, which is in another layer (character is in layer 8, and the platforms are in layer 9)
here’s the whole thing, sorry for the spanish, here are some translations
saltar= jump
velocidad=velocity
fuerzasalto= jumping force
puedosaltar= icanjump
mover=move

    public float velocidad;
    public SpriteRenderer renderizador;
    public float fuerzaSalto;
    public Rigidbody2D rb;
    public bool puedoSaltar;


    // Use this for initialization
    void Start ()
    {
        renderizador = GetComponent<SpriteRenderer>();
        rb = GetComponent<Rigidbody2D>();

	}

    // Update is called once per frame
    void Update()
    {
        Mover();
        Saltar();
       
	}



    public void Saltar()
    {
        if (Input.GetKeyDown(KeyCode.Space) && puedoSaltar == true)
        {
            rb.velocity = Vector3.zero;
            rb.AddForce(Vector3.up * fuerzaSalto, ForceMode2D.Impulse);
            puedoSaltar = false;
        }
    }




    public void OnCollisionEnter2D(Collision2D info)
    {
        if (info.gameObject.layer == 9)
        {
            puedoSaltar = true;
        }
    }



    public void Mover ()
    {
		if (Input.GetKey(KeyCode.RightArrow))
        {
            transform.position += Vector3.right * velocidad * Time.deltaTime;
            renderizador.flipX = true;

        }

        if (Input.GetKey(KeyCode.LeftArrow))
        {
            transform.position += Vector3.left * velocidad * Time.deltaTime;
            renderizador.flipX = false;

        }
    }


}

thanks to everyone who took the time to read through this!

I really don’t know why you are using layers for detecting collisions because I have never used.

You can use “tag” to detect collision between two GameObjects.

Like this:

void OnCollisionEnter2D(Collision2D info)

{

if(info.gameObject.CompareTag(“MyTag”)

{

puedoSaltar=true;

}

}

You can also check whether the control is coming in your OnCollisionEnter2D function using Debug.Log
:wink: