zoukankan      html  css  js  c++  java
  • (cocos2d-js游戏)測试你的反应速度----------基本逻辑(上)

       游戏玩法:点击開始游戏。等待一个随机时间。然后背景颜色会变(在t1时刻),这时候你须要点击屏幕(在t2时刻),游戏结束。你的反应时间就是天t2-t1。

     游戏逻辑:

       

    游戏逻辑非常easy,如上图所看到的。

    一共同拥有五个界面,其有用五张图片就能够取代

    主要代码:

    var MainLayer = cc.LayerColor.extend({
    	init:function()
    	{
    		//初始化界面
    		 //0:点击開始界面 1:表示等待界面,2:表示在点击界面 3:结果界面 4:Too soon界面
    		this.flag = 0;
    		this._super();
    		this.size = cc.Director.getInstance().getWinSize();
    		this.setColor(cc.c4(180,170,160,255));
    		this.showToStart();
    		
    		//可触摸
    		this.setTouchEnabled(true);
    	},
    
    	/////////////////////////////////////////////////
    	//处理触摸事件
    	/////////////////////////////////////////////////
    	onTouchesEnded:function(touches,event)
    	{
    
    	},
    	onTouchesBegan:function(touches,event)
    	{
    		cc.log("onTouchsBegan",this.flag);
    		switch(this.flag)
    		{
    			case 0:this.showWaite();break;
    			case 1:this.showToSoon();break;
    			case 2:this.showResult();break;
    			case 3:this.showWaite();break;
    			case 4:this.showWaite();break;
    		}
    
    	},
    	//显示点击開始界面
    	showToStart:function()
    	{
    		this.sprite = cc.Sprite.create(s_ClickToStart);
    		this.sprite.setPosition(this.size.width/2,this.size.height/2);
    		this.addChild(this.sprite,1);
    		this.flag = 0;
    		
    	},
    
    	//显示等待界面
    	showWaite:function()
    	{
    		cc.log("showWaite");
    		this.removeAllChildren();//清除全部控件
    		this.unscheduleAllCallbacks();//清除定时器
    		this.sprite = cc.Sprite.create(s_WaiteForGreen);
    		this.sprite.setPosition(this.size.width/2,this.size.height/2);
    		this.addChild(this.sprite,1);
    		this.anim = cc.Sprite.create(s_WaiteForGreenAnim)
    		this.anim.setPosition(this.size.width/2,this.size.height/2+200);
    		this.addChild(this.anim,1);
    		var action = cc.Sequence.create(cc.FadeOut.create(1.0),cc.FadeIn.create(1.0));
    		var rep = cc.RepeatForever.create(action);
    		this.anim.runAction(rep);
    		this.flag = 1;
    		//输出1-10的随机数
    		randomTime = Math.floor(Math.random()*10+1);
    		this.schedule(this.showGreen,randomTime,1,0); //加入定时器
    		cc.log("randomTime",randomTime);
    	},
    	//显示点击的页面
    	showGreen:function()
    	{
    		cc.log("showGreen");
    		this.sprite = cc.Sprite.create(s_Click);
    		this.sprite.setPosition(this.size.width/2,this.size.height/2);
    		this.addChild(this.sprite,1);
    		this.flag = 2;
    		this.date1 = new Date();//颜色变化后。记录一个时间
    	},
    
    	showToSoon:function()
    	{
    		cc.log("showToSoon");
    		this.unscheduleAllCallbacks();
    		this.sprite = cc.Sprite.create(s_TooSoon);
    		this.sprite.setPosition(this.size.width/2,this.size.height/2);
    		this.addChild(this.sprite,1);
    		this.flag = 3;
    	},
    	//显示结果界面
    	showResult:function()
    	{
    		this.unscheduleAllCallbacks();
    		this.date2 = new Date();//记录点击时间
    		time = this.date2.getTime() - this.date1.getTime();
    		this.sprite = cc.Sprite.create(s_Result);
    		this.sprite.setPosition(this.size.width/2,this.size.height/2);
    		this.addChild(this.sprite,1);
    		cc.log("showResult",time);
    		this.timeLabel = cc.LabelTTF.create(time+"ms","Arial",70);
    		this.timeLabel.setColor(255,255,255);
    		this.timeLabel.setPosition(this.size.width/2,this.size.height/2)
    		this.addChild(this.timeLabel,1);
    		this.flag = 4;
    	}
    });
    
    ///////////////////////////////////////////////////
    var MainScene = cc.Scene.extend({
    	onEnter:function(){
    		this._super();
    		var layer = new MainLayer();
    		layer.init()
    		this.addChild(layer);
    	}
    });



  • 相关阅读:
    Infopath Notify 弹出提示信息
    window.showModalDialog 返回值
    【转】获得正文内容中的所有img标签的图片路径
    Json Datable Convert
    Sharepoint 列表 附件 小功能
    Surgey 权限更改
    SQL 触发器用于IP记录转换
    Caml语句 查询分配给当前用户及当前组
    jquery 1.3.2 auto referenced when new web application in VSTS2010(DEV10)
    TFS diff/merge configuration
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/5137497.html
Copyright © 2011-2022 走看看