Compact Mirror forked from: Human Clock

by hacker_johiroshi forked from Human Clock (diff: 134)
「あ、あれ、時計どこだっけ?」
ポケットの中にはない。腕にもない。足元にもない。
ベッドの上にもない。机の上にもない。鞄の中にもない。
あと、探していないのは・・・
時計といえば、腕時計。とっさに時計を見るように、
とっさに手鏡を見る動作をモチーフに作成しました。一発ねたですね。
以下のウェブサイトを参考にしました。
ActionScript入門Wiki@rsakane
http://www40.atwiki.jp/spellbound/
ActionScript 3.0 コンポーネントリファレンスガイド
http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/
♥0 | Line 71 | Modified 2010-07-30 17:37:28 | MIT License
play

ActionScript3 source code

/**
 * Copyright hacker_johiroshi ( http://wonderfl.net/user/hacker_johiroshi )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/ehnP
 */

//
//「あ、あれ、時計どこだっけ?」
//
//ポケットの中にはない。腕にもない。足元にもない。
//ベッドの上にもない。机の上にもない。鞄の中にもない。
//あと、探していないのは・・・
//
//
//
//時計といえば、腕時計。とっさに時計を見るように、
//とっさに手鏡を見る動作をモチーフに作成しました。一発ねたですね。
//
//
//以下のウェブサイトを参考にしました。
//
//ActionScript入門Wiki@rsakane
//http://www40.atwiki.jp/spellbound/
//
//ActionScript 3.0 コンポーネントリファレンスガイド
//http://livedocs.adobe.com/flash/9.0_jp/ActionScriptLangRefV3/

package {
     import flash.display.Sprite;
     //textField
     import flash.text.TextField;
     import flash.text.TextFormat;
     //EventListenr
     import flash.events.Event;
     import flash.events.MouseEvent;
     
     public class CompactMirror extends Sprite {
     
         private var time:TextField;
         
        public function CompactMirror() {
        
            //鏡のふちの表示
            var mirrorCase:Sprite = new Sprite;
            mirrorCase.graphics.beginFill(0xF0E68C);
            mirrorCase.graphics.drawCircle(240, 270, 120);    //x, y, r
            mirrorCase.graphics.endFill();
            addChildAt(mirrorCase, 0);
            //鏡の表示
            var mirror:Sprite = new Sprite;
            mirror.graphics.beginFill(0xF8F8FF);
            mirror.graphics.drawCircle(240, 270, 100);    //x, y, r
            mirror.graphics.endFill();
            addChildAt(mirror, 1);
        //顔の表示
        var head:Sprite = new Sprite;
            head.graphics.beginFill(0xEEE8AA);
            head.graphics.drawCircle(240, 290, 70);    //x, y, r
            head.graphics.endFill();
            addChildAt(head, 2);
            
            //時間の表示
            var date:Date = new Date();    //時間の取得
            time = createTextField(195, 250, 100, 100);
            setFormatTime();
            time.text = date.toLocaleTimeString();    //現地時間の取得、表示
            addChildAt(time, 3);    //何故か最前面に来ないので、無理矢理押し出しました

        //指示文
        var message:TextField = createTextField(200, 400, 200, 100);
        //setFormat();
        message.text = "Open Compact";
        addChild(message);

        //蓋の表示
            var cover:Sprite = new Sprite;
            cover.graphics.beginFill(0xF4A460);
            cover.graphics.drawCircle(240, 270, 100);    //x, y, r
            cover.graphics.endFill();
            addChildAt(cover, 4);

    rip();

        stage.addEventListener(MouseEvent.CLICK, openCompact);
        }
        

    //蓋を開ける
    private function openCompact(event:MouseEvent):void
    {
        removeChildAt(4);

    //蓋の表示
        var cover:Sprite = new Sprite;
        cover.graphics.beginFill(0xF4A460);
        cover.graphics.drawCircle(240, 120, 100);    //x, y, r
        cover.graphics.endFill();
        addChildAt(cover, 4);
    }
    
    //口の表示
    private function rip():void {
        
        graphics.lineStyle(2.0, 0x0);
        graphics.moveTo(210, 350);
        graphics.curveTo(240, 450, 270, 350);
    }

        //TextFieldの設定
        private function createTextField(x:Number, y:Number, width:Number, height:Number):TextField {
        
            var temp:TextField = new TextField();
            temp.x = x;
            temp.y = y;
            temp.width = width;
            temp.height = height;
            return temp;
        }
        
        //TextFormatの設定
        private function setFormatTime():void {
        
            var temp:TextFormat = new TextFormat();
            temp.font = "_typeWriter";
            temp.color = 0xFF0000;
            temp.size = 30;
            
            time.defaultTextFormat = temp;
        }
     }
}