游戏玩法:点击開始游戏。等待一个随机时间。然后背景颜色会变(在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);
}
});

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWxvc3Rlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaWxvc3Rlcg==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

最新文章

  1. Win7配置Go环境
  2. IOS项目删除Git
  3. length prototype 函数function的属性,以及构造函数
  4. JZ2440开发笔记(5)——通过按键点亮LED
  5. [Android] AudioTrack::start
  6. 详解Java反射各种应用
  7. ubuntu mysql编码设置5.5以后
  8. OC字符串的常用方法
  9. sharepoint 自定义字段实现省市联动
  10. Java IO(2)阻塞式输入输出(BIO)的字节流与字符流
  11. Android群英传笔记——第七章:Android动画机制和使用技巧
  12. 004dayPython学习输入并输出用户名和密码
  13. 【tomcat】Web环境(tomcat)下新增一个访问路径(虚拟路径)
  14. Page13:跟踪问题、最优控制[Linear System Theory]
  15. 数据库——MySQL及安装
  16. Can't find kernel text map area from kcore
  17. Codefores 1151E Number of Components
  18. 超级简单!80行代码实现Google日历(拖放、移动、AJAX)
  19. 20145313Java第五次实验
  20. python学习,day1作业:设计一个三级菜单

热门文章

  1. Aizu - 2564 Tree Reconstruction 并查集
  2. JavaScript 与Document
  3. MVC:一个View显示多个Model(多个Model你可以使用ViewBag或ViewData , 或者:Model["myInfo"] as)
  4. RMQ算法 以及UVA 11235 Frequent Values(RMQ)
  5. 联想M4600 (110主板),安装正版win7 ,进入桌面后鼠标无法使用
  6. Laravel 框架指定路由关闭 csrf
  7. Felx之菜单导航
  8. C#实现窗口拖动时各个控件同比自己主动放缩大小
  9. Toeplitz matrix 与 Circulant matrix
  10. Android Studio 中 gradle 构建 堆栈空间不足