UnityEngine.PhysicRaycast(UnityEngine.Ray)?

it’s giving me error invalid argumets

 void Update (){
       for(int i = 0; i < Input.touches.Length; i++)//How many touches do we have?
     {
         Touch touch = Input.touches*;//The touch*

Ray ray = Camera.main.ScreenPointToRay(touch.position);
RaycastHit hit = new RaycastHit();

if(Physics.Raycast(ray,hit, 1000))
{
if(hit.collider.gameObject == this.gameObject)
{
switch(touch.phase)
{
case TouchPhase.Began://if the touch begins
Application.LoadLevel(“level1”);
break;
}
}
}

}

Yes, they are… Unity - Scripting API: Physics.Raycast

I suspect you meant:

if(Physics.Raycast(ray, out hit, 1000f))