Flash AS 入门教程 三个实例讲解

  stop();

  i = 0;

  w_arry = [30, 110, 190, 270, 350, 430]; //把文本的横坐标作为一个数组

  for (t=1; t<7; t++) {

  m = Math.floor(Math.random()*w_arry.length);//从数组中任意选出一个编号

  this["wz"+t]._x = w_arry[m]; //把数组中这个编号的元数作为这个文本的横坐标

  w_arry.splice(m, 1);     //从这个数组中删去这个元数;

  this["wz"+t]._y = 30;    //设置这个文本的纵坐标

  }

  tx_arry = [76, 156, 236, 316, 396, 476]; //与上面类同;

  for (s=1; s<7; s++) {

  m = Math.floor(Math.random()*tx_arry.length);

  this["tx"+s+"_mc"]._x = tx_arry[m];

  tx_arry.splice(m, 1);

  this["tx"+i+"_mc"]._y = 320;

  }

  function stlx(md, mc) {  //设置自定义函数

  md.x = md._x;      //影片剪辑的坐标用这个影片剪辑下的变量x,y来保存

  md.y = md._y;

  md.onPress = function() { //鼠标在md上按下时;

  startDrag(this, true);  //拖动这个md;

  };

  md.onRelease = function() { //鼠标在md上松开时;

  stopDrag();       //停止拖动;

  if (md.hitTest(mc)) {  //如果md和mc交叉或者重叠;

  if (md.k != 1) {   //又如果md下的变量k不等于1的话;

  i++;       //变量i加1;

  md.k = 1;     //使md下的变量k=1;

  }

  if (i == 6) {     //如果i等于6;

  nextFrame();//到下一帧停下;

  }

  } else { //如果md和nc不重叠或者相交;

  md._x = md.x; //把md原来的坐标赋给md(回到原来的位置)

  md._y = md.y;

  }

  };

  }

  for (j=1; j<7; j++) { //相当于在6个mc上调自定义函数

  stlx(this["tx"+j+"_mc"], this["wz"+j]);

  }

  /* 例如,j=1,那么就是:

  stlx(this.tx1_mc,this.wz1)

  */