1

建物のクリップがたくさん入った「map」という名前のマップ ムービー クリップがあります。各建物は、クリックできるムービー クリップです。そのクリックされたアイテムを地図の中心に置く必要があります。どうすればこれを機能させることができますか?

//This doesn't make the map move where i need it to
function moveMap(childmc:String):void {
    Tweener.addTween(themap, {x:themap[childmc].x, time:1, transition:"easeOutCubic"});
    Tweener.addTween(themap, {y:themap[childmc].y, time:1, transition:"easeOutCubic"});
}

何時間も探していたので、どんな助けも素晴らしいでしょう。

4

2 に答える 2

0

次のようなことを試してください:

function objClick(e:MouseEvent):void{
    var target_x = STAGE_WIDTH/2 - e.target.x;
    var target_y = STAGE_HEIGHT/2 - e.target.y;

    TweenLite.to(map_mc, 1, {x: target_x, y: target_y})
}

サンプルとはかなり異なるコードを作成して申し訳ありませんが、この方法の方が優れていると思います。

[編集] このコードをテストしたところ、うまくいきました。クリック可能なムービークリップは、「map_mc」と呼ばれる別のムービークリップ内にあります。STAGE_WIDTH/HEIGHT は私のステージ サイズでしたが、ビューポートに追加できます。

于 2012-04-27T17:29:06.310 に答える
0

コードを見ると、親 MC をその中にネストされている MC の場所にトゥイーンしようとしているようです。それがあなたがしようとしていることではない場合、おそらく、トゥイーン先を記述するオブジェクトの {this[childmc].x, this[childmc].y} が役立つでしょうか? また、時間とトランジションはそのオブジェクトの内側にあるべきですか、それとも外側にあるべきですか? 私は Tweensy ユーザーなのでよくわかりませんが、私には適切ではありません。

于 2012-04-27T16:25:34.990 に答える