com
tahnee.
www.
http://
1

***** The four red spots are where you fill in the name, so please change them!*****

The blue names are where you put in the color name, or else leave it to have it like this page.

<script language="JavaScript" src="http://us.geo1.yimg.com/us.geocities.com/js_source/ygIELib8.js"></script><script language="JavaScript">var yviContents='http://us.toto.geo.yahoo.com/toto?s=76001089&l=NE&b=1&t=984298946';</script></script><script language="JavaScript">yviR='us';yfiEA(0);</script>

<!-- text above generated by server. PLEASE REMOVE -->

<html>

<body>

 

!-- Start Elastic Bullets -->

<!-- The following div and img tags are used by the elastic bullets script -->

<!-- you can change the image src and size to customize with different images -->

<div id="dot0" style="position: absolute; visibility: hidden; height: 11; width: 11;">

 <img src="bullet.gif" width="11" height="11">

</div>

<div id="dot1" style="position: absolute; height: 11; width: 11;">

 <font color="blue"><b>*****</b></font>

</div>

<div id="dot2" style="position: absolute; height: 11; width: 11;">

 <font color="red"><b>*****</b></font>

</div>

<div id="dot3" style="position: absolute; height: 11; width: 11;">

 <font color="lime"><b>*****</b></font>

</div>

<div id="dot4" style="position: absolute; height: 11; width: 11;">

 <font color="orange"><b>*****</b></font>

</div>

 

 

<script LANGUAGE="JavaScript">

<!-- hide code

//

// Elastic Bullets v1.2

// http://www.geocities.com/pwinston/ebullets

// Philip Winston <pwinston@yahoo.com>

//

var nDots = 5;

 

var Xpos = 0;

var Ypos = 0;

 

  // fixed time step, no relation to real time

var DELTAT = .01;

  // size of one spring in pixels

var SEGLEN = 10;

  // spring constant, stiffness of springs

var SPRINGK = 10;

  // all the physics is bogus, just picked stuff to

  // make it look okay

var MASS = 1;

// Positive XGRAVITY pulls right, negative pulls left

// Positive YGRAVITY pulls down, negative up

var XGRAVITY = 0;

var YGRAVITY = -50;

// RESISTANCE determines a slowing force proportional to velocity

var RESISTANCE = 10;

  // stopping criterea to prevent endless jittering

  // doesn't work when sitting on bottom since floor

  // doesn't push back so acceleration always as big

  // as gravity

var STOPVEL = 0.1;

var STOPACC = 0.1;

var DOTSIZE = 11;

  // BOUNCE is percent of velocity retained when

  // bouncing off a wall

var BOUNCE = 0.75;

 

var isNetscape = navigator.appName=="Netscape";

 

  // always on for now, could be played with to

  // let dots fall to botton, get thrown, etc.

var followmouse = true;

 

var dots = new Array();

init();

 

function init()

{

  var i = 0;

  for (i = 0; i < nDots; i++) {

  dots[i] = new dot(i);

  }

 

  if (!isNetscape) {

  // I only know how to read the locations of the

  // <LI> items in IE

  //skip this for now

  // setInitPositions(dots)

  }

 

  // set their positions

  for (i = 0; i < nDots; i++) {

  dots[i].obj.left = dots[i].X;

  dots[i].obj.top = dots[i].Y;

  }

 

 

  if (isNetscape) {

  // start right away since they are positioned

  // at 0, 0

  startanimate();

  } else {

  // let dots sit there for a few seconds

  // since they're hiding on the real bullets

  setTimeout("startanimate()", 100);

  }

}

 

 

 

function dot(i)

{

  this.X = Xpos;

  this.Y = Ypos;

  this.dx = 0;

  this.dy = 0;

  if (isNetscape) {

  this.obj = eval("document.dot" + i);

  } else {

  this.obj = eval("dot" + i + ".style");

  }

}

 

 

function startanimate() {

  setInterval("animate()", 20);

}

 

 

// This is to line up the bullets with actual LI tags on the page

// Had to add -DOTSIZE to X and 2*DOTSIZE to Y for IE 5, not sure why

// Still doesn't work great

function setInitPositions(dots)

{

  // initialize dot positions to be on top

  // of the bullets in the <ul>

  var startloc = document.all.tags("LI");

  var i = 0;

  for (i = 0; i < startloc.length && i < (nDots - 1); i++) {

  dots[i+1].X = startloc[i].offsetLeft

  startloc[i].offsetParent.offsetLeft - DOTSIZE;

  dots[i+1].Y = startloc[i].offsetTop +

  startloc[i].offsetParent.offsetTop + 2*DOTSIZE;

  }

  // put 0th dot above 1st (it is hidden)

  dots[0].X = dots[1].X;

  dots[0].Y = dots[1].Y - SEGLEN;

}

 

// just save mouse position for animate() to use

function MoveHandler(e)

{

  Xpos = e.pageX;

  Ypos = e.pageY;

  return true;

}

 

// just save mouse position for animate() to use

function MoveHandlerIE() {

  Xpos = window.event.x + document.body.scrollLeft;

  Ypos = window.event.y + document.body.scrollTop;

}

 

if (isNetscape) {

  document.captureEvents(Event.MOUSEMOVE);

  document.onMouseMove = MoveHandler;

} else {

  document.onmousemove = MoveHandlerIE;

}

 

 

function vec(X, Y)

{

  this.X = X;

  this.Y = Y;

}

 

// adds force in X and Y to spring for dot[i] on dot[j]

function springForce(i, j, spring)

{

  var dx = (dots[i].X - dots[j].X);

  var dy = (dots[i].Y - dots[j].Y);

  var len = Math.sqrt(dx*dx + dy*dy);

  if (len > SEGLEN) {

  var springF = SPRINGK * (len - SEGLEN);

  spring.X += (dx / len) * springF;

  spring.Y += (dy / len) * springF;

  }

}

 

 

function animate() {

  // dots[0] follows the mouse,

  // though no dot is drawn there

  var start = 0;

  if (followmouse) {

  dots[0].X = Xpos;

  dots[0].Y = Ypos;

  start = 1;

  }

 

  for (i = start ; i < nDots; i++ ) {

 

  var spring = new vec(0, 0);

  if (i > 0) {

  springForce(i-1, i, spring);

  }

  if (i < (nDots - 1)) {

  springForce(i+1, i, spring);

  }

 

  // air resisitance/friction

  var resist = new vec(-dots[i].dx * RESISTANCE,

  -dots[i].dy * RESISTANCE);

 

  // compute new accel, including gravity

  var accel = new vec((spring.X + resist.X)/MASS + XGRAVITY,

  (spring.Y + resist.Y)/ MASS + YGRAVITY);

 

  // compute new velocity

  dots[i].dx += (DELTAT * accel.X);

  dots[i].dy += (DELTAT * accel.Y);

 

  // stop dead so it doesn't jitter when nearly still

  if (Math.abs(dots[i].dx) < STOPVEL &&

  Math.abs(dots[i].dy) < STOPVEL &&

  Math.abs(accel.X) < STOPACC &&

  Math.abs(accel.Y) < STOPACC) {

  dots[i].dx = 0;

  dots[i].dy = 0;

  }

 

  // move to new position

  dots[i].X += dots[i].dx;

  dots[i].Y += dots[i].dy;

 

  // get size of window

  var height, width;

  if (isNetscape) {

  height = window.innerHeight + window.pageYOffset;

  width = window.innerWidth + window.pageXOffset;

  } else {

  height = document.body.clientHeight + document.body.scrollTop;

  width = document.body.clientWidth + document.body.scrollLeft;

  }

 

  // bounce of 3 walls (leave ceiling open)

  if (dots[i].Y >= height - DOTSIZE - 1) {

  if (dots[i].dy > 0) {

  dots[i].dy = BOUNCE * -dots[i].dy;

  }

  dots[i].Y = height - DOTSIZE - 1;

  }

  if (dots[i].X >= width - DOTSIZE) {

  if (dots[i].dx > 0) {

  dots[i].dx = BOUNCE * -dots[i].dx;

  }

  dots[i].X = width - DOTSIZE - 1;

  }

  if (dots[i].X < 0) {

  if (dots[i].dx < 0) {

  dots[i].dx = BOUNCE * -dots[i].dx;

  }

  dots[i].X = 0;

  }

 

  // move img to new position

  dots[i].obj.left = dots[i].X;

  dots[i].obj.top = dots[i].Y;

  }

}

 

// end code hiding -->

</script>

 

</body>

</html>

<!-- text below generated by server. PLEASE REMOVE --></table></script></style></noscript></applet></script><script language="JavaScript" src="http://us.geo1.yimg.com/www.geocities.com/js_source/geov2.js"></script><script language="javascript">geovisit();</script><noscript><img src="http://visit.geocities.com/visit.gif" border=0 width=1 height=1></noscript>

<IMG SRC="http://geo.yahoo.com/serv?s=76000424&t=984298946" ALT=1 WIDTH=1 HEIGHT=1>