keeping track of rigidbody.velocity on rigidbody turned kinematic

is there any known ways to know what is (or should be) the velocity of the rigidbody that just stopped being kinematic?

Think of a character who just got killed mid jump and turned into a ragdoll. Normally it will just stop, mid-air, and start falling straight down, unnaturally. the point is for it to keep flying where it was flying while it was still kinematic.

Why don't you set your rigidbody to isKinematic once it hits the ground?

When it gets hit you can just apply some extra gravity or downforce to simulate it dying, and once it hits the ground set it to IsKinematic.

hi i have ben looking trough allot of entrys now and this is the most similar i could find i have basicly the same problem in my case its a flag for a capture the flag script and it works fine the way it is but if i drop the flag and make it non kinematic it losses its velocity i tryed to save the velocity in a variable or floats but nothing seems to work normaly i schould be able to store the v3 directly or take it apart into 3 values but the strange thing is it shows at 0 as soon as i try to put it back inn …any help would be awsome }

void Flagdrop(){
    coolDownTimer = coolDown;
  //  Velocity = rBody.velocity;
   // Angular = rBody.angularVelocity;
    Flag.transform.parent = null;
    rBody.detectCollisions = true;
    rBody.useGravity = true;
    rBody.isKinematic = false;
    Flag.transform.rotation = Quaternion.Euler(0, 0, 0);
    coolDownTimer = coolDown;
  //  rBody.velocity = Velocity;
  //  rBody.angularVelocity = Angular;

alternative : the object is parented to another onject whit rigidboy wich is the player (instantiation)
so if there is a way to get the velocity from the parent object if it is parented that could work to but im not sure how
if (flag.transform.parent.name == “MuzzleTransform”)
get component ? .parent ? somthing along this way ?