■メッセージ表示命令を応用しよう
メッセージ表示命令 "〜",n ですが、これも工夫次第でおもしろい事ができます。
この命令は「指定したレイヤーにメッセージを格納した _root.message という変数を送っている」訳ですから
この仕様さえ理解していれば、それを利用してメッセージ表示以外の事だってやれちゃいます。
■たとえば「こんな応用」
等サイトのTACS講座の中の一つ「#5 画面効果の紹介(ポップアップします)」ですが
ここで表示されているあきこ先生は、お辞儀をしたり、視線を動かしたりとアニメーションをしておりますね。
これは、メッセージ表示命令 "〜",n を利用してアニメーションを利用しております。
■TACSのシナリオソース
■あきこ先生のソース
あきこ先生のソースを、フラッシュエディタで確認すると、1フレーム目に以下のActionScriptソースが記述してあります。
this.onEnterFrame = function(){ if( _root.message == "基本ポーズ"){ _root.gotoAndStop(2); } else if( _root.message == "お辞儀"){ _root.gotoAndStop(3); } else if( _root.message == "右を向く"){ _root.gotoAndStop(4); } else if( _root.message == "棒を縦に振る"){ _root.gotoAndStop(5); } else if( _root.message == "右から下を向く"){ _root.gotoAndStop(6); } else if( _root.message == "視線を左へ"){ _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._x = 3; _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._y = 0; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._x = 3; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._y = 0; } else if( _root.message == "視線を右へ"){ _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._x = -3; _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._y = 0; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._x = -3; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._y = 0; } else if( _root.message == "視線を上へ"){ _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._x = 0; _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._y = -3; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._x = 0; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._y = -3; } else if( _root.message == "視線を正面へ"){ _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._x = 2; _parent.AKIKO.TOPBODY.FACE.LEFTEYE.BLACK._y = 0; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._x = -2; _parent.AKIKO.TOPBODY.FACE.RIGHTEYE.BLACK._y = 0; } else if( _root.message == "しゃべる"){ _parent.AKIKO.TOPBODY.FACE.MOUTH.gotoAndStop(6); } } stop(); |
このあきこ先生のFlashは、_root.message に特定の文字列が入っていたら、各種動作をするように作ってあるわけです。
簡単に言うと _root.message に お辞儀 って文字が入ったら、お辞儀するアニメーションを行います。
このようなFlashを製作して、TACS for Flashの2番レイヤーに読み込んだ(表示した)場合。
シナリオソース上で、
"お辞儀",2
と記述すれば、あきこ先生はお辞儀をし、
"右を向く",2
と記述すれば、あきこ先生は右を向くという、事ができちゃう訳です。
つまり貴方の作ったFlashを、TACSのメッセージ表示命令 "〜",n で自由に操作する事ができちゃうわけですね。