使用了封装了canvas的create.js库来实现的。

最终效果:

工程:

Rect.js

/** 方块类*/

functionRect(n,color,specialColor){

createjs.Shape.call(this);/**

* 设置方块的类型*/

this.setRectType=function(type){this._RectType=type;switch(type){case 1:this.setColor(color);break;case 2:this.setColor(specialColor);break;

}

}/**

* 获取方块的类型*/

this.getRectType=function(){return this._RectType;

}/**

* 设置方块的颜色+绘制方块*/

this.setColor=function(colorString){this.graphics.beginFill(colorString);this.graphics.drawRect(0,0,400/n-5,400/n-5);this.graphics.endFill();

}//方块的默认类型是1

this.setRectType(1);

}

Rect.prototype=new createjs.Shape();

seeColor.js

/**

* 绘制舞台*/

var stage=new createjs.Stage("gameView");var gameView=newcreatejs.Container();

stage.addChild(gameView);//var s=new createjs.Shape();//s.graphics.beginFill("#00FF00");//s.graphics.drawRect(0,0,100,100);//s.graphics.endFill();

//gameView.addChild(s);

createjs.Ticker.setFPS(30);

createjs.Ticker.addEventListener("tick",stage);//特殊的那个方块的容差

var diffDegree=30;//n*n的矩阵

var n=2;var maxN=7;//在随机生成颜色的时候[0,500] [500,255*255*255]这两个区间内的颜色将被排除

var edgeColor=10;functionaddRect(){//随机颜色

var randR=Math.floor(Math.random()*255-edgeColor*2)+edgeColor;var randG=Math.floor(Math.random()*255-edgeColor*2)+edgeColor;var randB=Math.floor(Math.random()*255-edgeColor*2)+edgeColor;//特殊方块的颜色

var specialR=randR-diffDegree>edgeColor?randR-diffDegree:randR+diffDegree;var specialG=randG-diffDegree>edgeColor?randG-diffDegree:randG+diffDegree;var specialB=randB-diffDegree>edgeColor?randB-diffDegree:randB+diffDegree;var color="rgb("+randR+","+randG+","+randB+")";var specialColor="rgb("+specialR+","+specialG+","+specialB+")";//特殊方块的位置

var specialX=Math.floor(Math.random()*n);var specialY=Math.floor(Math.random()*n);//绘制所有方块

for(var indexX=0;indexX

gameView.addChild(r);

r.x=indexX;

r.y=indexY;if(r.x==specialX && r.y==specialY){

r.setRectType(2);

}

r.x=indexX*(400/n);

r.y=indexY*(400/n);

if(r.getRectType()==2){//点到特殊方块的时候重绘

r.addEventListener("click",function(){if(n

}

gameView.removeAllChildren();

addRect();

});

}

}

}

}

addRect();

index.html

See Color

参考资料:

create.js

mm游戏大全HTML5小游戏,HTML5小游戏——看你有多色(示例代码)相关推荐

  1. 微信小程序实现直播间点赞飘心效果的示例代码

    微信小程序实现直播间点赞飘心效果的示例代码 https://blog.csdn.net/qappleh/article/details/83865874

  2. html5赛车小游戏,H5赛车游戏大全_h5赛车小游戏大全_好玩的赛车h5游戏_爱手游网...

    街头赛车比赛,体验不一样的赛车刺激感.游戏中,玩家通过适时踩下油门来获取前进的动力.提前到达终点打败对手,即可获得丰富的金币奖励.通过这些金币玩家可以购置新车和升级赛车装备,听着是不是已经欲罢不能也想 ...

  3. java编写数字游戏大全_Java编写猜数字小游戏

    本文实例讲述了java实现的简单猜数字游戏代码.分享给大家供大家参考. 以下是java语言写的一个猜数字小游戏引用片段: import java.text.simpledateformat; impo ...

  4. unity java游戏大全_3D unity   滚球小游戏

    3D unity 滚球小游戏 1.打开unity,创建一个新的项目(或在已创建的项目里创建一个新的场景). 2.制作平台 创建一个Plane和四个cube模型,附上相应的材质,调整大小和位置,形成一个 ...

  5. python迷宫小游戏大全_C课程设计迷宫小游戏

    DOC 格式 . 温馨提示 程序语言: C . C++ . C# . Python ( 红色字体 表示本课设使用的 程序设计语言 ) 图形功能选项: Win32 控制台程序 (黑框. 文本界面) . ...

  6. php微信地图定位导航,微信小程序实现定位及到指定位置导航的示例代码

    一:实现定位及到指定位置导航所需组件及API 1:组件:map(地图组件) 2:API:wx.getLocation(Object object)(获取当前的地理位置.速度),wx.openLocat ...

  7. html5 图片横向滑动效果,JS实现图片横向滚动效果示例代码

    图片横向滚动代码 .box{ margin:0 auto; height:70px; width:810px; padding:10px; border:1px solid #FF0000; } .b ...

  8. 姓名大全 导入mysql_根据项目类型导入Excel文件到不同数据库(示例代码)

    前提:如果您要针对不同的业务做数据导入,可以参考下这个项目,这个项目的原理就是根据文件名进行区分,然后导入不同的数据表.下面我就写个Demo演示下: 学生表 -- 主键,学生姓名,学生年龄,学校归属 ...

  9. 基于HTML5canvars的小游戏,利用HTML5实现Canvas激流勇进小游戏代码

    特效描述:利用HTML5实现 Canvas 激流勇进 小游戏代码.利用HTML5实现Canvas激流勇进小游戏代码 代码结构 1. 引入JS 2. HTML代码 进入游戏 游戏玩法:使用左键.右键和上 ...

  10. HTML5青蛙吃苍蝇小游戏代码

    简介: HTML5青蛙吃苍蝇小游戏,自适应分辨率,兼容pc端和移动端,背景音乐开启关闭功能 白天和晚上两种游戏背景,直接上传空间目录即可! 网盘下载地址: http://kekewangLuo.cc/ ...

最新文章

  1. 刚刚、几秒前,时间格式化函数
  2. linux 卸载模块命令,Linux中module模块的编译、加载、卸载
  3. OAuth2 服务器Keycloak中的Realm
  4. python绘制正态分布曲线
  5. day002--python编程的相关软件,变量
  6. python什么是数据结构_Python中最有效的图形数据结构是什么?
  7. 为什么家里电信宽带不能用路由器了?要怎么解决?
  8. JAVA实时运算_Java 实时运算簿页面
  9. [SQL]LeetCode180. 连续出现的数字 | Consecutive Numbers
  10. iMX6QD How to Add 24-bit LVDS Support in Android
  11. Kafka从上手到实践 - Kafka集群:配置Broker | 凌云时刻
  12. c4d渲染测试软件,C4D常用的4大主流渲染器
  13. 改led背光有光斑_为什么把车灯改成LED,效果还不如卤素?
  14. CodeForces 1418C Mortal Kombat Tower
  15. Leetcode——第108题
  16. TMS320F28034PNT 德州TI 具有 60MHz 频率、128KB 闪存的 C2000™ 32 位 MCU
  17. 既想吸猫又不想当猫奴?这款治愈系的机器人或许会适合你
  18. linux开启redis端口的防火墙
  19. 为你解析--音视频会议系统
  20. AUC/ROC:面试中80%都会问的知识点

热门文章

  1. 基于eclipse的俄罗斯方块游戏
  2. ROS 入门基础(四)自定义话题, publisher和Subscriber
  3. 2020-12-20
  4. BZOJ 3351 ioi2009 Regions
  5. (转)50本书总结的50句话
  6. 电脑分区后,电脑提醒没有权限在此位置保存文件怎么办?
  7. 树梅派应用38:树莓派 SAKS 扩展板挑战应用 之 PM2.5 指示灯
  8. 《Visual Basic.Net 循序渐进》阅读器说明
  9. java培训老师面试题_千锋Java培训老师分享Java实习生面试题
  10. HDOJ--1162--Eddy's picture