private void OnTriggerEnter2D(Collider2D other) { if (isCollected) { return; } if (other.gameObject.layer == playerRelatedLayer && other.isTrigger == false) { isCollected = true; //Power Up exploding GameObject ob = Instantiate(collectionEffect, transform.position, transform.rotation); //Player upgrade activating if (player == null) { player = FindObjectOfType <PlayerBehaviour>(); } GameObject ob1 = Instantiate(upgradeEffect, player.transform.position, Quaternion.identity, player.transform); Debug.Log(other.gameObject.name + " hit the power up"); var ps = ob.GetComponent <ParticleSystem>().main; ps.startColor = GetComponent <SpriteRenderer>().color; var ps1 = ob1.GetComponent <ParticleSystem>().main; ps1.startColor = GetComponent <SpriteRenderer>().color; player.CollectPowerUp(this); Destroy(gameObject); } }