当前位置: 首页 > 图文教程 > Flash动画 > Flash动画制作 > FLASH中的移动方法教程和实例集锦(适合新手)

Flash动画制作
Flash实例教程:制作圣诞节祝福贺卡
Flash相册图片加载完毕等比缩放的类
Flash as教程:逼真的瀑布特效动画
Flash CS4入门教程:给任意照片添加雪景动画
Flash入门实例:新年快乐镜面跳动字动画
Flash新手鼠绘(4):鲜艳欲滴的樱桃
Flash新手鼠绘(5):梅花花瓣的制作
Flash 制作晃动光线文字特效
flash中影片剪辑的排列顺序控制和拖拽效果
利用AS脚本功能实现图片模糊变清晰
Flash动画制作实例:单个背景循环移动动画
Flash动画技巧:绘制小鸡的动画效果
Flash实例教程:制作蒸汽烟雾飘飘动画
Flash实例教程:制作庆祝春节的烟花动画
Flash技巧:羽化遮罩制作好看图片切换动画
Flash简单制作星球大战文字动画特效
Flash技巧:运用图层简单实现传统数字动画效果
Flash CS3教程:将工程转换到视频格式

Flash动画制作 中的 FLASH中的移动方法教程和实例集锦(适合新手)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-22   浏览: 60 ::
收藏到网摘: n/a

在此只探讨用AS语句去控制移动的方法。FLASH中能够移动的物体一般是舞台上的电影实例(为节省篇幅以下简称为MC,并且其实例名为my_mc)。FLASH中物体的移动是在X轴(即水平)方向或Y轴(垂直)方向的运动。因此,通过控制mc属性中的_x与_y的值就可以达到使其运动的目的。



一、匀速运动


1、水平方向上的向右匀速运动

方法一:
主场景第1帧:var mx=5;//设定初始速度为5
主场景第2帧:my_mc._x+=mx;//名称为my_mc的电影实例以步幅5的速度向右移动,
主场景第3帧:gotoAndPlay(2);// 跳转到第二帧,再次激发my_mc电影实例以步幅5的速度向右移动后又会跳转到此帧,并再次激发运动,如此周而得始地激发,就达到了不断向右运动的目的.
(见实例匀速运动1_1_1)

匀速运动1_1_1.swf

匀速运动1_1_1.fla

方法二:
主场景第1帧:
var mx = 5;//设定初始速度为5
this.onEnterFrame = function() {
        my_mc._x += mx;//不断刷新my_mc的向右运动
};//方法一需要3帧才能运动,而此方法二只需要一帧就可以使其运动,这是主要区别
(见实例匀速运动1_1_2_1)

匀速运动1_1_2_1.swf

匀速运动1_1_2_1.fla

或者:
var mx = 5;//初始速度值为5
onEnterFrame = function () {
        my_mc._x += mx;
};//此方法三与方法二的区别在于,方法二中this.onEnterFrame中的this是指当前时间轴;而在此方法三中直接用onEnterFrame,并未用this时,就表示暗指当前时间轴
(见实例匀速运动1_1_2_2)

匀速运动1_1_2_2.swf

匀速运动1_1_2_2.fla

或者:
var mx = 5;//初始速度值5
my_mc.onEnterFrame = function() {
        this._x += mx;
};//此处的my_mc.onEnterFrame指方法是加在my_mc上的.
(见实例匀速运动1_1_2_3)

匀速运动1_1_2_3.swf

匀速运动1_1_2_3.fla

方法三:
主场景my_mc上:
onClipEvent (load) {
        var mx = 5;//初始速度值5
}
onClipEvent (enterFrame) {
        _x += mx;//触发my_mc实例定义的动作是x轴坐标不断增值5。
}//(见实例匀速运动1_1_3_1)

匀速运动1_1_3_1.swf

匀速运动1_1_3_1.fla

方法四:
主场景第1帧:
function moveToRight(Object, xVar) {//定义函数的方法
        var mx = xVar;
        onEnterFrame = function () {
                Object._x += mx;
        };
}
moveToRight(my_mc, 5);
//(见实例匀速运动1_1_4_1)

匀速运动1_1_4_1.swf

匀速运动1_1_4_1.fla

方法五:
MovieClip.prototype.mcmove = function(Object, x) {
        var mx = x;
        onEnterFrame = function () {
                O