var i=1;
while(i<=300)
{
duplicateMovieClip("snow","snow"+i,i);
setProperty("snow"+i,_x,random(550));
setProperty("snow"+i,_y,random(400));
setProperty("snow"+i,_xscale,random(60)+40);
setProperty("snow"+i,_yscale,eval("snow"+i)._xscale);
setProperty("snow"+i,_alpha,random(100));
i++;
}
flash下雪代码的解释
答案:2 悬赏:20 手机版
解决时间 2021-01-29 00:45
- 提问者网友:送舟行
- 2021-01-28 12:25
最佳答案
- 五星知识达人网友:不如潦草
- 2021-01-28 13:20
w = Stage.width;//降雪宽度等于舞台宽度
h = Stage.height + 100;//降雪高度等于舞台高度
max_snowsize = 10;//雪花大小
snowflakes = 40;//雪花数量
init = function ()
{
for( i = 0; i < snowflakes; i++ )
{
t = attachMovie("snow", "snow"+i, i);//把元件库中链接标志符为"snow"的影片剪辑加载到当前时间轴上实例名称为"snow"+i的影片剪辑中,深度为i
t._alpha = 50 + Math.random()*50;//随机透明度为50到100。Math.random()返回一个大于等于0,且小于1的随机数
t._x = -(w*0.5) + Math.random()*(1.5*w);//随机出现位置
t._y = -(h*0.5) + Math.random()*(1.5*h);//随机出现位置
t._xscale = t._yscale = 50 + Math.random()*(max_snowsize*10);//随机缩放比例
t.k = Math.random()*1.5 + 1;//随机下落速度
t.wind = Math.random()*3.5 - 1.5;//随机摇摆幅度
t.onEnterFrame = mover;//不停的执行mover
}
}
mover = function ()
{
this._y += this.k;//垂直直线运动
this._x += this.wind;//水平直线运动
if(this._y > h+10)//以下是如果雪花超出舞台范围x(-20 w+20) y h+10,重新定位雪花位置,可以根据喜好定义
{
this._y = -20;
}
if(this._x > w+20)
{
this._x = -(w*0.5) + Math.random()*(1.5*w);
this._y = -20;
}
else if(this._x < -20)
{
this._x = -(w*0.5) + Math.random()*(1.5*w);
this._y = -20;
}
}
init(); //调用初始化
里面好多参数都可以自己设定,不必非按这个来。
h = Stage.height + 100;//降雪高度等于舞台高度
max_snowsize = 10;//雪花大小
snowflakes = 40;//雪花数量
init = function ()
{
for( i = 0; i < snowflakes; i++ )
{
t = attachMovie("snow", "snow"+i, i);//把元件库中链接标志符为"snow"的影片剪辑加载到当前时间轴上实例名称为"snow"+i的影片剪辑中,深度为i
t._alpha = 50 + Math.random()*50;//随机透明度为50到100。Math.random()返回一个大于等于0,且小于1的随机数
t._x = -(w*0.5) + Math.random()*(1.5*w);//随机出现位置
t._y = -(h*0.5) + Math.random()*(1.5*h);//随机出现位置
t._xscale = t._yscale = 50 + Math.random()*(max_snowsize*10);//随机缩放比例
t.k = Math.random()*1.5 + 1;//随机下落速度
t.wind = Math.random()*3.5 - 1.5;//随机摇摆幅度
t.onEnterFrame = mover;//不停的执行mover
}
}
mover = function ()
{
this._y += this.k;//垂直直线运动
this._x += this.wind;//水平直线运动
if(this._y > h+10)//以下是如果雪花超出舞台范围x(-20 w+20) y h+10,重新定位雪花位置,可以根据喜好定义
{
this._y = -20;
}
if(this._x > w+20)
{
this._x = -(w*0.5) + Math.random()*(1.5*w);
this._y = -20;
}
else if(this._x < -20)
{
this._x = -(w*0.5) + Math.random()*(1.5*w);
this._y = -20;
}
}
init(); //调用初始化
里面好多参数都可以自己设定,不必非按这个来。
全部回答
- 1楼网友:北城痞子
- 2021-01-28 13:49
第一帧代码:
xiaxue._visible = false; // xiaxue 元件 设置为不可见
i = 1; //定义变量i
第二帧代码:
duplicatemovieclip("xiaxue", i, i); // 复制 xiaxue 元件
setproperty(i, _x, random(600)+10); //设置x坐标为 随机600内的数 +10 意思就是 当随机是0时 最小数是 10
setproperty(i, _y, random(350)); // 设置 y 坐标的 为随机数 350 内
setproperty(i, _alpha, random(50)+50); // 设置 实例i的透明度为 随机数 50 +50 意思就是 透明度在 50-100 之间
tint = random(40)+40; //设置一个变量 tint 随机数在 40-80 之间
setproperty(i, _xscale, tint); //设置元件的x 缩放比例为 tint
setproperty(i, _yscale, tint); // 设置元件的y 缩放比例为 tint
i = i+1; // 递增 == i+=1;
if (i <= 150) { // 设置 雪花 数不能超过 150个
gotoandplay(1); // 转到第一帧
第三帧代码:
gotoandplay(2); // 转到 第二帧
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯