「HTML5 フレームスクリプトにjavaScriptを使う」の版間の差分

提供: LWF Wiki
移動: 案内検索
(タイムラインにjavaScriptを書く)
(タイムラインにjavaScriptを書く)
 
22行: 22行:
 
どのようなことができるかはAPIリファレンスや逆引きリファレンスを参照してください。<br/>
 
どのようなことができるかはAPIリファレンスや逆引きリファレンスを参照してください。<br/>
 
<br/>
 
<br/>
[[File:Flash_script1.png|thumb|500px|none|left|タイムラインのフレームにスクリプトを記述]]
+
[[File:Flash_script1.png|thumb|500px|none|left|タイムラインのフレームにスクリプトを記述]]<br/>
 +
<br/>
 +
==エディタでjsを書く==
 +
Flashのアクションパネルではなく、別のエディタでjsを使いたい場合のためにjsファイルを簡単にFlashのアクションパネルに<br/>
 +
インポートするためのjsflコマンド include JavaScript for LWF が Publish for LWF と共に入っています。<br/>
 +
[[%E3%82%A8%E3%83%87%E3%82%A3%E3%82%BF%E3%81%AA%E3%81%A9%E3%81%A7%E6%A5%BD%E3%80%85%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%EF%BC%88include_JavaScript_for_LWF%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%EF%BC%89 | 詳しい使い方はコチラ]]<br/>
 +
[[File:Flash_script2.png|thumb|500px|none|left|include JavaScript for LWF]]<br/>
 +
<br/>
 +
==jsファイルを使う==
 +
Flashのフレームスクリプトではなく、jsファイルを使って処理を行いたい場合はLWFのインスタンスをjsに渡して処理を行います。<br/>
 +
【サンプル】
 +
//windowに定義してあるインスタンスで処理を行いたい場合
 +
//LWFのrootの1フレーム目で必要なインスタンスを渡して操作する
 +
window.lwfJS.start(_root, Tween);

2014年9月30日 (火) 14:49時点における最新版

基本的にFlashのタイムラインにはActionScriptしか記述できません。
LWFが対応しているActionScriptはタイムライン制御やイベント発火といったアニメーションパーツとして最低限必要なものしかありません。
それ以上のことをLWFのタイムライン側で行いたい場合はActionScriptではなく各環境にあった言語を使う必要があります。
HTML5の場合はjavaScriptを記述します。

タイムラインにjavaScriptを書く

javaScriptを記述するには下記のようにします。

/* js
    //移動する
    this.x = 100;
    this.y = 50;
    //ランダム回転
    this.rotation = Math.random() * 360;
    //タイムライン制御
    this.gotoAndPlay("attack");
*/

上記のように
/* js */
というブロックコメントを作り、その中にjavaScriptを記述しています。
thisはjavaScriptを記述したオブジェクト自身を指し、上記のように各種APIを実行することができます。

どのようなことができるかはAPIリファレンスや逆引きリファレンスを参照してください。

タイムラインのフレームにスクリプトを記述


エディタでjsを書く

Flashのアクションパネルではなく、別のエディタでjsを使いたい場合のためにjsファイルを簡単にFlashのアクションパネルに
インポートするためのjsflコマンド include JavaScript for LWF が Publish for LWF と共に入っています。
詳しい使い方はコチラ

include JavaScript for LWF


jsファイルを使う

Flashのフレームスクリプトではなく、jsファイルを使って処理を行いたい場合はLWFのインスタンスをjsに渡して処理を行います。

【サンプル】
//windowに定義してあるインスタンスで処理を行いたい場合
//LWFのrootの1フレーム目で必要なインスタンスを渡して操作する
window.lwfJS.start(_root, Tween);