空间flash鼠标跟随,如何用flash5制作鼠标跟随
空间flash鼠标跟随目录
空间flash鼠标跟随
在Flash中实现鼠标跟随效果,可以按照以下步骤进行操作:
1. 打开Flash软件,创建一个新的文件。
2. 导入需要更换的鼠标图案,可以通过按Ctrl R键进行导入。
3. 选中导入的图片,然后按F8键将图片转换为影片剪辑。在这个过程中,注意中心点应位于左上方。
4. 对这个影片剪辑进行变化大小的操作,通过按Q键将中间的空心圆拖到左上方,并给这个影片剪辑命名为a。
5. 点击第一帧,然后在“动作”面板中输入函数。函数内容为:startDrag(注意,这段函数必须加在帧上,而不是影片剪辑上。
6. 最后,通过Ctrl 回车键欣赏效果即可。如果想要将鼠标做成动态效果,可以在元件里添加帧,放入其他图片。
请注意,上述步骤仅为示例,您需要根据实际情况进行调整和修改。另外,由于Flash软件已于2020年底停止更新并终止服务,一些新功能可能无法使用,部分在线平台可能也不再支持Flash内容。
如何用flash5制作鼠标跟随
制作步骤如下:
1、需要创建一个名为“follower”的MovieClip。
2、在舞台上添加一个事件监听器来监听鼠标的移动事件。
3、当鼠标移动时,触发该事件处理函数,并在函数中获取当前鼠标的坐标信息。
4、将“follower”MovieClip的坐标设置为当前鼠标位置即可实现跟随效果。
flash鼠标跟随
鼠标跟随代码物体对鼠标的跟随可以采用在帧上添加as语句starDrag的方法来实现。
但是采用这种方法所实现的跟随过程太生硬,跟得实在是紧,也就是当鼠标移动到别的位置,物体也很快的移动了过来,假如要让物体慢慢(速度可以控制)的靠近鼠标,使用starDrag这条语句就不能做到。
starDrag语句的功能其实是和下面的代码相同的。
onClipEvent (enterFrame) { xTarget = _root._xmouse; yTarget = _root._ymouse; _x = xTarget; _y = yTarget;}
这几行代码是添加在物体(影片剪辑)上面的。
其中,语句 _x = xTarget 和 _y = yTarget的作用是使物体的坐标定位到(xTarget,yTarget)上,而(xTarget,yTarget)就是鼠标的当前坐标。
修改这几行代码,就可以使物体在鼠标移动后,慢慢的靠近鼠标。
_x = xTarget 等价于 _x = xTarget _x - _x(加一个减一个)即:_x =_x (xTarget - _x)其中的(xTarget - _x)是物体的目标位置与当前位置的坐标差
如果让(xTarget - _x)乘上一个小于1的系数,那么物体就不会突然移动到坐标(xTarget,yTarget)上,而是慢慢的靠过去。
于是,修改后的代码如下:
onClipEvent (enterFrame) { xTarget = _root._xmouse; yTarget = _root._ymouse; fraction=0.5; _x = _x (xTarget-_x)fraction; _y = _y (yTarget-_y)fraction; }
实现了慢慢靠近
对“慢慢靠近”的加以利用:一个跟一个场景上放置一个影片剪辑,instance name命名为darg0
在帧上添加代码:
copies = 5;for (var i = 1; i=copies; i ) { duplicateMovieClip (drag0, drag i, i); (drag i).num = i;}
上面的代码复制了5个,drag1~drag5,连同drag0,场景上共6个其中,还给drag1~drag5定义了内部变量drag1.num~drag5.num
在场景上的drag0上面添加代码:
onClipEvent (enterFrame) { if (num) { xTarget = (_root.drag (num-1))._x; yTarget = (_root.drag (num-1))._y; } else { xTarget = _root._xmouse; yTarget = _root._ymouse; } fraction = .5; _x = (xTarget-_x)fraction; _y = (yTarget-_y)fraction;}
这几行代码使得drag0跟随着鼠标,drag1跟随着drag0,drag2跟随着drag1,……,drag5跟随着drag4
解释一下if这个判断语句
因为drag1.num~drag5.num的值都不为空,所以对于drag1~drag5这5个影片剪辑,执行的代码是:xTarget = (_root.drag (num-1))._x;yTarget = (_root.drag (num-1))._y;也就是跟随着前一个而对于drag0,由于没有给它定义num,它的值为空,所以对于drag0,执行的代码是:xTarget = _root._xmouse;yTarget = _root._ymouse;也就是跟随着鼠标
“一个跟一个”代码的另一种写法
上面的“一个跟一个”的制作,是在场景上只放置了一个影片剪辑,然后在影片剪辑上添加as代码,再通过在帧上添加as代码(duplicateMovie)来复制影片剪辑。
还可以用另外一种代码方式来实现这种方式是直接在场景上放置了6个影片剪辑,依次命名为:drag0~drag5。
然后在帧上添加代码如下:
_root.drag0._x = _root._xmouse 10; _root.drag0._y = _root._ymouse;i = 1;while (i=5) { dragi = (drag i); dragi_prev = (drag (i-1)); dragi._x = (dragi_prev._x-dragi._x)0.5 10; dragi._y = (dragi_prev._y-dragi._y)0.5; i = i 1;}
该代码也是使得drag0跟随着鼠标,drag1跟随着drag0,drag2跟随着drag1,……,drag5跟随着drag4(但是每个相差10)
不过代码添加完毕,测试的时候,你会发现这些影片剪辑并不会移动。
因为还需要下面一个步骤:
在时间轴的第二帧插入帧(F5),因为只有至少2帧,动画才会产生循环,上面那些代码也才会重复运行,否则如果只有1帧的话,那些代码也就只被执行了一次。
实例教学Flash鼠标跟随教程:制作馋嘴的兔兔
本例教朋友用Flash制作鼠标跟随效果。
用鼠标拖动萝卜,兔兔眼睛总盯住萝卜,很可爱噢...
制作方法:
一、做三个元件
1、插入新元件,行为电影剪辑,命名为兔子。
画出兔子的外形,也可以画其他动物,只是眼珠不画。
如果要兔子耳朵、嘴巴、手动的话,要分层用逐帧改变形状。
如图所示:
2、插入新元件,行为电影剪辑,命名为眼睛,确定,进入眼睛编辑窗口。
在第一帧画一个跟兔子眼眶一样大小的、没有填充色的圆(这里是30*30),并让其全居中,在里面贴住圆的右边线再画一个没有线条的红色眼珠,然后把眼眶边线的透明度设为0。
新建一个层,选中第一帧,打开“动作-帧”面板,输入以下代码:
this.onMouseMove=function(){
;eyeX=_root._xmouse-this._x
;eyeY=_root._ymouse-this._y
;ang=Math.atan2(eyeY,eyeX)*180/Math.PI
;this._rotation=ang }
如图所示:
3、插入一个新元件,行为电影剪辑,命名为萝卜。
画出萝卜,选中萝卜,让其居中。
如图所示:
二、布置主场景:
新建三个层,由上到下命名为萝卜、眼珠、兔子、背景。
1、选中背景层的第一帧导入一幅你喜欢的背景图。
2、选中兔子层的第一帧,从库拖出拖出兔子MC,放在合适位置。
3、选中眼睛层的第一帧,从库里拖出两个眼睛MC,分别放在兔子的眼眶里。
注意也是放在眼眶的右侧(两圆相切)位置。
4、选中萝卜层的第一帧,从库里拖出萝卜MC,放在树下。
选中萝卜,并在电影剪辑属性面板命名为“lb”。
打开“动作-电影剪辑”面板,输入如下代码:
onClipEvent(mouseMove){
;mouse.hide();
;startdrag("_root.lb",true); }
如图所示:
至此本实例完成,测试、存盘。
本文内容由互联网用户自发贡献,该文观点仅代表作者本人,并不代表电脑知识网立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容(包括不限于图片和视频等),请邮件至379184938@qq.com 举报,一经查实,本站将立刻删除。