private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.CompareTag("PlayerShip"))
        {
            if (!discovered)
            {
                sighted = true;
                planet.SetActive(true);
                playerShipStats.GetExperience(gameManager.sightedXP);
                playerShipStats.GetComponent <Scr_PlayerShipEffects>().ConfettiEffect();
                discoveryPanelAnim.SetBool("Show", true);

                Invoke("HideDiscoveryPanel", 3f);
            }

            playerShipProxCheck.ClearInterface(false);
            playerShipHalo.disableHalo = true;
        }
    }
    private void Update()
    {
        if (amount <= 0)
        {
            if (!explosionParticles.isPlaying && !playedOnce)
            {
                for (int i = 0; i < initalAmount; i++)
                {
                    GameObject resource = Instantiate(currentResource, transform.position + Vector3.back, transform.rotation);
                    resource.transform.SetParent(transform.parent);
                    playerShipStats.GetExperience(experience);
                }

                astronautsActions.miningSpot = null;

                explosionParticles.Play();
                mainCamera.CameraShake(0.25f, 5, 2);
                visuals.SetActive(false);
                canvas.SetActive(false);
                GetComponent <EdgeCollider2D>().enabled = false;

                playedOnce = true;

                if (oreResourceType == OreResourceType.Fuel)
                {
                    GameObject newOre = Instantiate(referenceManager.Zones[0], transform.position, transform.rotation, transform.parent);
                    newOre.SetActive(false);
                    newOre.GetComponent <Scr_Ore>().mainCamera        = mainCamera;
                    newOre.GetComponent <Scr_Ore>().referenceManager  = referenceManager;
                    newOre.GetComponent <Scr_Ore>().playerShipStats   = playerShipStats;
                    newOre.GetComponent <Scr_Ore>().astronautsActions = astronautsActions;
                    newOre.GetComponent <Scr_Ore>().oreResourceType   = OreResourceType.Fuel;
                    newOre.GetComponent <Scr_Ore>().amount            = initalAmount;
                    referenceManager.respawnFuelResources.Add(newOre);
                }

                Destroy(gameObject, 2.5f);
            }
        }

        if (amount < (initalAmount - rest))
        {
            rest += 1;
            rest  = Mathf.Clamp(rest, 0, initalAmount);
        }
    }