var isIE = false;
var isNav = false;
var weg;
var lstep = 4;
var tstep = 1;
var zeit = 2;
var ttt = null;
var sinTab;
var schritte = 30;
var schrittweite = (2 * Math.PI) / schritte;
var pos = 0;
var zaehler = 0;
var beenden = false;
var richtung = 1;

var obj;

function browser()
{  if ( document.layers && !window.opera )
	{  isNav = true;
      weg = "hide";
   }
   if ( document.all || document.getElementById )
   {  isIE = true;
      weg = "hidden";
   }
   return isIE || isNav;
}

/* angelehnt an
        Stefan Koch:
        Javascript
        -Einführung
        -Programmierung
        -Referenz;
        dpunkt.verlag iX EDITION
        ISBN 3-932588-26-6
*/
function erzeugeSinTab()
{  var tab = new Array();
   var x = 0;

   for( i = 0 ; i <= schritte ; i++ )
   {  tab[i] = Math.round( Math.sin( x ) * 25 ) //+ 50 ;
      x += schrittweite;
      tab[i] -= tab[0];
   }
   return tab;
}

/* angelehnt an
        Stefan Koch:
        Javascript
        -Einführung
        -Programmierung
        -Referenz;
        dpunkt.verlag iX EDITION
        ISBN 3-932588-26-6
*/
function Aufbau()
{  if ( document.layers && !window.opera )
	{  isNav = true;
      weg = "hide";
      obj = document.layers["elfe"];
   }
   if ( document.all && !window.opera )
	{  isIE = true;
      weg = "hidden";
      obj = document.all["elfe"].style;
   }
   if ( document.getElementById )
	{  isIE = true;
      weg = "hidden";
      obj = document.getElementById("elfe").style;
   }
   obj.top = 500;
   obj.left = -75;
// obj.visibility = da;
}

function fliegen()
{  if (browser())
   {  sinTab = erzeugeSinTab();
      Aufbau();
      schwingen();
   }
}

/* angelehnt an
        Stefan Koch:
        Javascript
        -Einführung
        -Programmierung
        -Referenz;
        dpunkt.verlag iX EDITION
        ISBN 3-932588-26-6
*/
function schwingen()
{  var i;
   zaehler++;

   if ( !beenden )
   {
      if ( document.all || document.getElementById )
      {  obj.left = sinTab[ pos ] + ( 2 * zaehler );
         obj.top = parseInt(obj.top) - 5 * richtung;
         if ( parseInt(obj.top) < -83 )
            beenden = true;
         if ( parseInt(obj.top) > 410 )
            richtung = 1;
      }
      else
      {  obj.pixelLeft = sinTab[ pos ] + ( 2 * zaehler );
         obj.pixelTop -= 5 * richtung;
         if ( obj.pixelTop < -83 )
            beenden = true;
         if ( obj.pixelTop > 410 )
         {   richtung = 1;
//alert(richtung);
}
      }
      if( ++pos >= schritte )
         pos = 0;

      ttt = setTimeout( "schwingen()", 50 * zeit );
   }
   else
   {  clearTimeout( ttt );
      obj.visibility = weg;
   }
}

function richtungWechseln()
{  richtung = -richtung;
}
function aus()
{  clearTimeout( ttt );
   obj.visibility = weg;
}
