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("游戏结束!");
            }
        }
    }
  • 相关阅读:
    Android消息队列模型——Thread,Handler,Looper,Massage Queue
    源代码管理十诫
    他们怎样读书和选书(汇总篇)
    Android消息处理机制
    互联网上的免费服务都是怎么赚钱的
    编程是一种对你的身体健康十分有害的工作
    ERROR/AndroidRuntime(716): java.lang.SecurityException: Binder invocation to an incorrect interface
    什么是 MIME Type?
    TCP/IP:网络因此互联
    Eclipse上GIT插件EGIT使用手册
  • 原文地址:https://www.cnblogs.com/kingfly/p/2555948.html
Copyright © 2011-2022 走看看