Record objects' position in play mode?

I have to Edit ojbects in play mode because I have to edit other objects position according

walker’s position(its move by AI).So is it something I can do to edit objects in play mode,

and when I stop playing, the objects remain the position when I edit in play mode.

You can save the position and any information you want via PlayerPrefs:
http://unity3d.com/support/documentation/ScriptReference/PlayerPrefs.html

It’s not an easy task, because you need to plan things carefully:

1- You must identify each modifiable object with a unique number or name;

2- When the level is loaded, you must read all the saved info and modify the corresponding objects;

3- Anytime an object is modified, you must save its info and identifier with some PlayerPrefs function;

4- PlayerPrefs can only save and retrieve Int, Float and String - not Vector3, Quaternions and other really interesting things; usually its easier to create a string with all the relevant info and save it under a key related to the object identifier, like this:

  var info = transform.position.ToString()+";"+transform.rotation.ToString();
  PlayerPrefs.SetString("OBJ"+myIdNum.ToString(),info);

At Start, if some info was saved, read it, parse the string and modify the object:

  function Start(){

    var key = "OBJ"+myIdNum.ToString();
    if (PlayerPrefs.HasKey(key)){  // if something was saved...
      var info = PlayerPrefs.GetString(key);  // read the info...
      transform.position = parsePosition(info);  // and modify...
      transform.rotation = parseRotation(info);  // the object
    }
  }

This is the basic idea - you must taylor it to fit your needs. Hope this can solve your problem.

How i can make object draggble means that i can change their positions on play mode .
thnxx