script updating problem

I have already asked this question but since there was no answer there i will ask again.

I have made an archery taregt with 5 rings. evrery rign gives an other point when clicking it. but the problem now is that it is not updating. it gives points for every ring of my target but it is nog counting them together. what did i do wrong?
counting script:

using UnityEngine;
using System.Collections;

public class Count : MonoBehaviour 
{
	public bool isClicked = false;
	public GUIText countText;
	private int count;

	
	public void Start()
	{
		count = 0;
		SetCountText ();
		if(gameObject.GetComponent<Collider> () == null)
			gameObject.AddComponent<BoxCollider> ();
	}
	
	public void OnMouseDown()
	{
		isClicked = true;

	}
	
	public void OnMouseUp()
	{
		isClicked = false;
		if (gameObject.tag == "White")
		{
			count = count + 1;
			SetCountText ();
		}
		if (gameObject.tag == "Black")
		{
			count = count + 2;
			SetCountText ();
		}		
		if (gameObject.tag == "Blue")
		{
			count = count + 3;
			SetCountText ();
		}		
		if (gameObject.tag == "Red")
		{
			count = count + 4;
			SetCountText ();
		}		
		if (gameObject.tag == "Yellow")
		{
			count = count + 5;
			SetCountText ();
		}	
	}
	
	public void OnGUI()
	{
		if (isClicked) 
		{
			GUI.Label (new Rect (5, 5, 400, 100), " This is " + this.name);
		}
	}
	void SetCountText ()
	{
		countText.text = "Count: " + count.ToString ();
	}

It looks like there are a couple of issues that are stopping it from working. Your isClicked switch get set true in OnMouseDown() and then as soon as you release the mouse button, when OnMouseUp() is fired it gets set back to false. This will prevent your GUI Label from being drawn correctly. Below I have re-written your counting script above and it is working for me. Hopefully it will help you, I may have misunderstood your question a touch but this should at least point you in the right direction.

using UnityEngine;
using System.Collections;

public class Count : MonoBehaviour
{
	public GUIText countText;
	private int count;
	private bool _hasBeenClicked = false;
	
	public void Start()
	{
		count = 0;
		SetCountText ();
		if(gameObject.GetComponent<BoxCollider> () == null)
			gameObject.AddComponent<BoxCollider> ();
	}
	
	public void OnMouseUp() {
		_hasBeenClicked = true;
		switch (gameObject.tag) {
			case "White":
				count += 1;
				break;
			case "Black":
				count += 2;
				break;
			case "Blue":
				count += 3;
				break;
			case "Red":
				count += 4;
				break;
			case "Yellow":
				count += 5;
				break;
		}
		SetCountText();
	}
	
	public void OnGUI() {
		if (_hasBeenClicked)
		{
			GUI.Label (new Rect (5, 5, 400, 100), " This is " + this.name);
		}
	}
	
	void SetCountText () {
		countText.text = "Count: " + count.ToString ();
	}
}