忍者ブログ

painkiller_blog

仕事でwebのお仕事。プライベートで油絵描いてます。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

localToGlobalについて

ActionScriptでlocalToGlobal()を使用することがあったのですが「なーんかずれてる」ってことがあったのでメモ。

mymapインスタンスの中にarea0というムービークリップを配置。
さて、mymapをステージに配置してその中のarea0の座標をとります。

var myPoint:Point = new Point(mymap.area0.x, mymap.area0.y);
var gl_point:Point = mymap.area0.localToGlobal(myPoint);
trace(gl_point);

あれ?ずれる?
下が正解

var myPoint:Point = new Point(mymap.area0.x, mymap.area0.y);
var gl_point:Point = mymap.area0.parent.localToGlobal(myPoint);
trace(gl_point);

でした。
自分の親要素の座標を参照するのでparentがいりました。
ちょっとハマる。


PR

イベントリスナーで引数を渡す

自分でもよく忘れるのでメモ。
ボタンイベントで引数を渡す場合

[インスタンス].addEventListener(MouseEvent.ROLL_OVER, ROverHandler(i));

private function ROverHandler(Num:int):Function {
            return function(e:MouseEvent):void {
                e.target.gotoAndPlay(2);
e.target.removeEventListener(MouseEvent.CLICK, arguments.callee);
                }
        }
のようにしてremoveEventListenerを付けておく。
この書き方だと外部からremoveEventListener出来ないので使用するときは注意。

でついでにTweenerのonComplete:の時に引数を渡す場合は
Tweener.addTween(インスタンス, { alpha:0, time:1, transition:"easeOutExpo", onComplete: FuncRemove, onCompleteParams:[ここに引数] } );
で行けました。

以上、忘れないように自分へのメモ

xmlのキャッシュ対策

ひさびさに記事のアップ
って言っても大した事ではありません。
flashでxmlを読み込むときのキャッシュ対策です。

非常に簡単。
var xml_URL = new URLRequest("data.xml?" + Math.floor(Math.random() * 100));

ってことで後ろにランダムの数字を付けます。
ローカルでは
var xml_URL = new URLRequest("data.xml");

作業中は
//var xml_URL = new URLRequest("data.xml");
var xml_URL = new URLRequest("data.xml?" + Math.floor(Math.random() * 100));

二つ並べてローカル用、サーバーアップ用と”//”のコメントアウトを場合によって付けたり消したりしています。

外部クラスからindex.asインスタンスへのスコープ(progression)

progressionであらかじめステージに配置したインスタンスへのスコープ。

・index.as内でaddChild(movie)したとします。(movieはMovieClip)
・外部ASファイルでMouseEvent.CLICKを作成したとします。
この際、index.asのmovieにスコープするときは

MovieClip(MovieClip(CastDocument.root)).movieとなります。

自分のためにメモ。


クラスからrootのインスタンスにアクセス

外部asファイルからrootに配置(addChild)したインスタンスにアクセスするときは
外部asファイルに
private function clkHandler(e:MouseEvent):void
        {
            Object(root).numbers.gotoAndStop(2);
        }
って書くとOK。
numbersってのはインスタンス名です。
メモ。

Copyright © painkiller_blog : All rights reserved

TemplateDesign by KARMA7

忍者ブログ [PR]

管理人限定

カレンダー

02 2024/03 04
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31

最新CM

[10/08 イズカワタカノブ]

最新TB

ブログ内検索

アクセス解析

ブログを評価する「ブログレーダー」