Problem with Falling Platform Script

So I basically watched GucioDev’s video for the tutorial about falling platform. Here is the (Unity 5 2D Platformer Tutorial - Part 26 - Falling Platforms - YouTube)

but however, for some reason I’m not able to get it working. Here is the script that I used to test it out (same script just like in the video but without “GetComponent().isTrigger = True;” part)

The Script:

using UnityEngine;
using System.Collections;

public class FallingPlatform: MonoBehaviour {

private Rigidbody2D rb2d;

public float FallDelay;

void Start ()
{

    rb2d = GetComponent<Rigidbody2D>();

}

void OnCollisonEnter2D (Collision2D col)
{

    if (col.collider.CompareTag("Player"))
    {

        StartCoroutine(Fall());

    }

}

IEnumerator Fall()
{

    yield return new WaitForSeconds(FallDelay);
    rb2d.isKinematic = false;

    yield return 0;

}

}

Code looks fine to me. Double check the player’s tag is exactly “Player” with capital letter, gravity scale is set on the platform’s rigidbody, and it’s not set to freeze position under Constraints.

You can add some Debug.Log() to see exactly what is or is not running. For instance, put Debug.Log(col.collider.tag); at the top of the OnCollisionEnter2D to see what (if any) is being collided with. Probably another Log inside the if() and in the Fall() method to make sure it’s starting.

It should be:
StartCoroutine(“Fall”);

Rather than:
StartCoroutine(Fall());

Hope that helps