ASをFlash Liteスクリプトに書き換える

スラッシュシンタクスの例を紹介 前回、Flash Lite 1.1端末が最も普及していると紹介しましたが、Flash Lite 1.1では、Flash 4をベースにしたスラッシュシンタクスを使用します(Flash Lite 2.xではActionScript 2.0を使用します)。

岡田 昇三

2009年1月3日 20:00

スラッシュシンタクスの例を紹介

 前回、Flash Lite 1.1端末が最も普及していると紹介しましたが、Flash Lite 1.1では、Flash 4をベースにしたスラッシュシンタクスを使用します(Flash Lite 2.xではActionScript 2.0を使用します)。

 今回は、ActionScriptをスラッシュシンタクスへ書き換える例を紹介します。比べて並べてみるとちょっとした言い回しが違うだけで全く複雑ではありませんので、ぜひチャレンジしてみてください。

ActionScriptをスラッシュシンタクスにする

 今回は図1を別ウィンドウで見ながら、順番に紹介します。

 まずは、ムービークリップへのgotoAndplayの命令の方法です。MovieClipのフレームのヘッダーを移動する際に、MovieClip.gotoAndPlay(2)というように記述しますが、スラッシュシンタクスでは、MovieClipを制御するには、telltargetというコマンドを使用します。telltarget()は以下のように記述します。

tellTarget("MovieClip名"){
命令
}

 スラッシュシンタクスでは、_rootは使用せず、以下のように置き換えます。thisは使用できません。

_root. → "/(スラッシュ)"
_parent. → "../(ドット、ドット、スラッシュ)"

 では、以下のtelltarget()の例文を見てみましょう。スクリプトは書き方が違いますが、同じ動きをします(図1-1)。

 次に変数の参照方法ですが、これはドットでも、スラッシュでも参照することができます。スラッシュシンタクスでの、参照方法は、":(コロン)"を使用します。ムービークリップ内にある変数を参照する例(ルートにあるMovieClip「hoge_mc」の変数「a」を変数「b」に代入する)は、図1-2になります。

 文字列の連結について、Flash Lite 1.xの場合は、addを使います。文字列を追加する例は図1-3になります。

 また、if文などで、文字列(ストリング型変数)の比較を行う場合には、eq、neを使います。文字列を比較する例文は図1-4になります(数値での比較は、通常の"=="で比較が可能)。

 次に動的に変数を参照したい場合には、eval()を使用します(図1-5)。

 次に、プロパティの値の取得はgetPropertyを、設定にはsetPropertyを使用します。図1-6の例文のルートにある「hoge_mc」のX座標を取得し、xposという変数に代入します。

 プロパティはFlash 4と比較して、使用可能、不可のものがあります(図1-7)。

 配列についてですが、Flash Lite1.xでは、オブジェクトという概念がないためにArrayオブジェクト、すなわち配列が使用できません。ですので、evalや文字列を使って疑似的に配列して扱います(図1-8)。

 Math関数については、FlashPlayer内部でシュミレートされるために使用可能です。ただし、メモリの使用量が多くなりがちなために、ゲームやムービー内での使用避けた方がいいでしょう。計算済みのパラメータを用意する等工夫して使用を回避してください。

 Flash Lite1.xでは、functionの代わりにcallという関数を使用します。これは、フレームに書いてあるスクリプトを任意のタイミングで実行できる関数です。例えば、10フレーム目に「foo」というフレーム名をつけ、以下のように記述します。

trace(a + 10)

 そしてボタンから以下を実行すると、fooに記述したスクリプトが実行されて、出力パネルに「11」と表示されます。

on(press){
a = 1
call("foo")
}

 このように比べてみると全然簡単なことがわかります。ぜひちょっとした待ち受け等からチャレンジしてみてはいかがでしょうか。

 次回は、2008年12月に発売されたばかりのdocomoの新シリーズ「x-0xA」で採用されたFlash Lite 3.1の実機レビューについて紹介します。

【参考文献】

「Adobe - デベロッパーセンター : i モード用 Flash 開発講座」(http://www.adobe.com/jp/devnet/devices/articles/togoru_print.html)(アクセス:2008/12)

「Flash Lite 2.x ActionScript リファレンスガイド」(http://livedocs.adobe.com/flashlite/2_jp/main/)(アクセス:2008/11)

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30