/*******************************************************************
*
* File    : JSFX_Squidie.js © JavaScript-FX.com
*
* Created : 2001/02/27
*
* Author  : Roy Whittle  www.Roy.Whittle.com
*
* Purpose : To create an animated DHTML effect that looks like the
*		'Squidies' from 'The Matrix'
*
* History
* Date         Version        Description
*
* 2001-02-27	1.0		Converted 'Eel.js' to this file
***********************************************************************/
var JSFX_Sprites = new Array();
var TargetX = 400;
var TargetY = 300;

function JSFX_CreateSprites(n)
{
	for(x=0 ; x<n ; x++)
		JSFX_AddSprite();

	setTimeout("JSFX_Squidie_Ani()", 50);
	rand();
}
function JSFX_AddSprite()
{
	var i=JSFX_Sprites.length;

	JSFX_Sprites[i] = new JSFX.Layer("<IMG SRC='images/fx1.gif'>");
	JSFX_Sprites[i].x = 23;
	JSFX_Sprites[i].y = 0;
	JSFX_Sprites[i].dx = 5;
	JSFX_Sprites[i].dy = 5;
	JSFX_Sprites[i].show();
	if(i > 0)
		JSFX_Sprites[i-1].setContent("<IMG SRC='images/fx2.gif'>");
}
function JSFX_Squidie_Ani()
{
	for(i=0 ; i<JSFX_Sprites.length-1 ; i++)
	{
		var b1 = JSFX_Sprites[i];
		var b2 = JSFX_Sprites[i+1];
		b1.x = b2.x+1;
		b1.y = b2.y-1;

		b1.moveTo(b1.x, b1.y);
	}
	var b1 = JSFX_Sprites[JSFX_Sprites.length-1];
	var X = (TargetX-b1.x);
	var Y = (TargetY-b1.y);
	var len = Math.sqrt(X*X+Y*Y);
	var dx = 20 * (X/len);
	var dy = 20 * (Y/len);
	var ddx = (dx - b1.dx)/10;
	var ddy = (dy - b1.dy)/10;
	b1.dx += ddx;
	b1.dy += ddy;
	b1.x += b1.dx;
	b1.y += b1.dy;
	b1.moveTo(b1.x, b1.y);

	setTimeout("JSFX_Squidie_Ani()", 25);
}
function rand()
{
	TargetX = Math.random()*JSFX.Browser.getCanvasWidth();
	TargetY = Math.random()*JSFX.Browser.getCanvasHeight()+JSFX.Browser.getMinY();
	setTimeout("rand()", 500);
}
function JSFX_StartSquidie()
{
	JSFX_CreateSprites(20);
}

