日本a在线观看_久久久三区_久久99精品久久久久久国产越南_在线观看中文字幕av_国产精品久久久久久久久久东京_a免费视频

PS設計教程網歡迎你!

Flash CS4教程:詳細解析抓喜慶游戲教程(2)

文章來源于 動畫設計與制作208例,感謝作者 lby 給我們帶來經精彩的文章!
設計教程/設計教程/Flash教程2009-10-13
圖13-5 手型 (6)下面先編寫已經創建的元件擴展類FLY ,該類接收一個Number類型參數,將其賦值作為該類產生對象的y軸方向上的遞減值,如第16行代碼所示,通過在構造函數中為其注冊ENTER_FRAME事件偵聽,使該類對象在

圖13-5 手型

(6)下面先編寫已經創建的元件擴展類“FLY” ,該類接收一個Number類型參數,將其賦值作為該類產生對象的y軸方向上的遞減值,如第16行代碼所示,通過在構造函數中為其注冊ENTER_FRAME事件偵聽,使該類對象在被創建時便執行事件偵聽器函數enterFrameHandler ,也就是所創建的每一只喜鵲都以某一速度(變量speed值)作向上運動。此外,該類還提供兩個方法:removeTimerHandler()用于清除事件偵聽器函數,這在該類對象被刪除時會被調用(刪除不必要的事件偵聽);另一個方法flySpeed()是取得_speed值。

AS3代碼

package {   
    import flash.display.MovieClip;   
    import flash.utils.Timer;   
    import flash.events.*;   
       
    public class Fly extends MovieClip {   
        private var _speed:Number;   
           
        public function Fly(speed) {   
               
            _speed = Math.round(speed);   
            this.addEventListener(Event.ENTER_FRAME,enterFrameHandler);   
        }   
           
        private function enterFrameHandler(event:Event):void{   
            this.y -= this._speed;   
        }   
           
        public function removeTimerHandler():void {   
            this.removeEventListener(Event.ENTER_FRAME,enterFrameHandler);   
            trace("清除實例事件");   
        }   
           
        public function get flySpeed():Number{   
            return this._speed;   
        }   
           
    }   
}

 

(7)下面是主程序類的編寫,我們在構造函數初始化舞臺的寬度和高度,并創建存儲所有喜鵲對象的容器,如第22到25行代碼所示。在第27到31行代碼隱藏系統鼠標并創建“手型”,通過偵聽stage對象的MOUSE_MOVE和MOUSE_DOWN事件來控制“手型”的鼠標跟隨stageMoveHandler()和狀態stageDownHandler()。

 

AS3代碼

package {   
    import flash.display.*;   
    import flash.events.*;   
    import flash.utils.Timer;   
    import flash.text.TextField;   
    import flash.ui.Mouse;   
       
    public class Main extends Sprite {   
           
        private var _grade:Number;//得分值   
        public var displayGrade_txt:TextField;//得分顯示   
        public var start_btn:SimpleButton;//開始按鈕   
        private var stageW:Number;   
        private var stageH:Number;   
        private var content_mc:Sprite;//存儲所有喜鵲對象的容器   
        private var hand_mc:MovieClip;//“手型”對象   
           
        private var _timer:Timer;   
           
        public function Main() {   
               
            this.stageW = stage.stageWidth;   
            this.stageH = stage.stageHeight;   
            this.content_mc = new Sprite();   
            addChild(content_mc);   
               
            Mouse.hide();   
            this.hand_mc = new MouseHand();   
            hand_mc.mouseEnabled = false;   
            hand_mc.gotgood_mc.mouseEnabled = false;   
            addChild(hand_mc);   
            stage.addEventListener(MouseEvent.MOUSE_MOVE, stageMoveHandler);   
            stage.addEventListener(MouseEvent.MOUSE_DOWN, stageDownHandler);   
               
            init();   
               
        }

(8)stageMoveHandler()方法是簡單的鼠標跟隨,stageDownHandler()方法是當用戶鼠標點擊時播放步驟(5)中的“手型”影片剪輯動畫,產生“抓”的動作效果。 init()方法中開始初始化該游戲,主要是將displayGrade_txt顯示文本的內容設置為0和為開始按鈕注冊事件偵聽器函數。當用戶單擊start_btn按鈕后,便調用startGame()方法,此時,將結束游戲按鈕out_btn 設置為可見,并注冊事件偵聽器函數,如第59、60行代碼所示。然后通過創建Timer類對象實例進行計時,每隔500毫秒執行一次copy()偵聽器函數,也就是創建一只喜鵲對象,如第62到64行代碼所示。第65行將start_btn按鈕設置為不可見。

提示:關于計時器Timer類:Timer(delay:Number, repeatCount:int = 0)

參數 delay:Number — 計時器事件間的延遲(以毫秒為單位)。

repeatCount:int (default = 0) — 指定重復次數。 如果為 0,則計時器重復無限次數。 如果不為 0,則將運行計時器,運行次數為指定的次數,然后停止。

AS3代碼

private function stageMoveHandler(e:MouseEvent):void {   
       
    this.hand_mc.x = stage.mouseX;   
    this.hand_mc.y = stage.mouseY;   
}   
private function stageDownHandler(event:MouseEvent):void {   
       
    hand_mc.gotgood_mc.gotoAndPlay(2);   
}   
  
private function init():void{   
       
    _grade = 0;   
    displayGrade_txt.text = "0";   
    start_btn.addEventListener(MouseEvent.CLICK,startGame);   
}   
  
private function startGame(event:MouseEvent):void {   
       
    trace("開始游戲!");   
    out_btn.visible = true;   
    out_btn.addEventListener(MouseEvent.CLICK,outGame);   
       
    _timer =new Timer(500,0);   
    _timer.addEventListener(TimerEvent.TIMER,copy);   
    _timer.start();   
    start_btn.visible =false;   
}

 

版權所有PS設計教程網公安備案:蘇公網安備 32058302001023號工信部備案:滬ICP備09005587號
aaa
主站蜘蛛池模板: 欧美hdfree性xxxx | 免费久久久 | 国产一区二区三区网站 | 久久久久久久久久久国产精品 | 羞羞网站在线看 | 九九热这里只有精品8 | 欧美国产综合视频 | 成人一级免费视频 | 国产精品嘿咻嘿咻在线播放 | 亚洲午夜精选 | 欧美激情精品久久久久久黑人 | 亚洲精品一区二区三区免 | 国产深夜福利视频在线播放 | 精品一区二区三区网站 | 看片一区 | 色婷婷一区二区三区 | 久久久久久久久亚洲精品 | 狠狠干91 | 亚洲午夜在线 | 欧美日比视频 | 久久精品视频在线 | 一级毛片手机在线观看 | 7777在线视频免费播放 | 国产精品一品二区三区四区18 | 国产精品久久久久久影院8一贰佰 | 大号bbwassbigav头交 | 毛片在线免费播放 | 高清在线观看av | 亚洲精品午夜在线 | 羞羞视频免费网站男男 | 国产二区三区在线播放 | 九九热免费视频在线观看 | 亚洲午夜影院在线观看 | 亚洲一二区视频 | 一级α片免费看刺激高潮视频 | 精品一区二区三区免费毛片爱 | 国产精品视频久久久 | 香蕉秀 | 黄色免费在线视频网站 | 神秘电影91| 射逼网站 |