Using RPC to sync random numbers in a loop

I am working on a multiplayer game for IPAD. Its a 4 player game, so everything in the game has to be in sync on all the devices. I am using RPC calls for the same

Every time I start a game, I want to generate random textures for some of my gameObjects and this is a primary feature in my game. So I am stuck here. I can’t figure out how to synchronize all the random variables inside my loop so that the same textures are generated on all the devices

Here is a sample of my code without the RPC call. So I loop through all my gameObjects under consideration in the middleTiles list and generate random textures for each of them

for (int i = 0; i < middleTiles.Length; i++)
{

            //so here for the RPC call we would need to get the random number via RPC network so that its the same for all the clients
            int number = Random.Range(0, 100);

            GenerateRandomTextures(middleTiles*,number)*

}
middleTiles is a GameObject. Now I can’t pass a Gameobject in an RPC call.
So I can’t do something like below
networkView.RPC(“GenerateRandomTextures”, RPCMode.All, new object[] { middleTiles*, number });*

Could you send an RPC for each of your tiles?

Something like this:

for (int i = 0; i < middleTiles.Length; i++)
  int number = Random.Range(0, 100);
  networkView.RPC("GenerateTexture", RPCMode.All, new object[] { i, number });
end