// colorix-js by uja 12.9.07
// Klasse chip
// -------------------------------------------------------------------------------------------------
function chip()
{ var i,j;
  this.typ=0; this.trans=0; this.ix=0; this.iy=-2; this.yy=0;
  this.patt=new Array();
  for (i=0; i<2; i++) this.patt[i]=new Array();
  for (j=0; j<2; j++) for (i=0; i<2; i++) this.patt[i][j]=0;
  this.transform=transform;
  this.transback=transback;
  this.zeichne=zeichne_chip;
  this.move_to=move_to;
  this.init=init_chip;
}

function init_chip(nr,f1,f2)
{ this.typ=nr;
  if (nr==0) this.trans=0; else this.trans=2;
  for (i=0; i<2; i++) this.patt[i][1]=0;
  this.patt[0][0]=f1;
  if (nr==0) this.patt[1][0]=f2; else this.patt[1][0]=0;
  this.ix=0;
  this.iy=0;
  this.yy=0;
}

function transform()
{ with(this) if (trans<2) // nur Doppler
  { if (trans==0) { patt[0][1]=patt[1][0]; patt[1][0]=0; }
    else          { patt[1][0]=patt[0][0]; patt[0][0]=patt[0][1]; patt[0][1]=0; }
    trans=(trans+1)%2;
  }
}
function transback()
{ with(this) if (trans<2) // nur Doppler
  { transform();
    if (trans==0) { var k=patt[0][0]; patt[0][0]=patt[1][0]; patt[1][0]=k; }
  }
}

function zeichne_chip()
{ with(this) switch(trans)
  { case 0: document.images['s00'].src=ima[patt[0][0]+20].src;
            document.images['s10'].src=ima[patt[1][0]+24].src;
            document.images['s01'].src=ima[0].src;
            document.images['s11'].src=ima[0].src;
            break;
    case 1: document.images['s00'].src=ima[patt[0][0]+12].src;
            document.images['s10'].src=ima[0].src;
            document.images['s01'].src=ima[patt[0][1]+16].src;
            document.images['s11'].src=ima[0].src;
            break;
   default: document.images['s00'].src=ima[patt[0][0]].src;
            document.images['s10'].src=ima[0].src;
            document.images['s01'].src=ima[0].src;
            document.images['s11'].src=ima[0].src;
   }
}

function move_to(ax,ay)
{ this.ix=ax;
  this.iy=ay;
  // this.yy=0;
  document.getElementById('sprite').style.left=this.ix*dx+ofx;
  document.getElementById('sprite').style.top =this.iy*dy+this.yy;
}
// ------------------------------------------------------------------------------------------------

