public void AnimateDestruct() { if (startedAnimate) { return; } else { //print("Have not yet started " + transform.position); startedAnimate = true; } if (startTime + 0.01f > Time.time) { //print("Have not yet lived a long and fruitful life"); return; } if (!sp) { sp = gameObject.GetComponent <SpriteRenderer>(); } SpriteRenderer effect = Instantiate(ItemConsumeEffect, transform.position, transform.rotation).GetComponentInChildren <SpriteRenderer>(); TriggerDestroy dest = effect.GetComponentInParent <TriggerDestroy>(); dest.sank = sank; effect.transform.localScale = transform.localScale; effect.sprite = sp.sprite; effect.color = sp.color; if (gameObject) { gameObject.SetActive(false); } }
void MakeNew(SpriteRenderer sp, bool sank) { print("madenew"); //APPEARS TO BE SCALED INCORRECTLY Transform spTrans = sp.transform; SpriteRenderer effect = Instantiate(itemAfterEffectPrefab, spTrans.position, spTrans.rotation).GetComponentInChildren <SpriteRenderer>(); TriggerDestroy dest = effect.GetComponentInParent <TriggerDestroy>(); dest.sank = sank; effect.transform.localScale = spTrans.localScale; effect.sprite = sp.sprite; effect.color = sp.color; StartCoroutine(addToInactivesAfterDelay(dest.transform.parent.gameObject)); }