as3代码创建火效果代码
下面为.swf文件调用方法
private function update(e:event):void {
target.filters = [new displacementmapfilter(bmd, new point(), bitmapdatachannel.red,bitmapdatachannel.red, 10, strengh, "clamp")];
offset=offset.add(v);
bmd.perlinnoise(size / 2, size, 3, randomseed, false, true, 1, true, [offset, offset]);
}
fireeffect.as
package effects
{
import flash.display.*
import flash.events.event;
import flash.filters.displacementmapfilter;
import flash.geom.*
/**
* ...
* @author sliz
*/
public class fireeffect extends sprite
{
private var bmd:bitmapdata;
private var target:sprite = createsharp(400, 30,0);
private var speed:number = math.random() * 4 + 4;
private var strengh:number = math.random() * 60 + 60;
private var size:number = math.random() * 17 + 20;
private var randomseed:number = math.floor(math.random() * 10);
private var offset:point = new point();
private var v:point;
private var w:number = 50;
public function fireeffect()
{
addchild(target);
addto(target);
target.x = 0;
target.y = 200;
}
private function createsharp(width:number,height:number,angle:number):sprite {
var s:sprite = new sprite();
s.graphics.beginfill(0, 0);
s.graphics.drawrect( -w, -w, width + 2 * w, w);
s.graphics.beginfill(0xffffff);
s.graphics.drawrect( -w, height, width + 2 * w, w);
var filltype:string = gradienttype.linear;
var colors:array = [0x900000, 0x900000,0xff9900,0xfffd8a,0xffffff];
var alphas:array = [0,1,1,1, 1];
var ratios:array = [0x00,0xff/16,0xff*2/6,0xff*2/3, 0xff];
var matr:matrix = new matrix();
matr.creategradientbox(width, height, math.pi / 2);
var spreadmethod:string = spreadmethod.pad;
s.graphics.begingradientfill(filltype, colors, alphas, ratios, matr, spreadmethod);
s.graphics.drawrect(0, 0, width, height);
return s;
}
public function addto(target:object):void {
bmd = new bitmapdata(target.width, target.height);
v = new point(math.random() * (speed / 4) - speed / 8,math.random() * (speed / 4) + speed / 4 * 3);
target.addeventlistener(event.enter_frame, update);
}
private function update(e:event):void {
target.filters = [new displacementmapfilter(bmd, new point(), bitmapdatachannel.red,bitmapdatachannel.red, 10, strengh, "clamp")];
offset=offset.add(v);
bmd.perlinnoise(size / 2, size, 3, randomseed, false, true, 1, true, [offset, offset]);
}
}
}main.as
package
{
import flash.display.sprite;
import effects.fireeffect;
import flash.events.mouseevent;
import flash.net.navigatetourl;
import flash.net.urlrequest;
import flash.text.textfield;
/**
* ...
* @author sliz
*/
public class main extends sprite
{
public function main():void {
addchild(new fireeffect());
var lable:textfield = new textfield();
lable.textcolor = 0xffffff;
lable.selectable = false;
lable.text = "sliz";
lable.addeventlistener(mouseevent.click, function():void { navigatetourl(new urlrequest("https://www.111cn.net/")); } );
addchild(lable);
lable.x = 370;
lable.y = 380;
}
}
}
《黎明杀机》开发商正开发新的《Serious Sam》游戏 由Devolver发行
超英派遣中心即将登陆Xbox Play Anywhere 深入了解这款独特而备受喜爱的冒险游戏
在《Hunter: The Reckoning – Deathwish》中怎么从猎物蜕变为猎手
《The Expanse: Osiris Reborn》——深入了解玩法 新同伴 封闭测试及发行窗口
Alien Deathstorm 科幻生存与动作结合 打造全新第一人称恐怖混合体验
宝可梦公司已在考虑未来可用口袋妖怪总数达到“或许一万只”
幸存者村庄2
怪可爱的店折相思菜单
怪可爱的店折相思菜单是一款画风治愈的模拟经营佳作,内置折相思菜单解锁多项便利功能
lol电竞经理人手游
lol电竞经理人手游让你可以成为职业的电竞经理人,在游戏中掌控游戏的走向!豪华阵
梦幻奶茶屋小游戏
梦幻奶茶屋是一款主打温馨治愈氛围的休闲经营作品,玩家将化身元气满满的奶茶店店长,
萌宠养成物语无限金币版
萌宠养成物语无限金币版是一款治愈系模拟养成游戏,以可爱卡通画风构建温馨虚拟世界,