iphone touch, only working in one scene

I have the following script:

function Update () {
    for (var t = 0; t < Input.touchCount; ++t) {
        if (Input.GetTouch(t).phase == TouchPhase.Stationary) {

            var ray1 : Ray = Camera.main.ScreenPointToRay (Input.GetTouch(t).position);
            var hit1 : RaycastHit;
            
            if (Physics.Raycast (ray1,hit1)) {
               if(hit1.collider.gameObject.tag == "Untagged"){
					Debug.Log("done");				
               }
            }
        }
    }
}

in two scene’s one scene it works fine, i tap on any object with the tag ‘Untagged’ and it Logs it ‘done’ as i want, but in another scene, same project, same script, when i tap an object tagged with 'Untagged, same as the other scene, it comes up with ‘NullReferanceException’ every time of the line

var ray1 : Ray = Camera.main.ScreenPointToRay (Input.GetTouch(t).position);

i’ve put the script on different objects and everything, not that i can see that making a difference… doesn’t work! as you might think… this is really annoying me! What’s new with scripting?!

look forward to getting this sorted! thanks in advance for your help.

I’m guessing Camera.main is the object returning null?

If so, check the unity docs on Camera.main:

The first enabled camera tagged “MainCamera” (Read Only).
Returns null if there is no such camera in the scene.

Are you missing the tag on the 2nd scene?