エディタ拡張書いたときに、プレハブの値を読むのは以下の記事の方法でできる。
読んだ上で 書き換える には一工夫必要になる。
やりかたは簡単で、対象プレハブを引数にして EditorUtility.SetDirty を読んだ後、AssetDatabase.SaveAssets を呼べばいい。
Rigidbody rd = prefab.GetComponent<Rigidbofy>();
///// Rigidbodyの値を書き換える
EditorUtility.SetDirty(prefab);
AssetDatabase.SaveAssets();
AssetDatabase.SaveAssetsは呼ばなくても、メニューから Save Project するか、そのままUnityを終了させたときにプロジェクトに保存される。
SetDirtyのマニュアルには Undo.RecordObject つかえと書いてあるのだが、手元では成功しなかった。