Flash Lite 1.1の基本的なスクリプト制御

2008年10月8日(水)
古本 光司

Flash Lite 1.1でできないこと

 前述で解説している通り、Flash Lite 1.1は古いバージョンがベースとなっているため、PC版のFlashコンテンツ開発時に比べ、できることが少なくなっています。

 その主な違いとしては、次の通りです。

・enterFrameが使えない
・functionが使えない
・配列Arrayが使えない

 Flash Lite 1.1では、enterFrameが使用できません。そのため、毎フレームごとに処理を行う場合は、空のムービークリップなどを使用し、フレームをループさせてスクリプトを実行させます(図2-1)。

 PC版のFlashコンテンツ開発では、欠かすことのできないfunctionの関数定義がFlash Lite 1.1では使用できません。Flash Lite 1.1には、別の処理方法としてフレームラベルを利用したcall()関数が用意されていますので、こちらを使用していきます。ただし引数や戻り値を持たせることができないため注意も必要です(図2-2)。

 何らかのデータや情報を配列化して記憶させた方が効率よく処理を行うことができるのですが、Flash Lite 1.1には配列変数が用意されていません。別の処理方法としてeval()関数にて仮想的に処理させていくこととなります。また、この方法だと配列の個数が取得できないことになります。そのため、必要に応じて個数を記憶するための変数も合わせて必要となってきます(図2-3)。

 また、多重配列の場合は、変数名に「_」などの文字を記述していきましょう。数字だけで連結してしまうと、2けた以上になった場合には変数名が重複してしまうためです(図2-4)。

ボタンイベントとキーイベント

 Flash Lite 1.1にてボタンイベントを行う場合は、まずボタンシンボルを作成して、ステージに配置させます。そしてボタンのインスタンスを選択し、ボタンアクションにスクリプトを記述していきます。

on(press) {
gotoAndPlay("start");
}

 onハンドラのイベントは4種類がサポートされています(図2-5)。

 Flash Lite 1.1のインタラクティブ再生では、キーイベントを受け取ることができます。キーイベントもonハンドラで記述していきます。

 数字の2キーが押された時に実行するイベントは下記の通りです。

on(keyPress "2") {
trace("2キーが押されました");
}

 ボタンに数字キーを対応させる場合には、「,」で区切って複数のイベントを指定できます。ボタンに数字キー[0]を対応させるには下記の通りです。

on(press, keyPress "0") {
//[ボタン処理]
}

 また、ゲームなどでキャラクターを動かす場合などは、ボタンシンボルの必要性があまりありません。そのようなケースでは、空のボタンシンボルを作成してキーイベントを記述していくのがよく使われるテクニックとなります。

株式会社24-7

Webディレクター/Flashクリエイター。1995年に初めてインターネットの世界に触れ、1999年に独学で個人サイトの運営を始める。その後、本格的にWeb業界へと転身し、クリエイター、ディレクター、プランナー、講師業務、セミナーなど幅広く従事。また、個人的にもパブリッシャーとして活動中。より効果の高いWebの活用術を日々勉強中。『いざ高みへ!』1ka2ka.com:http://1ka2ka.com/ 株式会社24-7:http://www.24-7.co.jp/

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています