var chmurka_w=350;//szerokość obrazku z chmurką
var chmurka_h=254;//wysokość obrazku z chmurką

//położenie lewego górnego rogu obrazku chmurki
var chmurka_x;
var chmurka_y;

//rozmiary obszaru w którym ma się poruszać chmurka
var ramka_w=1100;//szerokość
var ramka_h;//wysokość

//wartości granicznego obszaru poruszania chmurki dla jej lewego górnego rogu 
var ramka_left;//lewa granica
var ramka_top=10;//górna granica
var ramka_right;//prawania granica
var ramka_bottom;//dolna granica

//zmienna dostępu do chmurki
var chmurka;

//wartości przesuwania chmurki w poziomie i pionie
var dx=0,dy=0;

var przesun_max=2;//maksymalne przesunięcie chmurki w każdej osi

var przesunOdstep=20;//odstęp czasu między przesunięciami chmurki

var przesuwajChmurke=true;//parametr określający czy przesuwać chmurkę, czy została już wyłączona

var chmurkaWidoczna=true;//parametr okre¶laj±cy czy chmurka jest widoczna

//------------------------------------------------------------------------------------------------------------------------------------------------------------

function wlaczChmurke()
{
 chmurka=document.getElementById("chmurka");

 //obliczenie parametrów dostępnych po załadowaniu strony
 ramka_h=document.body.clientHeight;
 ramka_left=Math.floor(document.body.clientWidth/2-ramka_w/2);
 ramka_right=Math.floor(ramka_left+ramka_w-chmurka_w);
 ramka_bottom=Math.floor(ramka_h-10-chmurka_h);

 //obliczenie początkowego położenia chmurki, środek okna przeglądarki
 chmurka_x=Math.floor(document.body.clientWidth/2-chmurka_w/2-chmurka_w/2-50);
 chmurka_y=Math.floor(document.body.clientHeight/2-chmurka_h/2);

 //ustawienie chmurki na środku
 chmurka.style.left=chmurka_x+"px";
 chmurka.style.top=chmurka_y+"px";
 
 //pokazanie chmurki
 chmurka.style.display="block";
 
 przesunChmurke();
}

//------------------------------------------------------------------------------------------------------------------------------------------------------------

function przesunChmurke()
{
 if ( przesuwajChmurke )
   {
    czyLosowacX=Math.floor(Math.random()*40);
    czyLosowacY=Math.floor(Math.random()*40);
    
    zmiana_x=0;
    zmiana_y=0;
   
    if ( czyLosowacX==0 )
      {
	   //losowanie parametrów zmiany przesunięcia dopóki nie są prawidłowe
	   do
	     {
	      //wylosowanie zmiany dla parametru dx
	      zmiana_x=Math.floor(Math.random()*20)/10-1;
		 
	  	  //ustawienie parametrów dx
		  dx1=dx+zmiana_x;
		 }
	   while ( Math.abs(dx1)>przesun_max || Math.floor(dx1)==0 );
	  }
	  
	if ( czyLosowacY==0 )
      {
	   //losowanie parametrów zmiany przesunięcia dopóki nie są prawidłowe
	   do
	     {
	      //wylosowanie zmiany dla parametru dy
	 	  zmiana_y=Math.floor(Math.random()*20)/10-1;
		 
	  	  //ustawienie parametrów dy
		  dy1=dy+zmiana_y;
		 }
	   while ( Math.abs(dy1)>przesun_max || Math.floor(dy1)==0 );
	  }
	  
	//ustawienie parametrów dx i dy
	dx+=zmiana_x;
	dy+=zmiana_y;
	 
	//obliczenie nowego położenia chmurki
    chmurka_x1=Math.floor(chmurka_x+dx);
    chmurka_y1=Math.floor(chmurka_y+dy);
    
    //sprawdzenie czy chmurki nie nachodz± na siebie i druga chmurka jest widoczna
    if ( chmurkaWidoczna1 && chmurka_w>=Math.abs((chmurka_x1+chmurka_w/2)-(chmurka1_x+chmurka1_w/2)) && chmurka_h>=Math.abs((chmurka_y1+chmurka_h/2)-(chmurka1_y+chmurka1_h/2)) )
      {
       dx=-dx;
       dy=-dy;
      }
	   
	//jeśli wychodzi poza ramkę zmień kierunek ruchu w danej osi na przeciwny
    if ( chmurka_x1<=ramka_left || chmurka_x1>=ramka_right ) dx=-dx;
    if ( chmurka_y1<=ramka_top || chmurka_y1>=ramka_bottom ) dy=-dy;
	 
	//obliczenie nowego położenia chmurki
	chmurka_x+=dx;
	chmurka_y+=dy;
	 
	//ustawienie chmurki w nowym położeniu
	chmurka.style.left=Math.floor(chmurka_x)+"px";
	chmurka.style.top=Math.floor(chmurka_y)	+"px";
	 
	//ustawienie włączenie kolejnego przesunięcia chmurki
	setTimeout("przesunChmurke()",przesunOdstep);
   }
}

//------------------------------------------------------------------------------------------------------------------------------------------------------------

function zatrzymajChmurke()
{ 
 przesuwajChmurke=false;
}

//------------------------------------------------------------------------------------------------------------------------------------------------------------

function uruchomChmurke()
{
 przesuwajChmurke=true;
 
 przesunChmurke();
}

//------------------------------------------------------------------------------------------------------------------------------------------------------------

function wylaczChmurke()
{
 //wyłączenie wyświetlania chmurki
 chmurka.style.display="none";

 chmurkaWidoczna=false;
 
 przesuwajChmurke=false;
}
