# this example is adapted from bump http://mxprototypes.free.fr .flash bbox=600x500 version=6 fps=10 name="bump.swf" compress background=#333333 .box box2 8 20 color=red # vide bordure rouge .edittext log width=480 height=600 #.put log 6 5 .sprite sp .put box2 .end .put o1=sp 00 20 .put o2=sp 30 20 .put o3=sp 60 20 .put o4=sp 90 20 .put o5=sp 120 20 .put o6=sp 150 20 .put o7=sp 180 20 .put o8=sp 210 20 .put o9=sp 240 20 .put oa=sp 270 20 .put n1=sp 00 60 .put n2=sp 30 60 .put n3=sp 60 60 .put n4=sp 90 60 .put n5=sp 120 60 .put n6=sp 150 60 .put n7=sp 180 60 .put n8=sp 210 60 .put n9=sp 240 60 .put na=sp 270 60 .action: var m=_root; function bump (x,y,radius,force){ // sur tous les elements de _root for (var z in m ){ // calcul distance objet courant / souris var distx = m[z]._x - x; var disty = m[z]._y - y; var distance=Math.sqrt(distx*distx+disty*disty); if ( m[z]._name.length == 2 ) // si nom objet a 2 caractères { // div par distance ( 0 exclus ) if (distance==0) distance=1; var cos = distx/distance; var sin = disty/distance; // si objet dans zone => effet if ( distance < radius) { // l'éloigner de la souris m[z]._x += force*cos*(radius-distance); m[z]._y += force*sin*(radius-distance); } } } } _root.onEnterFrame=function(){ m.bump(m._xmouse,m._ymouse,50,0.5); }; .end .end # end .flash