Beautifl - Flash Gallery

Thumbnail : 緊急地震速報のアラーム
緊急地震速報のアラーム
Hiiragi 2013-08-08 All rights reserved

再生するにはFlash Playerが必要です。デスクトップのブラウザでご覧ください。

package  
{
    import com.bit101.components.PushButton;
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flash.text.TextField;
    import flash.text.TextFieldAutoSize;
    import flash.text.TextFormat;
    import org.si.sion.SiONData;
    import org.si.sion.SiONDriver;
    
    /**
     * 緊急地震速報のアラーム
     * 
     * @author Hiiragi
     * 
     * これ気持ち悪いなー、とずっと気になってたので、なんとなくコードだけ耳コピ。
     * Cdim7 → C#dim7の繰り返しでした。
     * 
     * 音色は適当にやったんで、あまり似てないのは勘弁。
     * というか、MMLはなんかよくわからなくて弄るのが・・・。
     * 
     * 音量を大きくして鳴らすと、周りの人が誤解するので、音量を絞って聞いてください。
     */
    
    [SWF(width = "465", height = "465", frameRate = "30", backgroundColor = "0xFFFFFF")]
    public class EarthquakeAlerm extends Sprite
    {
        private var _sionDriver:SiONDriver;
        private var _sionData:SiONData;
        
        private var _btn:PushButton;
        
        public function EarthquakeAlerm() 
        {
            //SiON
            _sionDriver = new SiONDriver();
            _sionData = _sionDriver.compile("#MA@10{5 0 01 05 05 02 20 00 32 1 2 02 0 0 00 15 04 03 20 00 01 1 1 01 3 0 01 10 05 02 20 00 28 1 0 09 0 0 00 15 02 01 20 00 06 1 0 01 7 0};t160;l4;#A=o6cc+r2;#B=o6e-er2;#C=o6g-gr2;#D=o6aa+r2;#E=o7cc+r2;#F=o7e-er2;%t0 %6@10 [A]2;%t1 %6@10 r64[B]2;%t2 %6@10 r32[C]2;%t3 %6@10 r32r64[D]2;%t4 %6@10 r16[E]2;%t5 %6@10 r16r64[F]2;");
            
            
            //Button
            _btn = new PushButton(this, 0, 0, "Alerm", clickHandler);
            _btn.move(this.stage.stageWidth / 2 - _btn.width / 2, this.stage.stageHeight / 2 + 50);
            
            
            //TextField
            var tf:TextField = new TextField();
            tf.autoSize = TextFieldAutoSize.LEFT;
            tf.text = "緊急地震速報です。"
            tf.setTextFormat(new TextFormat(null, 40));
            
            tf.x = this.stage.stageWidth / 2 - tf.width / 2;
            tf.y = this.stage.stageHeight / 2 - tf.height / 2;
            
            this.addChild(tf);
            
        }
        
        private function clickHandler(e:MouseEvent):void
        {
            _sionDriver.play(_sionData);
        }
        
    }

}