Invoke() bug

Hello everyone …

if (player.gameObject.tag == "Smal")
			{
				
		
				
				
				Invoke("Normal",3);
				
				
			}
		
		
		
		

}

		
	public void Normal(){
		Debug.Log ("normal");
		gameObject.transform.localScale = new Vector3 (-1,-1,0.58f);
	}

this code running but sometimes dont work. I dont understand how ınvoke() method work unstable. I want to ıf h-gameobject touch to the another gameobject it should be slace normal forms. However this code runs sometimes perfectly but sometime dont work =) Help me…

Invokes are cancelled if the calling object is destroyed or disabled. Is this your problem?