网页教学网
 当前位置: 网页教学网 >> 动画制作 >> Flash action技术 >> Flash教程:纯AS代码制作的燃烧的火焰效果
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

Flash教程:纯AS代码制作的燃烧的火焰效果

http://www.webjx.com  更新日期:2007-10-10 19:40  出处:闪吧  作者:lvan

燃烧的火:纯AS代码火焰效果,Flash教程。希望大家理解掌握!

效果如下。

  希望需要的朋友拿去用,顺便也希望拿走代码的朋友能顶起来,不要只拿代码不回帖,到时候有人需要了就找不到了。好东西大家要分享嘛,不要让它沉下去...
顺便也给我,写代码的人一点动力

/*--------------------------------------------------------------
      支持原创 ANT制作
--------------------------------------------------------------*/
/*--------------------------背景-------------------------------*/
var mcs:MovieClip = createEmptyMovieClip("query", -1);
with (mcs) {
beginFill(0x000000,100);
lineStyle(0,0x000000,0);
moveTo(0,0);
lineTo(Stage.width,0);
lineTo(Stage.width,Stage.height);
lineTo(0,Stage.height);
lineTo(0,0);
endFill();
}
/*--------------------------制作影片剪辑实例-------------------------------*/
import flash.geom.*;
var McR:Number = 40;
var McA:Number = 60;
var CreaMovie:MovieClip = this.createEmptyMovieClip("CreaMc", 0);
with (CreaMovie) {
fillType = "radial";
colors = [0xFFFF00, 0xFFFF00];
alphas = [McA, 0];
ratios = [0, 0xFF];
matrix = new Matrix();
matrix.createGradientBox(McR,McR,0,0,0);
beginGradientFill(fillType,colors,alphas,ratios,matrix);
moveTo(0,0);
lineTo(0,McR);
lineTo(McR,McR);
lineTo(McR,0);
lineTo(0,0);
endFill();
}
CreaMovie._visible = false;
/*--------------------------火效果-------------------------------*/
var McNum:Number = 1;
var McMore:Number = 200;
var McRandom:Number = 6;
var McY:Number = 4;
var Mc_x:Number = Stage.width/2;
var Mc_y:Number = Stage.height/2+Stage.height/4;
var Mc_more:Number = 100;
var Mc_scal:Number = 50;
flame = function(){;
var scale:Number=random(Mc_scal)+1;
var flames:MovieClip=CreaMovie.duplicateMovieClip("flames"+McNum,McNum,{_x:Mc_x,_y:Mc_y,_alpha:Mc_more/2,_xscale:scale,_yscale:scale});
flames.blendMode = "add";
flames.fast=Math.floor(scale/10);
flames.action=(random(2)==1)?1:-1;
flames.scal=10-flames.fast;
flames.n=flames.s=1;
flames._r = flames._g = 255;
  flames._b =0;
flames.gs=(10-flames.scal+2)*3;
flames.onEnterFrame=function(){
  this._x+=this.fast*this.action*this.n*this.s;
  this._y-=McY;
  this._xscale+=this.scal*this.n*this.s;
  this._yscale+=this.scal*this.n*this.s;
  this._alpha+=10*this.n*this.s;
  this._g-=this.gs;
  if(this._g<=0){
   this._g=0;
  }
  new Color(this).setRGB(this._r << 16 | this._g << 8 | this._b);
  if(this._xscale>=Mc_more){;
   this.n=-1;
   this.s=0.2;
  };
  if(this._alpha>=Mc_more){;
   this._alpha=Mc_more;
  }else if(this._alpha<=random(20)){;
   this.removeMovieClip();
   delete this.onEnterFrame();
  };
};
if(McNum>=McMore){;
  McNum=0;
};
McNum++;
};
setInterval(flame,10);
关键词:Flash,AS,火焰
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为