点击这里给我发消息 点击这里给我发消息
首页 > 行业资讯 > flash>详细内容

FLASH小游戏开发 第八节

添加时间:2010-1-5
    相关阅读: 开发

范例接宝游戏中得分显示类和时间控制类的CLASS讲解

事实上这两部分比较简单
所以并在一起讲解了
讲解前先点开FLA文件,把这两个MC看看,对MC构造了解了,才能写CLASS嘛~

看下得分显示类的代码:

class game.Score_view extends MovieClip {
    private var w1:MovieClip;
    private var w2:MovieClip;
    private var w3:MovieClip;
    private var w4:MovieClip;
    private var w5:MovieClip;
    private var w6:MovieClip;
    private var i:Number
    //构造函数
    function Score_view() {
        init();
    }
    //公-私有方法
    public function init() {
        onEnterFrame = Control;
    }
    private function Control() {
        for (i=1; i<=6; i++) {
            if (i<=int(String(_root.score).length)) {
                this["w"+i].gotoAndStop(int(String(_root.score).substr(i*(-1), 1))+1);
            } else {
                this["w"+i].gotoAndStop(1);
            }
        }
    }
}

原理很简单,就是让这个MC一直onEnterFrame着,按照总得分来不断操控MC里的6个数字MC变化
仔细思考下Control()里的代码,想通了其实很简单哦~~
不多说了,懂了后就跟我看时间控制类的(不懂就继续看,直到看懂为止)

下面是时间控制类:

class game.Time_control extends MovieClip{
    private var t:Number
    public var time:Number
    //------------------------------------------
    /*
    function Time_control(){
        init()
    }
    */这段被注销掉了,因为我不要它一出现在舞台就开始倒计时。什么时候倒计时,游戏控制类会给本类发出命令(调用本类中的Go()的function)
    //-------------------------------------------
    public function set _time(ttt:Number):Void{
        time=ttt
    }
    public function get _time():Number{
        return(time)
    }
    //===========================================   
    private function TimeGo(){
        t++
        if(t%30==0) time--
        if(time==0) {
            delete onEnterFrame
            _root.game_c.endGame()
        }
    }//倒计时代码,当时间=0,通知游戏控制类作出endGame()的行为。
    public function Go(){
        t=1
        time=30       
        onEnterFrame=TimeGo
    }//初始化,并开始倒计时
}

有了前两节的基础,这节显的很简单……(感觉好像应该先教这节啊……- -……是不是难度顺序颠倒了??)
下节会讲最后的,也是很重要的类-游戏控制类,尽请期待~!

本文作者:
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册