title: Reference to a particular Prefab clone
body: <p>I am developing a simple 2D game. In game, I've created a prefab for charcaters. and I am changing sprite of prefab runtime. This all execute fine. Now I want to apply click event on a particular prefab clone and want to increase scale of prefab. I am attaching a c# script what I have did till now.</p>
  
  <pre><code>public class ShoppingManager : MonoBehaviour {
  
  public static ShoppingManager instance;
  
  [System.Serializable]
  public class Shopping
  {
      public string CharacterName;
      public Sprite CharacterSprite;
  }
  
  public GameObject CharacterPrefab;
  public Transform CharacterSpacer;
  
  public List&lt;Shopping&gt; ShoppingList;
  
  private CharacterScript NewCharacterScript;
  
  /*********************************************Awake()******************************************/
  void Awake()
  {
      MakeSingleton ();
  }
  
  /******************************Create object of the script**********************************/
  void MakeSingleton()
  {
      instance = this;
      DontDestroyOnLoad (gameObject);
  }
  
  // Use this for initialization
  void Start () {
      LoadCharacters ();
  }
  
  void LoadCharacters()
  {
      foreach (var characters in ShoppingList) {
          GameObject NewCharacter = Instantiate (CharacterPrefab) as GameObject;
  
          NewCharacterScript = NewCharacter.GetComponent&lt;CharacterScript&gt; ();
          NewCharacterScript.CharacterName = characters.CharacterName;
          NewCharacterScript.Charcater.GetComponent&lt;Image&gt; ().sprite = characters.CharacterSprite;
  
          NewCharacterScript.GetComponent&lt;Button&gt; ().onClick.AddListener (() =&gt; CharacterClicked (NewCharacterScript.CharacterName, NewCharacterScript.Charcater));
  
          NewCharacter.transform.SetParent (CharacterSpacer, false);
      }
  }
  
  void CharacterClicked(string CharacterName, GameObject Char)
  {
      StartCoroutine (IncreaseScale (Char));
  }
  
  IEnumerator IncreaseScale(GameObject TempCharacter)
  {
      int i = 5;
      while (i &gt; 0) {
          yield return new WaitForSeconds (0.1f);
  
          Vector3 TempVector = TempCharacter.GetComponent&lt;RectTransform&gt; ().localScale;
          TempVector.x = TempVector.x + 0.2f;
          TempVector.y = TempVector.y + 0.2f;
          TempCharacter.GetComponent&lt;RectTransform&gt; ().localScale = TempVector;
  
          i--;
      }
  }
  </code></pre>
  
  <p>}</p>
  
  <p>This code triggers click event and also it increases scale but of last clone, not of clicked prefab clone. What I am missing, I can't understand. What should I correct in this. and Yeah! I am also attaching code of a script that I've added on prefab.</p>
  
  <pre><code>public class CharacterScript : MonoBehaviour {
  
  public string CharacterName;
  public GameObject Charcater;
  </code></pre>
  
  <p>}</p>