文章搜索:
打开支付宝首页搜索“510617664”,即可领红包
  首页--> 计算机--> FLASH教程
 
Flash特效制作常用的源代码大放送
http://www.xxqqss.com 学习轻松网 点击量:3140
 

以下是引用片段:

functiongetDistanceOf(target1,target2,x2,y2){

if(arguments.length==4){

dx=x2-target1;

dy=y2-target2;

}elseif(arguments.length==2){

dx=target2._x-target1._x;

dy=target2._y-target1._y;

}

returnMath.sqrt(dx*dx+dy*dy);

}

//Arguments 对象是一个数组,其中包含作为参数传递给任何函数的值。每次在动作脚本中调用函数时,都会为该函

数自动创建 Arguments 对象。同时还会创建一个局部变量 arguments,使您可引用 arguments 对象。

让播放的MC暂停一段时间

以下是引用片段:

functionpausePlay(sec){

pfunc=function(){

this.play();

clearInterval(this.pint);

}

stop();

this.pint=setInterval(this,"pfunc",sec*1000);

}

//这样调用.sec是暂停的时间,单位是秒.

pausePlay(2);

onHitTest(target),自己写的一个MC事件,当该MC与指定的MC hitTest的时候触发事件.其实也没什么特别的地方,一样也是用setInterval来实现

以下是引用片段:

stop();

MovieClip.prototype.listen=function(target){

if(this.isHiting==undefined){

this.isHiting=this.hitTest(target);

}

if(this.hitTest(target)){

if(this.isHiting==false){

this.broadcastMessage("onHitTest",this,target);//广播事件,给事件传递this和target两个参数

}

this.isHiting=true;

}else{

this.isHiting=false;

}

};//为MovieClip添加域成员listen成员,用于监视当前对象与目标是否碰撞

MovieClip.prototype.watch=function(target){

this.timer=setInterval(this,"listen",50,target);

};//以每50毫秒检测一次的速度来检测是否碰撞

MovieClip.prototype.unWatch=function(){

clearInterval(this.timer);

};//停止对对象的监视

ASBroadcaster.initialize(MovieClip.prototype);//初始化MovieClip原型为事件源

//下面是调用的示例

//假设有两个MovieClip,左边ball,右边wall,让ball不断往wall移动,同时监视wall,一旦击中触发事件onHitTest

ball.onEnterFrame=function(){

this._x+=5;

};//让ball不断往右方移动工

myListener=newObject();

myListener.onHitTest=function(source,target){

trace("The"+source._name+"hit"+target._name+".");

};

ball.addListener(myListener);//创建监听员并注册给ball

ball.watch(wall);//让ball监视wall


打印】 【关闭
免责声明 :本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请发送fiyeadwyv@163.com
最热门点击排行
 
版权所有 2006-2021:学习轻松网 Copyright http://www.xxqqss.com All rights reserved 浙ICP备14013707号-1
广告联系电话: 13958357030 联系QQ:9792414 工具条下载