private void DestroyItem()
    {
        if (prefabTakenEffect != null)
        {
            GameObject takenEffect = Instantiate(prefabTakenEffect, this.gameObject.transform.position,
                                                 this.gameObject.transform.rotation);

            instantiator.InjectPrefab(takenEffect);

            if (TagUtil.IsTagItemMultiValue(this.gameObject.tag))
            {
                TextMeshOutliner textOutliner = takenEffect.GetComponent <TextMeshOutliner>();
                if (textOutliner != null)
                {
                    textOutliner.SetText("+" + itemValue.ToString());
                }
                else
                {
                    LogUtil.PrintWarning(gameObject, GetType(), "No TextMeshOutliner in the prefab.");
                }
            }
        }

        Destroy(this.gameObject);
    }
 private void Awake()
 {
     if (TagUtil.IsTagItemMultiValue(this.gameObject.tag))
     {
         itemValue = Random.Range(itemValueMin, itemValueMax);
     }
     else
     {
         itemValue = 1;
     }
 }