Network Objects Sync Problems Before Client Connect

Hi guys my problem is sync objects BEFORE client connect server.

if my client connect server before nothing be changed everythings fine. i mean if i ll destroy some networkView object it losts every clients connected. but if i destroy something before client connection player can see that object when he arrives. but only his own game this object actually destroyed by onther player.

i have an idea i can create a listener and creata a file for every objects position scale and positions and when clients connect it can take values from that file.

but i really dont know how. i check lots of tutorials but didnt take any way.

is there any one can show me a way(function, class, document…) for this. or a tutorial worked for that.

and here is my jS file.

var oyunAdi = "OyunDeneme"; //its turkish, means gameName

var playerPrefab : GameObject;
var kameraPrefab : GameObject;
var spawnObject : Transform;
var spawnObject2 : Transform;

private var refreshing:boolean;
private var hostBilgi:HostData[];

private var btnX:float;
private var btnY:float;
private var btnW:float;
private var btnH:float;

function Start(){
	btnX = Screen.width * 0.1;
	btnY = Screen.width * 0.1;
	btnW = Screen.width * 0.2;
	btnH = Screen.width * 0.1;
}

function spawnPlayer(){
	Network.Instantiate(playerPrefab, spawnObject.position, Quaternion.identity, 0);
	//Network.Instantiate(kameraPrefab, spawnObject2.position, Quaternion.identity, 0);

}

function OnServerInitialized(){
	Debug.Log("Server Kuruldu");
	spawnPlayer();
}

function OnConnectedToServer(){
	spawnPlayer();
}


function refreshHostList(){
	MasterServer.RequestHostList(oyunAdi);
	refreshing = true;
}

function Update(){
	if(refreshing){
		if(MasterServer.PollHostList().Length > 0){
			refreshing = false;
			Debug.Log(MasterServer.PollHostList().Length);
			hostBilgi = MasterServer.PollHostList();
		}
	}
}

//mesajlar
function startServer(){
	Network.InitializeServer(32, 25001, !Network.HavePublicAddress); 
	MasterServer.RegisterHost(oyunAdi, "Tutori game name", "This is tutorial");
}

function OnMasterServerEvent(mse : MasterServerEvent){
	if(mse == MasterServerEvent.RegistrationSucceeded){
		Debug.Log("Registered Server");
	}
}


//GUI
function OnGUI(){
	if(!Network.isClient && !Network.isServer){
		if(GUI.Button(Rect(btnX, btnY, btnW, btnH), "Serverı Başlat")){
			Debug.Log("Server başlatılıyor...");
			startServer();
		}
		
		if(GUI.Button(Rect(btnX, btnY - 1.2 + btnH, btnW, btnH), "Serverı Yenile")){
			Debug.Log("Server Yenileniyor...");
			refreshHostList();
		}
		if(hostBilgi){
			for (var i:int = 0; i<hostBilgi.length; i++){
				if(GUI.Button(Rect(btnX * 1.5 + btnW, btnY * 1.2 + (btnH * i), btnW * 3, btnH*0.5), hostBilgi*.gameName)){*

_ Network.Connect(hostBilgi*);_
_
}_
_
}_
_
}_
_
}_
_
}*_

i found out why. i was using

Network.Destroy(gameObject);

but i fix it with

Network.RemoveRPCs(networkView.viewID);
Network.Destroy(gameObject);