FLASH中如何用脚本实现一个影片剪辑元件的透明度的循环变化?
展开全部
我写个as2.0的:
直接在元件上写代码:
onClipEvent (load) {
with (this) {
mi = 0;//透明度最小值
ma = 100;//透明度最大值
fr = 20;//一次极值之间的变化所需帧数
ad = (mi-ma)/fr;
}
}
onClipEvent (enterFrame) {
with (this) {
_alpha += ad;
if (_alpha<=mi) {
_alpha = mi;
ad *= -1;
}
if (_alpha>=ma) {
_alpha = ma;
ad *= -1;
}
}
}
直接在元件上写代码:
onClipEvent (load) {
with (this) {
mi = 0;//透明度最小值
ma = 100;//透明度最大值
fr = 20;//一次极值之间的变化所需帧数
ad = (mi-ma)/fr;
}
}
onClipEvent (enterFrame) {
with (this) {
_alpha += ad;
if (_alpha<=mi) {
_alpha = mi;
ad *= -1;
}
if (_alpha>=ma) {
_alpha = ma;
ad *= -1;
}
}
}
展开全部
我觉得应该是这样的:给元件加个变量,然后此帧他的alpha是100%,多少帧后,元件的alpha是0%, 再给他加个命令--循环播放!嘿 ,,,我不会编程,但觉得是这个道理···
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用三角函数,将目标元件命名为mc
var a:int;
var sp:Number=10;//变化速度
var amax:Number=1;//最大透明度,大于1时完全不透明时间延长
var amin:Number=0;//最小透明度,小于0时完全透明时间延长
mc.addEventListener(Event.ENTER_FRAME,enterFrame);
function enterFrame(evt:Event):void{
mc.alpha=(Math.cos(a*Math.PI/180*sp)+1)*.5*amax+amin;
a++;
}
var a:int;
var sp:Number=10;//变化速度
var amax:Number=1;//最大透明度,大于1时完全不透明时间延长
var amin:Number=0;//最小透明度,小于0时完全透明时间延长
mc.addEventListener(Event.ENTER_FRAME,enterFrame);
function enterFrame(evt:Event):void{
mc.alpha=(Math.cos(a*Math.PI/180*sp)+1)*.5*amax+amin;
a++;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询