论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash教程
Tag:flash cs,flash 8,鼠绘,as,手绘,工具,文字,loading,入门,初学,mc,影片剪辑,声音,mtv,游戏,引导,遮罩,菜单,补间,广告条,时钟,视频教程

灵动嘻哈势力我的音乐间要害部分制作

文章类别:Flash | 发表日期:2008-9-21 20:06:51

  

灵动嘻哈势力(MAGIC HIP-HOP FORCE)网站
我的音乐间要害部分制作(MUSICROOM.FLA
http://www2.flash8.net/Upload_HtmlFile/2004/11/11/2004111144241417.swf

源文件下载

主要涉及的语法:

1.loadMovie("url",level/target[, variables])

url 要加载的 SWF 文件或 JPEG 文件的绝对或相对 URL。相对路径必须相对于级别 0 处的 SWF 文件。该 URL 必须与影片当前驻留的 URL 在同一子域。为了在 Flash Player 中使用 SWF 文件或在 Flash 创作应用程序的测试模式下测试 SWF 文件,必须将所有的 SWF 文件存储在同一文件夹中,而且其文件名不能包含文件夹或磁盘驱动器说明。

target 指向目标影片剪辑的路径。目标影片剪辑将替换为加载的影片或图像。只能指定 target 影片剪辑或目标影片的 level 这两者之一;而不能同时指定两者。

level 一个整数,指定 Flash Player 中影片将被加载到的级别。在将影片或图像加载到级别时,标准模式下“动作”面板中的 loadMovie 动作将切换为 loadMovieNum;在专家模式下,您必须指定 loadMovieNum 或从“动作”工具箱中选择它。

variables 一个可选参数,指定发送变量所使用的 HTTP 方法。该参数须是字符串 GET POST。如没有要发送的变量,则省略此参数。GET 方法将变量追加到 URL 的末尾,该方法用于发送少量变量。POST 方法在单独的 HTTP 标头中发送变量,该方法用于发送长的变量字符串。

2. with (object) {statement(s);}

object 动作脚本对象或影片剪辑的实例。

statement(s) 花括号中包含的动作或一组动作

3. startDrag(target,[lock ,left ,top ,right,bottom])

target 要拖动的影片剪辑的目标路径。

lock 一个布尔值,指定可拖动影片剪辑是锁定到鼠标位置中心 (true),还是锁定到用户首次点击该影片剪辑的位置上 (false)。此参数是可选的。

lefttoprightbottom 相对于影片剪辑父级坐标的值,这些坐标指定该影片剪辑的约束矩形。这些参数是可选的。

使 target 影片剪辑在影片播放过程中可拖动。一次只能拖动一个影片剪辑。执行 startDrag 动作后,影片剪辑将保持可拖动状态,直到被 stopDrag 动作明确停止为止,或者直到为其他影片剪辑调用了 startDrag 动作为止。

.点击CD盒子弹出菜单的制作步骤:

(图1

首先,我们要将屋子里面的物品全部放到位,如(图1

接下来,制作椅子上的CD盒弹(图2)出菜单效果

图(2

要实现鼠标点击此CD盒的时候,谈出CD歌曲的菜单。

1. 首先将CD盒画好。转换成影片剪辑,先搁在一边不管

2. 然后制作CD菜单,将菜单处理漂亮之后同样转换成影片剪辑,实例名命名为“ez2”,之后把此影片剪辑第一帧留为空白帧。将制作好的菜单放在第110(为什么放在第110帧:此影片剪辑包括了“我的音乐间”所有的菜单,所以110帧以前留空是为了放别的菜单)

3. 在第一空白帧处加入动作脚本

stop();

在菜单显示的那一帧也加上stop();

在此另外加一个返回的按钮,按钮脚本为:

gotoAndPlay(1);

//回到第一帧,达到关闭此菜单的效果

这时影片剪辑在主场景中显示一个白点

4. 接下来我们再回过头编辑DEEP SOLO CD影片剪辑,在此影片剪辑中新建一个图层命名为“按如(图3

(图3

5. 制作一个橘红色的按牛放在按钮层,并且覆盖在CD盒之上如(图4

(图4

在按钮上添加动作脚本:

on (release) {with (_root.ez2) {gotoAndPlay(110);}}
//当鼠标点击此按钮的时候 指定实例名为“ez2”的影片剪辑跳到代110帧并运行

将按钮属性设置成“Alpha”为“0”(图4 -1 这样就成了透明状态,什么都看不到了

(图4-1

6. 好了,一个点击CD盒弹出菜单的效果就做好了。可以试一下效果了

大家发现在原文件中,点击CD盒子的时候会弹出CD菜单,还有一个可拖动的空白的小窗口(图5),这就是播放音乐时候的内容显示窗口。这个窗口也是一个单独的影片剪辑,是用来加载外部的SWF音乐和画面的,下面就来制作这一部分,实现加载外部SWF文件

(图5

制作可拖动的显示窗口的影片剪辑

1. 先画好适当大小的白色方块,转换成影片剪辑,我把它实例名命名为“wbbf”编辑此剪辑。建立三个图层分别为“加载影片窗口”,“关闭窗口”,“拖拽按钮”(图6

2. 同样空出第一帧为空白加上动作脚本stop();第二帧也加上stop();

3. 2帧处再制作按钮,放在“拖拽按”层(用来拖拽)

在此按钮上加入动作脚本:

on (press) {startDrag("_root.wbbf");}
//当鼠标按下按钮的时候实现拖拽效果
on (dragOut) {stopDrag();}
//当鼠标移开按钮的时候停止拖拽

4. “关闭按钮”层 放一个返回按钮 按钮脚本:

gotoAndPlay(1);
//回到第一帧,达到关闭此窗口的效果

5. 在“加载影片窗口”层,我们把先前画的白色方块再转换成影片剪辑实例名命名为“dxx”(图7

(图6

(图7

5. 回到主场景看一下,这个剪辑也是显示的白色圆点,右键点击白色圆点加入动作脚本:

onClipEvent (enterFrame) {
if (_x>500) {
setProperty(this, _x, "435.1");
setProperty(this, _y, "111.1");
}
//当此剪辑的x轴大于500的时候,将此剪辑放置在x坐标为453.1 ,y坐标为111.1的地方(窗口出现的原始位置)
if ( _x<0) {
setProperty(this, _x, "435.1");
setProperty(this, _y, "111.1");
}
//当此剪辑的x轴小于0的时候,将此剪辑放置在x坐标为453.1 ,y坐标为111.1的地方(窗口出现的原始位置)
if (_y>300) {
setProperty(this, _x, "435.1");
setProperty(this, _y, "111.1");
}
//当此剪辑的y轴大于300的时候,将此剪辑放置在x坐标为453.1 ,y坐标为111.1的地方(窗口出现的原始位置)
if (_y<100) {
setProperty(this, _x, "435.1");
setProperty(this, _y, "111.1");
}
//当此剪辑的y轴小于100的时候,将此剪辑放置在x坐标为453.1 ,y坐标为111.1的地方(窗口出现的原始位置)
}
onClipEvent (mouseUp) {
stopDrag();
}
//当鼠标放开的时候停止拖拽

上面的脚本是为了不让显示窗口拖出屏幕外

好了,显示窗口制作完毕,下面就要做加载部分拉,如何加载外部发SWF文件到此窗口呢?

1. 编辑先前做的菜单,菜单内部应该在分三个图层:“文字”,“按钮”,“背景图”三层,文字层也就是CD的歌名,按钮层放在文字层下方,每首歌的歌名下面各放一个隐形按钮

2. 我们就拿第一首歌 INTRO/043”做个例子(图8

(图8

在此歌名下面的按钮上加入动作脚本:

on (release) {
with (_root.wbbf) {
gotoAndStop(2);
}
//当鼠标点击此按钮的时候,指定实例名为“wbbf”的影片剪辑(刚才做的显示窗口)
跳到第2帧并且停止
loadMovie("music/deep/intro.swf", _root.wbbf.dxx);
//加载外部文件 intro.swf 到实例名为“dxx”的影片剪辑(白色方块)
}

“music/deep/intro.swf”是要加载的SWF文件的相对路径。

“_root.”的意思是全局的最上层的意思。

intro.swf”是事先做好的SWF文件

3. 剩下的歌曲要加载的话就按以上方法即可以,只要将每个按钮脚本的加载路径修改一下便可以了。

做到这里就已经CD部分全部完成了。假如想增加CD的话,按照以上步骤就可以再多做几张CD了呵呵。

.WINDOWS 模拟部分:

另外当你点击桌子上的电脑开关时候会打开屏幕,然后再次点击屏幕的时候会进入WINDOWS模拟的动画(图9

(图9

其实这一不分也很难做,桌子上的电脑是一个影片剪辑,在其内部放如两帧。第一帧是电脑关闭时候的画面,第2帧是电脑打开时候的画面并且在打开的电脑屏幕上在加上一个按钮, 可以来打开模拟WINDOWS的动画。在原文件中 WINDOWS动画的影片剪辑实例名为“winxp

此部分主要要害的部分是实现双击打开文件夹,那么如何实现鼠标双击打开文件夹呢?

下面就利用ActionScript来实现

基本的原理是这样的,鼠标按下的时候,记录下时间,鼠标再次按下的时候,再记录下时间,比较两次按下鼠标的间隔时间,假如间隔的时间比较长,就判定为两次单击,间隔时间短的话则判定为双击,从而触发事件

拿原文件中的一个文件夹做例子(图10

(图10

实现效果:当鼠标移动到文件夹上并且可以拖动,当双击此文件夹的时候就进入到此文件夹内部的动画页面

首先在主场景的2帧加入鼠标双击检查的代码(图11):

Mouse.doubleClick=function(clickTime){
if (!clickTime) {clickTime = 270;}
if (Mouse.lastClickTime-(Mouse.lastClickTime=getTimer())+clickTime>0) {
return true;
}
};

说明:clickTime是第一次单击与第二次单击的时间差

调用doubleClick()方法的时候,可以通过参数clickTime设置双击的时间,这里设置成值为

270,默认设置是 500 即为 500/1000s=0.5s

Mouse.lastClickTime是第一次单击的时间

Mouse.lastClickTime=getTime()是第二次单击的时间

两相减,加上clickTime。假如结果大于0 则为双击,返回双击是true的信息

这样检查鼠标双击的代码就完成了。

接下来只要文件夹上加入代码就可以实现效果了。

右键单击文件夹影片,加入动作代码:

onClipEvent (mouseDown) {
if (this.hitTest( _root:_xmouse,_root:_ymouse,true )) {
if (mouse.doubleClick()) {
with (_root.winxp) {
gotoAndStop(5);
}
} else {
if (this.hitTest(_root:_xmouse, _root:_ymouse)) {
setProperty(this, _alpha, "50");
startDrag(this);
}
}
}
}
onClipEvent (mouseUp) {
setProperty(this, _alpha, 100);
stopDrag();
}

说明:当鼠标按下(mouseDown)假如此影片剪辑(this),碰到鼠标的X坐标和Y坐标

_root._xmouse,_root._ymouse)假如检查到鼠标双击(if(mouse doubleClick()),就指定实例名为“winxp”的影片剪辑跳转到第5帧并且停止(第5帧是次文件夹内部的动画页面)

假如鼠标没有双击(else, 假如此影片剪辑(this),碰到鼠标的X坐标和Y坐标,则设置文件夹的属性为半透明状态 setProperty(this, alpha, "50 “;)

_alpha的值为0是完全透明,值为100时是正常状态

触发拖拽(startDrag(this);

当鼠标放开的时候(mouseUp

将文件夹属性设置成正常状态(setProperty(this, alpha, "100 ;)

停止拖拽( stopDrag();

OK我的音乐间“部分所有的要害的地方都已经制作完成了,其他地方的效果,都和以上说的相似了,动手自己做一个试试吧!

上一篇:{实例}FlashMX2004按钮翻页教程 人气:1989
下一篇:{实例}伸缩下拉菜单 人气:2441
视频教程列表
文章教程搜索
 
Flash推荐教程
Flash热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058