选择显示字体大小

很逼真的鼠标跟随的鱼的做法讲解

先看看效果图:
 
flash/index2//img_flash_ddvip/5308_20035151438592256.swf" width="384" height="384" pluginspage=http://www.macromedia.com/shockwave/download/index.cgi?p1_prod_version=shockwaveflash type=application/x-shockwave-flash quality=high>

 有没有动心呀?下载源文件吧!
 源文件下载

 下载源文件之后打开,你可以看到主场景里面什么都没有,搞过一点flash的人一定会很奇怪吧。没关系慢慢来。 
 aol用的是flash mx,所以以下是flash mx的图示,这个效果在flash 5中作法一样。 
 1.现立一个新的动画,将舞台设为384*384 pixels;backgroud颜色为#000066;framerate为48fps. 
 2.按ctrl+f8建立一个名为cabeza的movie clip(以后简称mc),画好鱼头。如图。 

 3.依上建立一个名为aletas的mc表示鱼鳍,一个espina的mc表示鱼身和鱼尾。如图。 
 鱼身和鱼尾 [img][/img]
 鱼鳍 

 4.最有技巧性的一步:用ctrl+l把资料库调出来,可以看到刚才建的那三个mc在这里。用右键分别点击这些mc,选择linkage这一项,打开linkage property属性面板,在indentifine项中键入与该mc同名的链接词。复选框选择第一项和第四项。 
 如图。 
 
 5.回到主场景。分别在第一至第三帧加入如下actionscript(以后简称as) 

 //--------------------------------------------------------- 
 //这是第一帧的as. 
 //-------------------------------------------------------- 

 _quality="medium"; // 选择动画质量适中,这样动画会运动得更快。 
 // 以下是各个部分的参数,你可以自己调一下数据会更清楚。 
 n = 20; // 鱼身的长度,也是expina有多少片. 
 r = 12; // 鱼头跟鼠标的速度。 
 c = 2; // 鱼身的连接速度,应该是这样表达吧,跟r也有关系。 
 a = 2; //鱼鳍片数。 
 // 以下参数供参考,可你让你更明白: 
 // ( n=20, r=12, c=2, a=2 ) 
 // ( n=30, r=12, c=1.5, a=-20 ) 
 // ( n=25, r=12, c=1.2, a=10 ) 
 // ( n=40, r=12, c=2.5, a=-4 ) 
 // ( n=40, r=12, c=2.2, a=2 ) 

 // 定义两个数组,表示坐标。 
 var x = new array(); 
 var y = new array(); 

 // 初始化 
 for (i=0;i
 // 构造一只鱼 
 for (i=1;i// 先造头,嘿嘿,说得有点儿怪(aol摸了摸头)。 
 if (i==1) { 
 attachmovie("cabeza", "pieza"+i, n+1-i); 
 // 我们把两片鱼鳍放在鱼身的第四个和第十四个位置,你也可以选择放哪。 
 } else if ( (i==4)  (i==14) ) { 
 attachmovie("aletas", "pieza"+i, n+1-i); 
 // 剩下的位置留给鱼身。 
 } else { 
 attachmovie("espina", "pieza"+i, n+1-i); 
 } 
 this["pieza"+i]._x = 142+x[i-1]; 
 this["pieza"+i]._y = 142+y[i-1]; 
 //减小一点儿体积,增强鱼的透明度。 
 this["pieza"+i]._xscale = 102+a*(1-i); 
 this["pieza"+i]._yscale = 102+a*(1-i); 
 this["pieza"+i]._alpha = 100-(100/n)*i; 
 } 

 //-------------------------------------------- 
 //这是第二帧的as. 
 //这是鱼怎么移动的帧。 
 //-------------------------------------------- 

 
 // 鱼头跟着鼠标动 
 x[0] = x[0]+(_xmouse-x[0]-142)/r; 
 y[0] = y[0]+(_ymouse-y[0]-142)/r; 

 // 其它的部分跟着动 
 for (i=1;ix[i] = x[i]+(x[i-1]-x[i])/c; 
 y[i] = y[i]+(y[i-1]-y[i])/c; 
 } 

 // 移动后的鱼的属性 
 for (i=1;i// 鱼的各部分所在的新位置 
 this["pieza"+i]._x = 142+(x[i-1]+x[i])/2; 
 this["pieza"+i]._y = 142+(y[i-1]+y[i])/2;; 
 // 计算鱼的转折角度 
 this["pieza"+i]._rotation = 57.295778*math.atan2((y[i]-y[i-1]),(x[i]-x[i-1])); 
 } 

 
 //-------------------------------- 
 //这是第三帧的as。 
 //回到第二帧,继续跟鼠标。 
 //-------------------------------- 
 gotoandplay (2); 

 按ctrl+enter测试,搞 定。   


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons