WHY IT DELETES MY CAMERA!!!!!!

Heres my block script and why it deletes my camera even i have Crosshair GUI?

var blockLayer : LayerMask = 1; 
var range : float = Mathf.Infinity; 
var hit : RaycastHit;
var CrossHair : Texture2D;
 
function OnGUI()
{
  GUI.Label(new Rect(Screen.width/2,Screen.height/2,100,100),CrossHair);
} 
 
function Update () { 
if (Input.GetMouseButtonDown(0)) Build(); 
if (Input.GetMouseButtonDown(1)) Erase();
OnGUI();
}
 
function Build() { 
if (HitBlock()) { 
var cube = GameObject.CreatePrimitive(PrimitiveType.Cube); 
cube.transform.position = hit.transform.position + hit.normal; 
} 
}
 
function Erase() { 
if (HitBlock()) 
Destroy(hit.transform.gameObject); 
}
 
function HitBlock() : boolean { 
return Physics.Raycast(transform.position, transform.forward, hit, range, blockLayer); 
}

the last parameter of physics.raycast is the layer to ignore when looking for collisions, if you are ignoring the layer your blocks are on im assuming the only other gameobject for the cast to intersect is your camera.

try moving your camera to the layer being ignored