私は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 movieclip (シンボル名 mc1) コード:
MovieClip(root).cx=0;
MovieClip(root).cy=0;
MovieClip(root).tx=0;
MovieClip(root).ty=0;
最初のフレームの c2 movieclip (シンボル名 mc2) コード:
MovieClip(root).cx=85;
MovieClip(root).cy=85;
MovieClip(root).tx=85;
MovieClip(root).ty=85;
問題は、最初にクリックしたムービークリップの値を常に取得することです。私はちょっとその解決策を見つけましたが、私はそれがそのようであるべきだとは思いません.mc1とmc2のそれぞれで2番目の空のキーフレームを作成しましたが、今は機能していますが、このようであるべきだとは思いません.ムービークリップでフレームを作成せずに行う方法は?