從零開始學社交遊戲開發(四)

這一節我們將要將完成遊戲啓動logo窗口部分。        

  Logo資源加載:

    在loadCfgComplete方法中加入logo加載下面的代碼:   

     

_logoSwf = new JFDynamicRes();
_logoSwf.load(config.cfg.sysCfg.logo_url, logoLoadComplete);

  窗口邏輯處理:

   Logo窗口主要是給玩家彙報遊戲加載進度,有些遊戲還在這個地方加一個消磨時間的小遊戲。(例如:7雄的打地鼠…),我們就先做一個加載進度反饋。

   ※Logo窗口接口定義:

package ui.logo {
    import com.jcit.res.IJFDynamicRes;
 
    import flash.display.MovieClip;
 
    public interface ILogoDialog {
        /**
         * 初始化
         * @param res_      - 資源
         */
        function init(res_:IJFDynamicRes):void;
 
        /**
         * 設置進度
         * @param hint      - 提示信息
         * @param setp      - 設置進度
         */
        function setProgress(hint:String,setp:Number):void;
    }
}



   ※接口實現:

 public function init(res_:IJFDynamicRes):void {
            // 設置窗口skin
            this.setSkin(res_.displayObjectByName("logo"));
 
            // 創建進度條
            _progressBar = res_.objectByName("LoadProgress") as MovieClip;
            _progressBar.gotoAndStop(1);
            _progressBar.x = 350;
            _progressBar.y = 524;
            JFApp.appMainSprite.tipsLayer.addChild(_progressBar);
 
            // 創建進度條提示標籤
            var tmpFont:IJFFont = FontLibrary.getInstance().song12Font;
            tmpFont.setAlign(TextFormatAlign.LEFT);
            tmpFont.setBold(true);
            _progressLabel = new HtmlLabel("",tmpFont);
            _progressLabel.widthAuto = true;
            _progressLabel.textColor = 0xFFFFFF;
            _progressLabel.x = 365;
            _progressLabel.y = 567;
            addChild(_progressLabel as DisplayObject);
        }
 
        public function setProgress(hint:String, setp:Number):void {
            _progressLabel.text = hint;
            var frame:int = setp * 100;
            _progressBar.gotoAndStop(frame);
        }


   在這裏需要用IDEA強大的實現接口方法的辦法,在LogoDialog類上按下Alt+Enter就會有一個彈出菜單,再按下Enter所有ILogoDialog接口中的方法就會被自動構造好了,超方便!!!,如下圖:

   

  在 init 方法中出現了一個FontLibrary類,這個類在VGCommon模塊中定義,遊戲中需要的字體都通過這個類提供,也沒啥難度,代碼就不貼了(需要的點這裏下載),大家可以在下圖指定的地方看代碼:

   

  Logo窗口代碼已經搞定了,接下來我們在Logo資源加載完成的地方把這個Logo窗口顯示出來,代碼如下:

 private function logoLoadComplete(success_:Boolean):void {
            if (!success_) {
                JFLog.outError("logo load false!!!");
                return;
            }
 
            // 初始化Logo窗口
            logoDlg = new LogoDialog();
            logoDlg.init(_logoSwf);
            logoDlg.show(false);
 
            // 計算遊戲加載完成需要多少步驟
            total_load_step =
                    cfg.sysCfg.config.length +  // 有多少個配置需要下載
                    cfg.sysCfg.res.length +     // 有多少個資源需要下載
                            1 +                 // 裝載遊戲模塊
                            1 +                 // 渲染場景
                            1;                  // 進入場景
            cur_load_step = 0;
            cfg_load_index = 0;
            logoDlg.setProgress("", cur_load_step);
        }


  接下來把html和js文件放到src目錄下面,如下圖:

  

   配置運行選項,如下圖:  

  

  

  配置好相關運行選項後:

  

  啓動後看到一片白啥也沒有,這個時候時候需要設置一下安全策略,如下圖:

  

  

  

  加好站點域名後,刷新一下頁面,就看到村神的啓動畫面了,如下圖:

  

終於看到一點成果了!!!,休息一會….!

本節源碼下載地址:點這裏下載

從零開始學社交遊戲開發(一)

從零開始學社交遊戲開發(二)

從零開始學社交遊戲開發(三)

來源:http://www.360ito.com/article/404.html


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章