作者jijuan (鸡卷)
看板Flash
标题[问题] 将移动复制为ActionScript3.0 这个功能
时间Wed Apr 28 16:01:59 2010
要做出 动作制作.fla 那样的效果,我跟着书上的步骤做,程序是这样:
1.要让动作持续1秒,所以在第13格影格<插入关键影格>
2.在第13格影格使用<自由变形工具>放大商品
3.在时间轴上选择<建立移动补间动画>
4.在时间轴上选择<将移动复制为ActionScript3.0>
我将程式码在<动作>面板贴上时,内容是:
import fl.motion.AnimatorFactory;
import fl.motion.MotionBase;
import flash.filters.*;
import flash.geom.Point;
var __motion_tempMc:MotionBase;
if(__motion_tempMc == null) {
import fl.motion.Motion;
__motion_tempMc = new Motion();
__motion_tempMc.duration = 1;
__motion_tempMc.addPropertyArray("x", [0]);
__motion_tempMc.addPropertyArray("y", [0]);
__motion_tempMc.addPropertyArray("scaleX", [1.825287]);
__motion_tempMc.addPropertyArray("scaleY", [1.280106]);
__motion_tempMc.addPropertyArray("skewX", [0]);
__motion_tempMc.addPropertyArray("skewY", [0]);
__motion_tempMc.addPropertyArray("rotationConcat", [0]);
__motion_tempMc.addPropertyArray("blendMode", ["normal"]);
var __animFactory_tempMc:AnimatorFactory = new
AnimatorFactory(__motion_tempMc);
}
执行时也只有在最後一个影格才会突然放大
不过书上附的范例贴上的程式码应该是:
import fl.motion.Animator;
var tempMc_xml:XML = <Motion duration="13" xmlns="fl.motion.*"
xmlns:geom="flash.geom.*" xmlns:filters="flash.filters.*">
<source>
<Source frameRate="12" scaleX="1" scaleY="1" rotation="0"
elementType="movie clip"/>
</source>
<Keyframe index="0" tweenSnap="true" tweenSync="true">
<tweens>
<SimpleEase ease="0"/>
</tweens>
</Keyframe>
<Keyframe index="12" scaleX="1.456" scaleY="1.456"/>
</Motion>;
var tempMc_animator:Animator = new Animator(tempMc_xml, tempMc);
tempMc_animator.play();
想请问一下我是哪个步骤有问题吗?为什麽产生的程式码会不一样呢?是有哪个动作
错了吗?我用的是Flash CS4
附上专案档
http://meetblake.myweb.hinet.net/action.rar
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 60.249.2.10