我是 AS3 的新手,正在努力学习它。尝试创建游戏,其中包含主要时间线和许多电影剪辑。我在主时间轴中有一些变量,我想每次都通过单击每个不同的影片剪辑来更改它们。比方说,我有舞台坐标 cx 和 cy,然后我单击任何我想将这些变量更改为电影剪辑的坐标的影片剪辑。这是我所做的:
主要时间线
import flash.events.MouseEvent;
import fl.motion.Color;
import fl.motion.MotionEvent;
import fl.transitions.Tween;
import fl.transitions.easing.*;
import flash.display.InterpolationMethod;
var cx:int; //stage coordinate x;
var cy:int; //stage coordinate y;
var tx:int; //table coordinate x;
var ty:int; //table coordinate y;
c1.addEventListener(MouseEvent.CLICK, tracing);
c2.addEventListener(MouseEvent.CLICK, tracing);
function tracing(e:MouseEvent):void {
e.currentTarget.gotoAndPlay(1);
trace(cx,cy,tx,ty);
}
第一帧上的 c1 影片剪辑(符号名称 mc1)代码:
MovieClip(root).cx=0;
MovieClip(root).cy=0;
MovieClip(root).tx=0;
MovieClip(root).ty=0;
第一帧上的 c2 影片剪辑(符号名称 mc2)代码:
MovieClip(root).cx=85;
MovieClip(root).cy=85;
MovieClip(root).tx=85;
MovieClip(root).ty=85;
问题是我总是得到我点击的第一个电影剪辑的价值。我找到了解决方案,但我认为它不应该是这样,在每个 mc1 和 mc2 中我制作了第二个空关键帧,现在它可以工作了,但我认为它不应该是这样的,我做错了什么,任何在movieclips中不创建更多帧的方法?