如何实现flash多个场景的跳转

如何实现flash多个场景的跳转(2007-08-16 08:23:10)
 

    在制作flash动画的时候,可能会有很的mc,有时会把它放到几个场景中,那么在场景中的跳转如何实现呢?这可能是初学者常遇到的问题,我查了一些资料,对此作了一些总结:

       1.

    方法一:(使用telltarget命令)

    按钮上的as为:
on (release) {
tellTarget ("/") {
gotoAndPlay ("场景 1", 1);
}
}


    2.

    方法二(用gotoandplay命令)
    主场景2中的mc放到场景2的时间轴上
    按钮的as: 

on release {
gotoAndPlay("场景1",1)
}


    并且在最后一帧加stop()
    问题就可以解决了:


    3.

    方法三(利用路径_root.gotoandplay())

    第二个场景2里面只有一个mc,在这个mc的最后一帧是stop和一个replay按钮
    按钮的as:_root.gotoAndPlay(1)
    【即告知按钮回到场景1的第一帧】


 
    4.

    方法四(给场景起不同的名字)
    如果你的as这样写:
    第二个sence里面只有一个mc,在这个mc的最后一帧是stop和一个replay按钮
    按钮的as: 

on release {
gotoAndPlay("sence1",1)


    结果按下后却是从这个mc的第一帧开始播放,而不是从sence1的第一帧
    这是因为主场景的名字默认为senceN
    MC里也可以有多个场景,而mc也是默认为senceN
    所以当你在MC用上gotoAndPlay ("scene1", 1);时,指的是所在场景中MC里的第一帧,而不是主场景
    解决的方法,就是给场景定义不同的名字
    scene1我们改名为:主场景
    scene2我们改名为:次场景1
    正确的as应该为:


on (release) {
tellTarget (_root) {
gotoAndPlay (1);
}
}


    如果想实现按钮点击后从次场景播放就可以在按钮上写上:


on (release) {
tellTarget (_root.次场景) {
gotoAndPlay (1);
}
}


    5.

    方法五(利用标签label)
    我们在控制动画的时候一般也不是从开始播放,可能是希望从某个场景的某一个关键帧开始播放,那么标签是
    最好的实现方法;
    例如我们希望点击上面的按钮的时候让动画从主场景中的label1开始播放,那么按钮上的as应该为:


on (release) {
tellTarget (_root) {
gotoAndPlay ("label1");
}


    例如有3个场景,我们希望点击上面的按钮的时候让动画从次场景1中的label4开始播放,那么按钮上的as应该为:


on (release) {
tellTarget (_root) {
gotoAndPlay ("次场景 1", "label4");
}
}

}
}


    如果想实现按钮点击后从次场景播放
    就可以在按钮上写上:


on (release) {
tellTarget (_root.次场景) {
gotoAndPlay (1);
}
}


 

posted @ 2009-04-21 17:08  吹吹风----NICK  阅读(1418)  评论(0编辑  收藏  举报