How to get position of instantiated object before it is destroyed

So I have a line that shoots out from the player and rotates around them when the mouse button is held down. When I let up on the mouse the line disappears.
I have a gameobject attached to the end of the line furthest from my player and I would like the player to teleport/move towards it when the line is gone. However, I cannot seem to figure out how to send the coordinates of the gameobject to another script so that I can do that. Does anyone know how to do this?

Sounds like some sort of grapple system? Interesting.

If the object is a prefab that is instantiated and you have a trigger to detect collision:

//Make a variable on your player called last hit.
public Vector3 lastHit;

//Then from the game object script:
GameObject.FindObjectOfType<YourPlayerMonoBehaviorClass>().lastHit = transform.position;

This of course has a lot of room for error, and relies on collision detection from the GameObject.

A workaround here would be to instead just have the object always a child of the player, and set its script component as a variable and grab last hit from that script, and then SetActive when you want it.

public hitGameObject;

//In your player update function:
if (Input.GetKey(KeyCode.Space)){
    hitGameObject.transform.SetActive(true);
    if (hitGameObject.lastHit != null){
        //move player twords last hit.
    }
}else{
    hitGameObject.lastHit = null;
    hitGameObject.transform.SetActive(false);
}


//On your hitGameobject:

public class hitGameObject{
    public Vector3 lastHit;

    void OnTriggerStay(other collider){
        lastHit = transform.position;
    }
}

Alternatively, if it is a first person game, perhaps a raycast would suit you better?

        RaycastHit hit;
        float distance = 50.0f;
        // Does the ray intersect any objects excluding the player layer
        if (Physics.Raycast(transform.position, transform.forward, out hit, distance))
        {
            Debug.DrawRay(transform.position, transform.TransformDirection(Vector3.forward) * hit.distance, Color.yellow);
            
        Vector3 gameobjectPosition = hit.point;
        }

Thank you so much! Unfortunately, I was not able to make the object a child as is does a weird flip whenever the player turns, so I just made it follow the player and set it as a separate gameobject.
After working around a bit I ended up using your idea of activating/deactivating the scripts when the trigger was activated and just used GetComponent to find the position of the end target. Thank you for your help!