# Random Animation

HOW DID PUT MOVIES AT RANDOM WHEN THE USER IS NO INTERACTING WITH PAGE(EX.IF THE USER IS NOT CLICKING ANY MENU, A ANMATION SHOULD BE PLAYED. CAN ANY ONE HELP:)

=) there is a solution =)
create 2 layers,one actions and other is objects.
then in the actions layer put in this code

function getdistance (x, y, x1, y1) {
var run, rise;
run = x1-x;
rise = y1-y;
return (hyp(run, rise));
}
function hyp (a, b) {
return (Math.sqrt(aa+bb));
}
MovieClip.prototype.reset = function () {
var dist, norm, movie_height, movie_width;

// movie_height: refers to the height of your movie
// movie_width: refers to the width of your movie

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

movie_height = 600;
movie_width = 950;

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

speed = Math.random()4+2;
targx = Math.random()
(movie_width-_width);
targy = Math.random()*(movie_height-_height);
dist = _root.getdistance(_x, _y, targx, targy);

norm = speed/dist;
diffx = (targx-_x)*norm;
diffy = (targy-_y)*norm;
};

MovieClip.prototype.move = function () {
var cycle;

// cycle: specifies the number of milliseconds waited
// between movements

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

cycle = 200;

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

if (_root.getdistance(_x, _y, targx, targy)>speed) {x += diffx;y += diffy;
} else {x = targx;
y = targy;
if (!this.t) {
t = getTimer();
}if (getTimer()-t>cycle) {reset();
t = 0;
}
}
_x = x;
_y = y;
}

then on the other layer create a movie clip which will move randomly.

give it this code.

onClipEvent (enterFrame) {
move();
}

then put this code in any other mc’s you want to have moved randomly,but you only need 1 actions layer with 1 single action in this forum reply,ok hope this is use full 4 u.
=) =)

Nice code DMX… Can you explain a bit?=)

pom :asian:

function getdistance (x, y, x1, y1) {
var run, rise;
run = x1-x;
rise = y1-y;
return (hyp(run, rise));
}
function hyp (a, b) {
return (Math.sqrt(aa+bb));
}
MovieClip.prototype.reset = function () {
var dist, norm, movie_height, movie_width;

// movie_height: refers to the height of your movie
// movie_width: refers to the width of your movie

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

movie_height = 600;
movie_width = 950;

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

is self explaining.

speed = Math.random()4+2;
targx = Math.random()
(movie_width-_width);
targy = Math.random()*(movie_height-_height);
dist = _root.getdistance(_x, _y, targx, targy);

norm = speed/dist;
diffx = (targx-_x)*norm;
diffy = (targy-_y)*norm;
};

MovieClip.prototype.move = function () {
var cycle;

// cycle: specifies the number of milliseconds waited
// between movements

is info about speed and stuff.

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

cycle = 200;

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

if (_root.getdistance(_x, _y, targx, targy)>speed) {x += diffx;y += diffy;
} else {x = targx;
y = targy;
if (!this.t) {
t = getTimer();
}if (getTimer()-t>cycle) {reset();
t = 0;
}
}
_x = x;
_y = y;
}

decides movements and maximum num of mc’s moving.

ps.see attached movie random.zip

There’s no attached file. And it’s the first time I see someone on this forum thinking that Supra’s code is self-explanatory…

Anyway, NANA, the tute is on this site, just look for “random motion tutorial”.

pom :asian: