zoukankan      html  css  js  c++  java
  • 【AS3代码】一个完整的游戏框架

    package
    {
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.events.MouseEvent;
        
        public class Main extends Sprite
        {        
            public static const STATE_INIT:int = 10;
            public static const STATE_PLAY:int = 20;
            public static const STATE_GAME_OVER:int = 30;
            public var gameState:int = 0;                    //游戏状态
            public var clicks:int = 0;                        //游戏点击次数
            
            public function Main():void
            {
                init();
            }
            private function init():void
            {
                this.addEventListener(Event.ENTER_FRAME, gameLoop);
                gameState = STATE_INIT;
            }
            
            public function gameLoop(e:Event):void
            {
                switch(gameState)
                {
                    case STATE_INIT:
                        initGame();
                        break;
                    case STATE_PLAY:
                        playGame();
                        break;
                    case STATE_GAME_OVER:
                        gameOver();
                        break;
                }
            }
            
            public function initGame():void
            {
                //初始化游戏,当按钮被点击后,点击次数归零,状态改为游戏开始
                stage.addEventListener(MouseEvent.CLICK, onMouseClickEvent);
                clicks = 0;
                gameState = STATE_PLAY;
            }
            public function playGame():void
            {
                //若游戏被点击了10次,状态改为游戏结束
                if(clicks >= 10)
                {
                    gameState = STATE_GAME_OVER;
                }
            }
            public function onMouseClickEvent(e:MouseEvent):void
            {
                clicks++;    //游戏点击次数+1
                trace("点击了" + clicks + "次游戏!");
            }
            public function gameOver():void
            {
                //注销游戏监听器
                stage.removeEventListener(MouseEvent.CLICK, onMouseClickEvent);
                gameState = STATE_INIT;
                trace("游戏结束!");
            }
        }
    }
  • 相关阅读:
    【PAT Advanced Level】1008. Elevator (20)
    模块的耦合和内聚
    《深入理解计算机系统》--链接
    HDU 1077Catching Fish(简单计算几何)
    [置顶] VC++界面编程之--自定义CEdit(编辑框)皮肤
    使用VS2012 开发SharePoint 2013 声明式的action(activity) 综合实例
    java 创建线程的三种方法Callable,Runnable,Thread比较及用法
    代码审计技巧讲解
    IP地址后面斜杠加具体数字详解
    80端口被system进程占用解决方法
  • 原文地址:https://www.cnblogs.com/kingfly/p/2555948.html
Copyright © 2011-2022 走看看