« Flash Playerに深刻な脆弱性 | メイン | Flash関係の人はマイクロソフトのパッチに注意 »

2006年03月28日

パラメータの受け渡し(福笑い)

今回は福笑いをテーマにしたサンプル。
左目の位置だけを移動出来ます。
移動したあとOPENボタンを押すと、別のウィンドウがひらいて、
同じ顔が表示されます。
このURLをメールで送信などすれば、遠隔地にいるひとに
同じ画像を見せることが出来ます。

OPENボタンのスクリプトはこちら

on (release) {
url = "kao.swf?kaomode=view&lex="+int(_root.hidarime_mc._x)+"&ley="+int(_root.hidarime_mc._y);
_root.test = url;
getURL(url);
}

URLを生成して、

ムービー名.swf?変数名=値

という形式で、swfに値を渡してます。
受け渡ししたい変数が複数ある場合には半角の&でつなぎます。
このときの注意は
・変数名はFlashの予約語を使用しない。
・変数名の1文字目に数字を使用しない。
(まあ、Flashの変数の規則を知っておいてね、という事です。)
・値はすべて文字で送られる。
なので、文字の場合も”(ダブルコーテーション)はいりません。
数字も文字として送られ、したのスクリプトではガッツリ代入してますが、
そのへんはFlashの臨機応変さで数値に変換されています。(たぶん)
・値に2バイト文字を使用する場合にはエンコードする。
え~と、漢字ひらがなの場合には、工夫が必要です、ということで、詳しくは書きません。

今回、このサンプルを作る段階で分かったのですが、この形式の指定方法は
Flash5までの方式で、マクロメディア推奨の方法ではないようです。
(Flash8でも動きます。)

さて、受け取った値はこちらで再生します。
これをフレームスクリプトに記述します。

// paramater
_root.test = kaomode;
if ( kaomode == "view") {
_root.test = "目の位置設定";
_root.hidarime_mc._x = lex;
_root.hidarime_mc._y = ley;
}
stop();

kao20060328.zipサンプルダウンロード
注)このサンプルはサーバー上にアップロードしないと動きません。
「ムービー名.swf?変数名=値」の形式ではローカル上で動かない為です。
(?以降が消えます)

投稿者 usuaji : 2006年03月28日 13:26

トラックバック

このエントリーのトラックバックURL:
http://usuaji.sakura.ne.jp/mt/mt-tb.cgi/1057

このリストは、次のエントリーを参照しています: パラメータの受け渡し(福笑い):

» イヌジマのFLASHの計画 from 我楽多日報!?
総括の日の日記でも若干触れた、 「妖怪イヌジマ」関係の話ですが、急激に実現できそうだと言う気になってきました。 というのも、Flashの質問のできる所で色々聞い... [続きを読む]

トラックバック時刻: 2006年03月30日 01:06

規約に同意して登録 解除  

■HSPセンターもよろしく

コメント

サンプルありがとうございます!
細かい説明からダウンロードデータまで
本当にありがとうございます!
今悪戦苦闘中ですが;、必ずや完成させて、お知らせいたします。
目指せ!「妖怪イヌジマオリジナルフェイスオーダーシステム」!

投稿者 yoko14145 : 2006年03月30日 00:11

どもども。
TB、コメントありがとうございます。
チェックしそこねてコメントの許可が遅くなりました。
失礼しました。
完成したら教えてください。

投稿者 うすあじ : 2006年04月10日 16:48

コメントしてください




保存しますか?