Null Reference Exception

using UnityEngine;
using System.Collections;

public class Combat : MonoBehaviour
{
   
    // speed is the rate at which the object will rotate
    public float speed;
   
    void FixedUpdate ()
    {
        // Generate a plane that intersects the transform's position with an upwards normal.
        Plane playerPlane = new Plane(Vector3.up, transform.position);
       
        // Generate a ray from the cursor position
        Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
       
        // Determine the point where the cursor ray intersects the plane.
        // This will be the point that the object must look towards to be looking at the mouse.
        // Raycasting to a Plane object only gives us a distance, so we'll have to take the distance,
        //   then find the point along that ray that meets that distance.  This will be the point
        //   to look at.
        float hitdist = 0.0f;
        // If the ray is parallel to the plane, Raycast will return false.
        if (playerPlane.Raycast (ray, out hitdist))
        {
            // Get the point along the ray that hits the calculated distance.
            Vector3 targetPoint = ray.GetPoint(hitdist);
           
            // Determine the target rotation.  This is the rotation if the transform looks at the target point.
            Quaternion targetRotation = Quaternion.LookRotation(targetPoint - transform.position);
           
            // Smoothly rotate towards the target point.
            transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, speed * Time.deltaTime);
        }
    }
}

I copy and pasted this from the Unity Wiki (http://wiki.unity3d.com/index.php?title=LookAtMouse) with the exception of changing the class name and when I try to use it onto a capsule I get the error:

NullReferenceException: Object reference not set to an instance of an object
Combat.FixedUpdate () (at Assets/Scripts/Player scripts/Combat.cs:16)
What is wrong with it?

The error tells you which line it is. Line 16:

Ray ray =Camera.main.ScreenPointToRay(Input.mousePosition);

I would guess that you don’t have a Camera in the scene tagged as Main Camera. Find the camera in the scene and click the Tag dropdown and set it to “MainCamera”.

Thank you it worked!