public override void Interact(PlayerStateController player)
    {
        if (!carried)
        {
            // Carry the loot!
            carried = true;

            // Reset rigidbody
            rigidbody.isKinematic     = true;
            rigidbody.velocity        = Vector3.zero;
            rigidbody.angularVelocity = Vector3.zero;

            // Disable collider
            meshCollider.enabled = false;

            player.Lift(gameObject);
        }
        else
        {
            // Drop the loot!
            carried = false;
            rigidbody.isKinematic = false;
            meshCollider.enabled  = true;

            // If i'm to be destroyed, prevent me from being interacted with
            if (destroy)
            {
                canInteract           = false;
                rigidbody.isKinematic = true;
            }

            player.Drop(gameObject);
            absorbTarget = transform.position + new Vector3(0, 3, 0);
        }
    }