Healthbar not always working, someone please help!

Hi im quite new here. I have a health script applied to a gui texture. It displays a health bar and cycles through the various stages of health. It should work but only seems to work half the time. the script is as follows:

var plane : GameObject;

var detonator1 : GameObject;

var mySound : AudioSource;

var damage0 : Texture2D;

var damage1 : Texture2D;

var damage2 : Texture2D;

var damage3 : Texture2D;

var damage4 : Texture2D;

var damage5 : Texture2D;

var damage6 : Texture2D;

var damage7 : Texture2D;

var damage8 : Texture2D;

var damage9 : Texture2D;

var damage10 : Texture2D;

static var LIVES = 11 ;

function Update ()
{
switch(LIVES)
{

    case 11:
		guiTexture.texture = damage10;		
	break;
	
	case 10:
		guiTexture.texture = damage9;
	break;
	
	case 9:
		guiTexture.texture = damage8;
	break;
	
	case 8:
		guiTexture.texture = damage7;
	break;
	
	case 7:
		guiTexture.texture = damage6;		
	break;
	
	case 6:
		guiTexture.texture = damage5;
	break;
	
	case 5:
		guiTexture.texture = damage4;
	break;
	
	case 4:
		guiTexture.texture = damage3;		
	break;
	
	case 3:
		guiTexture.texture = damage2;
	break;
	
	case 2:
		guiTexture.texture = damage1;
	break;
	case 1: 
		guiTexture.texture = damage0;
	
	detonator1.GetComponent("Detonator").Explode();
			mySound.Play();
			groundtrigger.triggered=1;
			crashforce= maincontrols.speed*10000;
			maincontrols.speed=0;
			gameover=1;
			plane.rigidbody.useGravity = true;
			//FadeAudio(fadeTime, Fade.Out);
			Camera.main.SendMessage("fadeOut");

}

}

The health bar works most of the time, but seems to get randomly stuck. One time it will switch through all cases and the plane will crash, then the next time it will appear to get stuck on ,for example, “case 3” and will not switch to the lower cases. The switch is made when my player collides with an enemy.

unction OnTriggerEnter(collision : Collider)
{
if(collision.gameObject.tag == “snake”)
{

	HealthControl.LIVES -= 1;
	
}

Most times when it gets stuck, it gets stuck at “case 2”. It should work everytime but only works about 50% of the time, not sure if this is a problem with my script or a problem with unity. Any help would be greatly appreciated. I have tried a number of things and nothing seems to get it working.

Dunno if this is the cause for sure or not, but you don’t seem to have a break on Case 0; is one necessary?

nah does the same as when its case1. I had it as case0; originally.