• ベストアンサー

ActionScript3.0で画面を揺らすには?

BlurFiltanの回答

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

その揺らす「ゲーム画面」とは 作成した Flash 内部全体ということでしょうか? 良くわからないので とりあえずそういうことで話を進めます。 当然ながら「画面を揺らす」という関数やメソッド(イベントリスナー)は存在しないわけですから, 「画面を揺らすとはどういうことであるのか」を自分自身で考えて定義し それをスクリプトとしてコーディングして行く必要があると思います。 下のスクリプト例は 私が「画面を揺らすとはどういうことであるのか」を考えて定義してみた例です。 ステージ上に適当に何かを配置して (何かを置かないと振動の様子が見えないため) メインのタイムラインのフレーム1に書くスクリプトです。 //============================================= //Timerインスタンス「vibrate_tm」を作成 //(20 ミリ秒間隔で 100 回実行) var vibrate_tm:Timer=new Timer(20,100); //Timerインスタンスに振動させるイベントリスナーを登録 vibrate_tm.addEventListener(TimerEvent.TIMER,vibrateStage); //振動させるイベントリスナーの定義 function vibrateStage(e:TimerEvent) { //メインタイムラインの座標をランダムな±5にする root.x=Math.random()*10-5; root.y=Math.random()*10-5; //表示を即更新 e.updateAfterEvent(); } //振動を開始させるイベントリスナーの定義 function startVibration(e:Event) { //タイマーをリセット vibrate_tm.reset(); //タイマー開始 vibrate_tm.start(); } //---↓仮の振動開始イベント↓---- //ステージ上でマウスアップしたときに振動開始 stage.addEventListener(MouseEvent.MOUSE_UP,startVibration); //============================================= 上では 「仮の振動開始イベント」 として Flash の画面の任意の位置でマウスアップ(クリック)したときに Flash の画面全体を動かすようにしています。 実際には何が起こったときに振動を開始させるのかは知りません。 もし仮に 「上のスクリプトを書いたフレームが表示されたときに振動を開始」させるのでしたら 最後のイベントリスナーなどは不要になって 次のようにもっと短くなります↓。 //============================================= //Timerインスタンス「vibrate_tm」を作成 //(20 ミリ秒間隔で 100 回実行) var vibrate_tm:Timer=new Timer(20,100); //Timerインスタンスに振動させるイベントリスナーを登録 vibrate_tm.addEventListener(TimerEvent.TIMER,vibrateStage); //振動させるイベントリスナーの定義 function vibrateStage(e:TimerEvent) { //メインタイムラインの座標をランダムな±5にする root.x=Math.random()*10-5; root.y=Math.random()*10-5; //表示を即更新 e.updateAfterEvent(); } //タイマー開始 vibrate_tm.start(); //=============================================   ※ なお... 揺らす「ゲーム画面」とは Flash 内部ではなくて 「HTML に貼り付けた Flash 自体」だったり 「ブラウザごと」揺らすような場合でしたら ActionScript ではなく JavaScript などになりますよ。 (もし「パソコンのモニタ」を揺らすのでしたら ActionScript でも JavaScript でも無理でしょう。)

関連するQ&A

  • actionscript 3.0 勉強中のもです。

    flash cs5 を使ってます。asファイルを記述して、それをactionscriptに読み込ませる方法は知っているのですが、 例えば 複数のasファイルを読み込ませる場合はどのようにすればいいのでしょうか?最近参考にさせていただいたサンプルファイルには.flash x1のものと.as x3があり、しかしながら、actionscript3.0の記述画面ではプロパティーを見てみるとasを埋め込む場所(「クラス:」と書いてあるところ)には1つしかasファイルを記述できず、その他のasファイルをどのように関連付けさせるのか全くわかりません。これらはどのように記述すればよろしいのでしょうか。少しでもお心当たりございましたら是非よろしくお願いします。

    • ベストアンサー
    • Flash
  • ActionScript3.0に書き換えたい

    Flash CS4&AS3.0を始めたばかりの全くの初心者です。 Flashは沢山のサイトを自分なりに置き換えて作成していますが、ASは殆どが1.0&2.0になっています。 今後のことも考えてAS3.0で作成したいのですが、まだまだ初心者の私には思うように書き換えできません。 ひとつずつ作成しながら理解するのが早道ではないかと、まずひとつをクリアしたいと思います。 ■ゆれてバウンドするメニュー(No.548)2006.02.03 http://hfm-kenchan.com/Lesson/log_qa/D0602033.htm 上記のサイトのASを3.0に書き換えを教えて頂ければ幸いです。

    • ベストアンサー
    • Flash
  • FlashのActionScriptについて

    FlashのActionScriptについて Flash CS4(AS2.0)を使用 Flashに関しては初心者で、色々な参考書を見ている中で、 AkutionScriptの書き方に色々なパターンがあって分からなくなりました。 アクションを書き込む際、 (1)専用のActionScriptのフレームを作成してそこに書く (2)ボタンインスタンスに書く (3)対象のシンボルのフレームに書く 上記3つの方法はそれぞれどのような違いがあるのでしょうか?又、どのようにして 使い分けするのでしょうか?

  • ActionScript3から過去のActionScript2に移りたいのです

    2ヶ月ぐらい前にFlash CS3で参考書を見ながらActionScript3を始めたのですがソースを見れば大体は理解できるようになりましたが参考書に出てきた所以外の部分だと自分の頭が悪く理解や応用ができずに現在は心が折れてしまいました。 ただ自分の目標としているオリジナルゲームは作りたいのでActionScript3よりも過去のActionScript2の方が簡単だった、という文章をネットで見かけたのと私の求めているようなソースがActionScript2の物が多いという理由で過去のActionScript2の方を覚えようと思いました。 そこで本題なのですが現在「FLASH ActionScriptバイブル」を買おうと思っています。 Wikipediaで調べた所 ActionScript1はFlash 5~Flash MX ActionScript2はFlash MX 2004~Flash 8 上記のようになっていたのです。 私はActionScript2を学びたいのですが「FLASH ActionScriptバイブル」は「Macromedia Flash 5日本語版を最大限に生かすスクリプト言語」と書いているのでActionScript1って事ですよね?。 これはActionScript2を学びたい者には買っても意味がないのでしょうか?(これ以外にもActionScript1の本を買ってもActionScript2を学ぶ私には無駄になりますでしょうか?)。 それとも買っても問題ないのでしょうか?。

    • ベストアンサー
    • Flash
  • FlashのActionScriptについて質問です。

    FlashのActionScriptについて質問です。 Flash CS4のAS2.0を使用 ActionScriptの書き方で (1)ボタンインスタンスに書く (2)対象のインスタンスのフレームに書く (3)ActionScript専用のフレームを作成しそこへ書く 参考書等を読んでいるとActionScriptを書くときに、上記3つの方法が あり混乱しています。 それぞれ、どのような違いがあるのでしょうか?また、どのように使い分けるのでしょうか? Flashに関しては、始めたばかりの超初心者です。どうぞ宜しくお願いします。

  • flash、全画面表示にするには

    はじめまして。 flash初心者です。 使用環境はwindows xp flash cs4 AS3 今学校の課題で flashを使用し、webサイトを制作しています。 最近よく見かけるWebサイトで、 http://www.fragile-net.com/ のように、画面サイズいっぱいに flashを表示させたいのですが、 どのようにやればよいのか 分かりません。 パソコンの画面は大きいものもあれば 小さいものもあります。 どんな画面の大きさでも、 その画面サイズに合わせて いっぱいに表示させたいのですが どのようにすればよいのですが? また、画面いっぱいを前提に flashで制作する場合、flashのサイズは 何px×何pxにして制作すればよいのですか? flash初心者の為、分からないことばかりですが、 どうか教えてください。 皆様よろしくお願い致します。

  • Flash ActionScriptで画像の読み込み

    Flashでトランプゲームを作ろうと思っているのですが、カード一つ一つシンボルに入れると容量が大きくなるので、画像を読み込もうと思いました。 が、読み込み方法が良くわかりません。 ActionScriptならこういうのがあると思ってネットで色々調べてみたのですが、しっくりとしたサンプルがなかったのでここに書き込みました。 使っているソフトはAdobe Flash CS3 Professionalです。

    • ベストアンサー
    • Flash
  • actionscript3.0ものすごく初心者です

    周辺見かけたプログラムを解読(?)しながら勉強しています。 以下のプログラムをflash cs5(actionscript3.0)にて入力すると パッケージはネストできません。と出ます。 どなたかが、ASじゃないとダメなのかなぁ.....とつぶやいていたのを見かけたのですが 当方何のことか全くわかりません。どのようにそれば以下の内容をflash cs5にてうち込む ことができるでしょうか?またできました、なぜ以下のパッケージが受け付けられないのかも教えていただきますと助かります。(packageは既に含まれているという記述を見ましたが 当方何のことか全くわかりません。)よろしくお願いします。 package { import flash.display.Sprite; [SWF(width="240",height="80",frameRate="24")] public class GraphicsSample extends Sprite { public function GraphicsSample() { var sp1:Sprite = new Sprite(); sp1.x = 30; sp1.y = 20; sp1.graphics.lineStyle(5,0xFF0000,1); sp1.graphics.moveTo( 0, 0); sp1.graphics.lineTo(10,45); sp1.graphics.lineTo( 0,20); sp1.graphics.lineTo(45,60); addChild(sp1); } } }

    • ベストアンサー
    • Flash
  • ActionScript3.0について教えていただきたいです。

    ActionScript3.0について教えていただきたいです。 下記の添付画像を参考にしていただくと理解しやすいかと思います。 FLASH CS4にて、フレームの移動を行いたいのですが、どうも上手くいきません。 「メニュー画面」でボタンを選択し、「サブメニュー画面」を表示するところまではできるのですが、 緑のボタンをクリックして、「目的のページ」に移動する事ができません。 「メニュー画面」から「サブメニュー画面」へは、 ボタン名.addEventListener(MouseEvent.CLICK,任意の関数名); function 任意の関数名(e:MouseEvent):void{ gotoAndStop(ページ数); } というスクリプトで動きますが、「サブメニュー画面」から「目的のページ」への移動ができない状況にあります。 どなたかわかる方いらっしゃいましたら、是非教えていただきたいです。 よろしくお願いします。

    • ベストアンサー
    • Flash
  • ActionScript3.0でのキーイベント

    Flashを使ってゲームを作っているのですが、 ActionScript3.0で、特定のキー(例えば、0や1など)が押された時、 現在のフレームから、指定したフレームに移動するというプログラムを 書きたいと思っていますが、なかなか苦戦しています。 そこで、仮に0のキーが押された時、nextpageとフレーム名を付けたフレームに 移動するActionScript3.0を設定しようとした場合、どのように書いたらよいのでしょうか?