アクションスクリプト勉強中の初心者がキーボードを押し続けると音楽が流れるスクリプトを作りたい

このQ&Aのポイント
  • 初心者のアクションスクリプト勉強中ですが、キーボードの特定のキーを長押しすると音楽がループ再生され、離すと止まるスクリプトを作りたいです。スクリプトのバージョンは2.0か3.0のいずれかでお願いします。
  • スクリプトの組み合わせ方が分からず困っています。初心者なので、サンプルやflaファイルのURLなどを教えて頂けると助かります。お手伝いいただけると嬉しいです。
  • 図々しいお願いになるかもしれませんが、どなたか助けていただけるとありがたいです。初心者のため、どうかよろしくお願いします。
回答を見る
  • ベストアンサー

アクションスクリプトを教えてください

はじめまして。 アクションスクリプト勉強中の初心者なのですが、どうしても作りたいものがありますので、お力お貸しください。 内容はキーボードのあるキー(1つ)を2秒以上押しっぱなしにすると音楽が流れ出してループ再生され、キーを離すと止まるというものです。スクリプトは2.0か3.0しか使用経験がないので、どちらかですと助かります。 自分で調べたところ、個々でのスクリプトは見つかるのですが、どのように組み合わせればいいのかわかりませんでした。 超と言っていいほどの初心者ですので、サンプルやflaファイルのURL等載せて頂けるとものすごく助かります。 図々しいお願いだということは承知しておりますが、どうか助けてください。 宜しくお願いします。

  • tm2an
  • お礼率75% (3/4)
  • Flash
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

> スクリプトは2.0か3.0しか使用経験がないので、 > どちらかですと助かります。 ActionScript 1.0 を拡張したのが 2.0 であって ActionScript 2.0 がわかれば同時に ActionScript 1.0 もわかるということになります。 ActionScript 3.0 は 2.0 や 1.0 とは違います。 というわけで何だかよくわかりませんが 適応範囲の広い ActionScript 2.0 で回答することにします。 まず「音楽」は すでに Flash(FLAファイル) のライブラリ内に読み込まれていて そのライブラリ内の「音楽」シンボル に 「識別子」として「mySound」という名前を付けているものとします。 ※参考↓ 「FN0402003 - Sound.attachSound()メソッド - Flash テクニカルノート」 http://www.fumiononaka.com/TechNotes/Flash/FN0402003.html 単に音楽を鳴らすだけでしたら 上のページに書かれてある3行のスクリプト(ActionScript 1.0)で音は鳴りはじめます。 ですから上のページのスクリプトを キーボード操作で実行させるようにすれば良いと言うことになります。 というわけで テンキーの「5」が押された2秒後に音楽を流す場合の フレームに書くスクリプト例です↓。 //========================================== //キーを監視させるオブジェクトを作成 var key_obj:Object = new Object(); //キーの状態を示すフラグを用意 var key_flg:Boolean = false; //インターバルIDを入れる変数の宣言 var id:Number; //Soundオブジェクト をこのタイムラインに作成 var my_sound:Sound = new Sound(this); //Soundオブジェクト に「mySound」を割り当てる my_sound.attachSound("mySound"); //キーを押したときに実行する関数の定義 key_obj.onKeyDown = function():Void { //もし key_flg が false であり if (!key_flg) { //もし押されたキーがテンキーの「5」であれば if (Key.getCode() == 101) { //2秒(2000ミリ秒)後に intervalFunc を実行 id = setInterval(intervalFunc, 2000); } // key_flg を true にする key_flg = true; } }; //キーを放したときに実行する関数の定義 key_obj.onKeyUp = function():Void { // key_flg を false にする key_flg = false; //my_sound の再生を停止 my_sound.stop(); //setInterval を解除 clearInterval(id); }; //インターバルを開けて実行する関数の定義 function intervalFunc():Void { //my_sound の再生を開始(0秒から,1000回ループ) my_sound.start(0, 1000); //setInterval を解除 clearInterval(id); } //key_obj を Key のリスナーとして登録 Key.addListener(key_obj); //========================================== ◎ActionScript 2.0   Flash MX 2004 以降で使用可   Flash Player 6 以上でパブリッシュ可 なお, HTML に貼り付けた Flash(SWF) をブラウザで閲覧する場合 その Flash にフォーカスが当たっていないと Flash でキーボードイベントは受け取れません。 したがって Flash 内に「スタート」ボタンを置いて閲覧者に一度 Flash をクリックしてもらうとか 何かそういう工夫をする必要があります。 Google検索例「Flash フォーカス」 http://www.google.co.jp/search?hl=ja&source=hp&q=Flash+%E3%83%95%E3%82%A9%E3%83%BC%E3%82%AB%E3%82%B9

tm2an
質問者

お礼

とても丁寧にわかりやすく教えていただきまして、ありがとうございます!! 感謝の気持ちでいっぱいです!早速制作に取り組みますね! 本当にご親切にありがとうございました^^

関連するQ&A

  • Action Script3.0でプルダウンメー

    Flash勉強中4週目の初心者です。 Action Script3.0でプルダウンメニュー(ポップアップメニュー)を作りたいのですが、詳しい方がいましたら教えてください。 フラッシュで動画を作り、最後にアイコンが並ぶようにしました。アイコンをマウスオーバーでプルダウンメニューがでて、それぞれのカテゴリーにリンクをさせたいのですが、WEBで調べてもAction Script3.0でつくるプルダウンメニューがあまりなく、行き詰っています。 どなたかAS3.0のスクリプトが、初心者にも分かりやすく出ているサイト、もしくはサンプルスクリプトなどがありましたら教えて下さい。設置の仕方等、全くわかりませんので、詳しく知りたいのです。 独学でマニュアルをもとに勉強しています。自分ひとりではやはり限界がありますので、悩んでいます。よろしくお願い致します。

    • ベストアンサー
    • Flash
  • アクションスクリプト?

    はじめまして、質問失礼致します…。 最近FLASHを始めたのですが、とても気になるサイト様がありまして どのように作っているのかヒントだけでも教えていただければと思い 書き込みさせて頂きました。 多分初心者の言葉よりも見ていただいた方が早いと思うので 下記に気になるサイトさんのURLを張らせていただきます。 http://www.kazsh.com/ の#11 Letter effectsがそうなのですが、これもアクションスクリプト というものなのでしょうか? アクションスクリプトで検索をかけてもなかなか めぼしい物が見つからず、検索ワードも違ってるのかとも思い このまま探してもみつからなさそうなので…。 もし、この手の効果が載っている本でおすすめ等もありましたら 教えていただけたら幸いです。 と堅苦しくなりましたが、実際のとこほんと気になって 夜も眠れません(笑) どなたかご教授よろしくお願いいたしますーm(_ _)m

    • ベストアンサー
    • Flash
  • directorのスクリプトの書き方

    今、director MX2004でアニメーションを作っているのですが、スクリプトの書き方がわかりません(;_;) ・マウスアップのスクリプトを書いたのですが、クリックするまでループ再生させるにはどうしたらいいですか?(ループ再生はオンになってます) ・はじめに on exitFrame me go to the frame end と書く意味は何ですか? 提出期限が迫っているのに全くわからなくて困ってます(>_<) 初心者の私にもわかるような説明でお願いします。 解説サイトとかありましたらそれも教えていただけると嬉しいです。

  • スライドの表示とアクションスクリプトの関連

    こんにちわ。 現在、プレゼン風のスライドを作成しております。 親スライドがあり、その下に子スライドを数個作成しております。また、その子スライドにアクションを配置した仕様にしております。 また、アクションは、以前にこちらのサイトで教えていただきました、時間指定のアクションなのですが、子スライド2が表示されて数秒後に子スライド2内の指定のフレームに移動するアクションスクリプトを記述しています。というか、そういう風にしたいと想っています。 親スライド   |   子スライド1ー静止画   |   子スライド2-時間指定のスクリプト this.stop(); timerID = setInterval(startMovie, 28000); timerID2 = setInterval(startMovie2, 31000); function startMovie() { gotoAndPlay(5); clearInterval(timerID); } function startMovie2() { gotoAndPlay(10); clearInterval(timerID2); } 上記スクリプトは、子スライド2内の1フレーム目に記述しています。 また、各スライドの切り替えは、mediaDisplayのパラメーターで映像に合わせて、時間指定で切り替えています。 上記、スクリプトは稼動するのですが、スライド2が表示されてからではなく、全体が再生されてからの時間で動いてしまいます。 ですので、スライド1が表示されている裏でスライド2のアクションが動いてる感じです。 スライド2が表示されてから、アクションスクリプトが動くようになるには、どういう風に指定すればよいのでしょうか? ほかのとこでも聞いたのですが、ちょっと利き方が悪いのか、お返事がなくて。。。

  • action scriptのエラー回避について

    はじめまして、Flash Lite2.0の action script2.0を練習しているのですが 以下のようなエラーが発生しまして 解決方法がわかりません。 どなたかご教授の程、よろしくお願いいたします。 **********エラー内容************** このステートメントは、クラス定義で許可されていません。 key_obj.onKeyDown = function() :Void { ントは、クラス定義で許可されていません。 Key.addListener( key_obj ); ******プログラム******************* class LoadTest10 { //コンストラクタ function LoadTest10(mc:MovieClip) { var dept = 1; var image0=_root.createEmptyMovieClip("image0",dept); image0.loadMovie("070403_222216.jpg"); image0._x=0; // 配置する image0 の左上のx座標 image0._y=0; // 配置する image0 の左上のy座標 } var key_obj : Object = new Object(); key_obj.onKeyDown = function() :Void { var code = Key.getCode(); trace( code ); if( code == 56 ) { trace("8が押された"); } else if( code==51) { trace("3 press" ); } } Key.addListener( key_obj ); } *********flaファイルに記載****************** var app:LoadTest10=new LoadTest10(_root);

    • ベストアンサー
    • Flash
  • 音のアクションスクリプトについて

    ActionScriptを使った音のスクリプトについて勉強しています。ステージ上に二つの音楽プレーヤーを設置し音楽を流す、という事からはじめてみたのですが、上手く行かずに困っています。 設置した音量+/-ボタンを押すと両方の音量が変わってしまったり、片側を再生している状態で、もう一方を再生すると、もう一方は停止してしまったり(目的的には困らないのですが、本来両方とも再生され音がでているのが本来の姿のようなので)、といった状態です。 何かを間違えた理解と書き方をしていると思うのですが、間違いの指摘や音のアクションスクリプトの書き方についてご教授いただければと思い、質問させていただきました。 複数音楽プレイヤーを設置 という事がしたい場合のアドバイスやご教授をいただきたく思います。 よろしくお願いします。 ステージ  MC01(インスタンス名、I_MC01)   L__MC再生ボタン(インスタンス名、I_saisei)   L__MC音量+ボタン   L__MC再生-ボタン  MC02(インスタンス名、I_MC02)   L__MC再生ボタン(インスタンス名、I_saisei)   L__MC音量+ボタン   L__MC再生-ボタン と二つのシンボルがステージ上に配置し、各MCに再生ボタンと音量+/-ボタンを配置しています。 MC01 onClipEvent (load) {    Hsound_MC01 = new Sound(I_MC01);    Hsound_MC01.attachSound("RS_MC01"); } MC再生ボタン onClipEvent (load) {    Hvol= 50; } on (release) {    _root.I_MC01.Hsound_MC01.stop();    _root.I_MC01.Hsound_MC01.start(); } onClipEvent (enterFrame) {    _root.I_MC01.Hsound_MC01.setVolume(this.Hvol); } MC音量+ボタンon (release) {    if (_root.I_MC01.I_saisei.Hvol<100) {       _root.I_MC01.I_saisei.Hvol += 10; } } と書きました。MC02も同じで、01と02が違うだけです。

    • ベストアンサー
    • Flash
  • 携帯FLASHのスクリプト

    アクションスクリプト初心者です、質問よろしくお願いいたします。 ランダムでまばたきするなどの簡単なループアニメをflash4(MX)で書き出して、携帯で観覧できるアニメーションを作っています。 アクションスクリプトの勉強も兼ねて、そのループアニメに「1」ボタンを押すと花がフェードインして消える、と言ったボタン対応のアニメーションに挑戦中です。フレーム1でstopさせて、フレーム2にそれぞれインスタンス名をつけたシンボルを設置させています。ボタンにはこんな風に書いてみました↓ on (keyPress "1") { _root.hana.play(); } on (keyPress "2") { _root.hoshi.play(); } on (keyPress "3") { _root.heart.play(); パソコン上ではちゃんと動いてくれたのですが、flash4では対応していないスクリプトがあるようで携帯では動いてくれませんでした。 そこでお教え頂きたいのですが、このようなボタン(キー)に反応したアニメを作る場合flash4(flash lite)ではどのようにスクリプトを書いたらいいのでしょうか…? 携帯向けフラッシュを作成された事のある方、FLASH4に詳しい方、どうかご教授よろしくお願いいたしますm(__)m

    • ベストアンサー
    • Flash
  • flaファイルをcsfファイルに変換

    flaファイルをcsfファイルに変換することは出来るでしょうか。 flaファイルをsuzuka(フリーのフラッシュ作成ツール)で開きたいのですが、csf,csfzファイルしか開けません。 これだとアクションスクリプトなどのサンプルが使えません。 結構困っていますので回答早めにお願いします^^

    • ベストアンサー
    • Flash
  • action script3.0で、以下のようなよくあるメニューボタン

    action script3.0で、以下のようなよくあるメニューボタンを作成したのですが、うまくいきません。 http://fish.sitemix.jp/baretest.swf サンプル http://fish.sitemix.jp/test.zip サンプルソース Tweenerを使用しています。 以下のサイトを参考にしました http://blog.bonkura.jp/2008/09/as30tweener-2.html  のびるバー http://hato-style.chu.jp/note/rnd_text.html ランダムフォント 本来は伸びるバーが文字に被っさっているようにしたいのですが、なぜかパブリッシュすると バーがずれたり、ロールオーバーのhitを検知するエリアがずれたりします。 どうやらランダムフォントASの方のスクリプトが邪魔(?)そしているのか、 テキストエリアに単純に文字を表示させるだけならバーはずれないようで・・・ 初心者なもので、理解度もかなり浅いです。 わかる方いらしたらお願い致します。

    • ベストアンサー
    • Flash
  • Flash Liteで作成したFlash待ち受け画像をループ再生する方法

    超初歩的な質問になりますが、Flash Lite1.1で作成したFlash待ち受け画像を携帯上でループ再生する方法を教えて下さい。 Flash講座などでswfファイル自体にループ再生するよう指示するアクションスクリプトの書き方を探して試してみましたが、ループしませんでした。auのFlash lite対応機種2台で試しました。 単に書き方が間違っているのでしょうか?それとも、ループ再生させるアクションスクリプトはFlash liteには対応していないのでしょうか?何か別の方法があるのでしょうか?アクションスクリプトは全くわからないので、検討もつかないという状態です。 どうぞ宜しくお願いします。

専門家に質問してみよう