详细内容
 
当前位置
Flash动画用AS制作下雪下雨的效果
作者:管理员    发布于:2012-03-04 20:12:22    文字:【】【】【
Flash Actionscript制作下雪下雨的效果


制作方法是把下面的代码直接放到新建立的Flash文档的第1帧里面


function addMasker()
{
_root.createEmptyMovieClip("masker", -2);
with (masker)
{
lineStyle(1, 13421772, 100);
beginFill(0, 100);
moveTo(sideDisWidth, sideDisHeight);
lineTo(sideDisWidth + sceneWidth, sideDisHeight);
lineTo(sideDisWidth + sceneWidth, sideDisHeight + sceneHeight);
lineTo(sideDisWidth, sideDisHeight + sceneHeight);
endFill();
} // End of with
createSnow();
} // End of the function
function createSnow()
{
var _l1 = 0;
while (_l1 < snowNum)
{
var _l2 = snowSpace.createEmptyMovieClip("s" + _l1, _l1);
var _l3 = Math.random() * 3;
drawSnow(_l2, _l3);
_l1++;
} // end while
} // End of the function
function drawSnow(snow, radius)
{
var p = radius * 0.900000;
with (snow)
{
colors = [13421772, 16777215];
alphas = [100, 100];
ratios = [0, 255];
matrix = {matrixType: "box", x: -Math.random() * 2 * radius, y: -Math.random() * 2 * radius, w: 2 * radius, h: 2 * radius, r: 1.570796};
beginGradientFill("radial", colors, alphas, ratios, matrix);
curveTo(p, -p, radius, 0);
curveTo(p, p, 0, radius);
curveTo(-p, p, -radius, 0);
curveTo(-p, -p, 0, -radius);
endFill();
} // End of with
snowProperty(snow, sceneWidth, sceneHeight);
} // End of the function
function snowProperty(snow, w, h)
{
snow._x = sideDisWidth + Math.random() * w;
snow._y = sideDisHeight + Math.random() * h;
snow._rotation = Math.random() * 120 + 30;
snow.stepX = Math.cos(snow._rotation * 3.141593 / 180);
snow.stepY = Math.random() * 2 + 1;
setInterval(snowFall, 30, snow);
} // End of the function
function snowFall(snow)
{
snow._x = snow._x + snow.stepX;
snow._y = snow._y + snow.stepY;
if (sideDisWidth > snow._x)
{
snow._x = sideDisWidth + sceneWidth;
} // end if
if (sideDisWidth + sceneWidth < snow._x)
{
snow._x = sideDisWidth;
} // end if
if (sideDisHeight + sceneHeight < snow._y)
{
snow._y = sideDisHeight;
} // end if
} // End of the function
var sceneWidth = 550;
var sceneHeight = 400;
var sideDisWidth = Stage.width / 2 - sceneWidth / 2;
var sideDisHeight = Stage.height / 2 - sceneHeight / 2;
var snowNum = 150;
var snowSpace = _root.createEmptyMovieClip("room", 1);
addMasker(); 


脚注信息
版权所有 Copyright(C)2008-2015 龙腾动画(北京龙腾创星科技有限公司) 京ICP备16063988号-3       本站关键词:flash动画制作 

 
QQ在线咨询
咨询热线
010-57477990
7*24咨询热线
13701141129