• 【设为首页】
  • 【收藏闪客居】
  • 网站地图
  • RSS订阅
当前位置 :主页 > AS编程艺术 >
  • AS打造超炫极光效果(as2.0)

  • 来源:taoshaw.co 作者:沙子 2008-07-17 【 】 TAG:
对于一些特别炫的特效,一般的做法就是使用粒子软件构建效果,然后导入到FLASH中。而我们在FLASH中,也可以直接使用AS打造一些特效光炫。
演示:


制作过程比较复杂。在此不再详细介绍。把主要代码说一下。随后附源文件。
AS层中代码:

//禁止缩放
fscommand("allowscale", "false");
//建立没有右键的菜单
var my_cm:ContextMenu = new ContextMenu();
my_cm.hideBuiltInItems();
this.menu = my_cm;

Controller实例下的代码:

//================版权声明开始================//
//★淘沙网:http://www.taoshaw.com
//★淘沙网所有教程欢迎转载。不过请转载时注明出处。谢谢合作。
//================版权声明结束================//
onClipEvent (load) {
  Circles = new Array();
  Colors = new Array();
  //随机显示的颜色值
  Hues = new Array(12255343, 16750848, 16763904, 10080767, 13762457, 8978392, 9795583, 16737938);
  //循环显示的数量
  maxLoops = 15;
  numLoops = 8;
  t = 0;
  for (i=0; i<maxLoops; i++) {
    Colors[i] = new Color("_parent.bar"+i);
    Colors[i].setRGB(Hues[i]);
    //设置扩充大小
    setProperty("_parent.bar"+i, _yscale, 0);
  }
  //复制球体
  for (i=0; i<numLoops; i++) {
    attachMovie("circle", "C"+i, i);
    Colors[i] = new Color("C"+i);
    Colors[i].setRGB(Hues[i]);
    Circles[i] = new Object();
    Circles[i].radius = 250-i*15;
    Circles[i].orbit = i*30+15;
    Circles[i].r2 = Circles[i].radius*Circles[i].radius*10;
    Circles[i].f1 = Math.random()*40+40;
    Circles[i].f2 = Math.random()*40+40;
    Circles[i].f3 = Math.random()*40+40;
    Circles[i].f4 = Math.random()*40+40;
    Circles[i].p1 = Math.random()*6.280000E+000;
    Circles[i].p2 = Math.random()*6.280000E+000;
    Circles[i].p3 = Math.random()*6.280000E+000;
    Circles[i].p4 = Math.random()*6.280000E+000;
    setProperty("C"+i, _xscale, Circles[i].radius);
    setProperty("C"+i, _yscale, Circles[i].radius);
  }
  for (i=0; i<numLoops; i++) {
    Sounds[i].start(0, 999);
    Sounds[i].setVolume(0);
  }
}
onClipEvent (enterFrame) {
  for (i=0; i<numLoops; i++) {
    Circles[i].x = Math.sin(t/Circles[i].f1+Circles[i].p1)*Math.sin(t/Circles[i].f2+Circles[i].p2)*Circles[i].orbit*1.200000E+000;
    Circles[i].y = Math.sin(t/Circles[i].f3+Circles[i].p3)*Math.sin(t/Circles[i].f4+Circles[i].p4)*Circles[i].orbit;
    setProperty("C"+i, _x, Circles[i].x);
    setProperty("C"+i, _y, Circles[i].y);
    dx = _xmouse-Circles[i].x;
    dy = _ymouse-Circles[i].y;
    d = dx*dx;
    d = d+dy*dy;
    mix = Circles[i].r2/d;
    if (mix>70) {
      mix = 70;
    }
    Sounds[i].setVolume(mix);
    setProperty("_parent.bar"+i, _yscale, mix);
  }
  ++t;
}

原文件下



上一篇:FLASH编程艺术-L-puzzle(as2.0)   下一篇:没有了
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
推荐内容

Copyright © 2006-2008 flashas.net All Rights Reserved. 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)
友情链接: Mbt lami shoes Buy Mbt Shoes Online Uk MBT Shoes On Sale Cheap Mbt Shoes Mbt shoes MBT Sport Shoes MBT walking shoes Mbt shoes Cheap mbt shoes sale Mbt clearance sale Buy mbt shoes online UK MBT Shoes MBT Discount Shoes MBT UK MBT Shoes MBT US MBT Discount MBT Footwear Discount MBT Shoes On Sale MBT Shoes MBT Shoes Sale MBT Clearance Shoes MBT Walking Shoes mbt anti shoes mbt shoes clearance MBT Sandals mbt lami shoes mbt shoes mbt outlet mbt shoes on sale mbt walking shoes mbt footwear mbt shoes mbt shoes sale mbt shoes clearance mbt clearance shoes mbt cheap shoes mbt sale shoes