error CS0029: Cannot implicitly convert type `UnityEngine.GameObject' to `int'

using UnityEngine;
using System.Collections;

public class Generator : MonoBehaviour 
{
	public GameObject[] Skiny;
	public int LiczbaLosowanychSkinow = 40;
	private int[] WylosowaneSkiny;
	public float PozycjaPoczatkowa = -1.1f;

	void Start () 
	{
		LiczbaLosowanychSkinow--;
		do
		{
			WylosowaneSkiny[LiczbaLosowanychSkinow] = losuj();
			LiczbaLosowanychSkinow--;
		}while(LiczbaLosowanychSkinow >= 0);
		losuj ();
		UstawPozycjePoczatkowe ();
	}
	

	void Update () 
	{
	
	}

	void UstawPozycjePoczatkowe()
	{
		LiczbaLosowanychSkinow = 39;
		do {
			Vector2 pozycja = new Vector2(PozycjaPoczatkowa,transform.position.y);
			Skiny[WylosowaneSkiny[LiczbaLosowanychSkinow]].transform.position = pozycja;
			PozycjaPoczatkowa += 1.1f;
			
			LiczbaLosowanychSkinow--;
		} while(LiczbaLosowanychSkinow >=0);
	}

	int losuj()
	{
		LiczbaLosowanychSkinow = 39;
		do
		{
			WylosowaneSkiny[LiczbaLosowanychSkinow] = Skiny[Random.Range(0, Skiny.Length)];
			LiczbaLosowanychSkinow--;
		}while(LiczbaLosowanychSkinow >= 0);
	}
}

(46,25): error CS0029: Cannot implicitly convert type UnityEngine.GameObject' to in

The error message has already told you where and what the problem is:

WylosowaneSkiny[LiczbaLosowanychSkinow] = Skiny[Random.Range(0, Skiny.Length)];

Skiny[Random.Range(0, Skiny.Length)] returns a random element from Skiny[], which is an array of GameObjects.
But you’re trying to assign that GameObject to the 39th element of WylosowaneSkiny[], which is an array of ints…