【实例简介】

【实例截图】

【核心代码】

骰子游戏

body{ text-align:center;}

#can{ border:1px solid black;}

//定时器变量

var tidck =null;

//存放图片的容器

var can;

//画布

var ctx;

//骰子每次的点数的数组

var SumArray = [];

//摇骰子点数的总次数

//var sum = 0;

//每次骰子点数的和

var ranSum = 0;

//骰子变化次数

var count = 0;

//圆点的坐标

var pointCoordinates = [[20,20],[[10,10],[30,30]],[[10,10],[20,20],[30,30]],[[10,10],[10,30],[30,10],[30,30]],[[10,10],[10,30],[20,20],[30,10],[30,30]],[[10,10],[10,20],[10,30],[30,10],[30,20],[30,30]]];

//骰子的坐标

var diceCoordinates = [[40,10],[120,10],[180,10],[250,10],[330,10],[400,10]];/**/

window.onload = function(){

can = document.getElementById('can');

ctx = can.getContext("2d");

/*初始化骰子*/

/*ctx.clearRect(0,0,can.width,can.height);

for(var i=0;i

ctx.fillStyle = 'orange';

ctx.fillRect(diceCoordinates[i][0],diceCoordinates[i][1],40,40);

draw(diceCoordinates[i],i,pointCoordinates[i]);

}*/

loadCoordinates();

/*初始化骰子*/

document.getElementById('btnStart').onclick = function(){

//alert(SumArray.length);

if(SumArray.length<=8){

//sum ;

count = 0;

tidck = setInterval(drawCoordinates,100);

}

else{

if(config("摇骰子的次数不能大于8次,是否清空重新摇骰子?")){

//sum = 0;

count = 0;

SumArray.splice(0,SumArray.length);

loadCoordinates();

tidck = setInterval(drawCoordinates,100);

}

}

};

}

//初始化骰子

function loadCoordinates(){

ctx.clearRect(0,0,can.width,can.height);

for(var i=0;i

ctx.fillStyle = 'orange';

ctx.fillRect(diceCoordinates[i][0],diceCoordinates[i][1],40,40);

draw(diceCoordinates[i],i,pointCoordinates[i]);

}

}

//开始摇骰子

function drawCoordinates()

{

//执行一定次数后放慢速度(使用修改定时执行的时间来达到效果)

if(count == 30){

//清除定时执行

window.clearInterval(tidck);

//给定时执行赋新的时间

tidck = setInterval(drawCoordinates,200);

}

else if(count == 45){

window.clearInterval(tidck);

tidck = setInterval(drawCoordinates,500);

}

else if(count == 48){

window.clearInterval(tidck);

tidck = setInterval(drawCoordinates,800);

}

else if(count >= 50){

window.clearInterval(tidck);

//alert("摇骰子完成");

//将每次的值放进数组

SumArray.push(ranSum);

drawText(ranSum);

}

else{

//每次的时候先把上一次的点数清零

ranSum = 0;

//清理画布

ctx.clearRect(0,0,can.width,60);

for(var i=0;i

//画笔颜色

ctx.fillStyle = 'orange';

//画正方形

ctx.fillRect(diceCoordinates[i][0],diceCoordinates[i][1],40,40);

//获取随机数

var ran = Math.floor(Math.random()*6);

ranSum =ran 1;

draw(diceCoordinates[i],ran,pointCoordinates[ran]);/**/

}

}

count ;

}

//画骰子的点

function draw(dice,ran,drowArray){

ctx.fillStyle = 'red';

for(var i = 0;i<=ran;i ){

var array = drowArray[i];

ctx.beginPath();

if(ran==0)

{

//alert(drowArray[0]);

ctx.arc(drowArray[0] dice[0],drowArray[1] dice[1],5,0,Math.PI*2,true);

}

else

{

ctx.arc(array[0] dice[0],array[1] dice[1],5,0,Math.PI*2,true);

}

ctx.closePath();

ctx.fill();

}

}

function drawText(ranSum){

ctx.font="30px Verdana";

ctx.fillText("第" (SumArray.length) "次摇的点数是:" SumArray[SumArray.length-1] " " (SumArray[SumArray.length-1]>18?"大":"小"),40,90 40*(SumArray.length-1));

}

php摇骰子源码,HTML5 掷骰子游戏 源码下载相关推荐

  1. 枪战游戏html源码,html5西部牛仔枪战游戏源码

    压缩包内容概览: html5西部牛仔枪战游戏源码-H53dGAME ; 地图集 ; 旗帜 ; 羽毛灯.MIN ; 字体 ; 图标256 ; 图片 ; 索引 ; 模型 ; 声音 ; 菜单 ; 戏剧 ; ...

  2. 哪吒喂养召唤游记c2c源码- 宠物养成类社交游戏源码

    源码说明 哪吒喂养召唤游记投资源码- 宠物养成类社交游戏源码 测试使用 apache2.4 php7.3 mysql5.6 redis 数据库修改文件 application/datebase.php ...

  3. rts游戏服务器源码,unity即时战略游戏源码Real-time strategy (RTS) game kit

    unity即时战略游戏源码Real-time strategy (RTS) game kit (Modern Tactics) 1.2.1 Requires Unity 4.5.2 or    hig ...

  4. 小游戏|小游戏源码平台、小游戏源码网站有哪些?

    小游戏是近几年非常流行的游戏之一,这类游戏操作简单,不用下载专用app,重要还能投放广告,甚至可以根据自己的品牌设计专属游戏,是一种新兴的市场营销手段,营销效果不仅比传统营销方式效果好,还较大限度节约 ...

  5. vb用计算机模拟掷骰子游戏,VB随机 掷骰子示例源码

    [实例简介] [实例截图] [核心代码] VERSION 5.00 Begin VB.Form Form1 Caption = "掷骰子" ClientHeight = 3090 ...

  6. HTML5跑酷网页游戏源码

    介绍: HTML5跑酷网页游戏,按空格键上下左右控制跳跃 网盘下载地址: http://kekewangLuo.net/tzGmMF9q6Fg0 图片:

  7. 开源小游戏app源码和H5小游戏源码大全

    从技术上讲,微信小程序游戏框架在小程序框架中加入了程序游戏库API.因此,小程序游戏只能在小程序环境下运行,既不是原生程序游戏也不是HTML5程序游戏.也就是说,小程序游戏与HTML5程序游戏紧密相关 ...

  8. 最新小程序源码(微信/抖音小程序源码和小程序游戏源码开发)

    本文将利用小程序游戏提供的能力制作一个简单的方块旋转小程序游戏,旨在从零开始介绍小程序游戏的开发过程. 注册小程序游戏账号 进入小程序注册页面按照指引填写信息并提交相应信息,服务类别选择"程 ...

  9. python十点半游戏代码_十点半源码|十点半棋游戏源码

    游戏规则 提示:庄家赢 pai,无论是什么 pai型都不翻倍,只有闲家赢 pai才针对 pai型进行加倍 底注:比赛前确认基本源码下载的数额 十点半 十点半 庄家:选定一个玩家为庄家,其他玩家都为闲家 ...

  10. HTML5捕鱼php,html5捕鱼达人 游戏源码

    [实例简介] [实例截图] [核心代码] (function(){ var Game=window.Game=Class.extend({ init:function(id,resourseUrl){ ...

最新文章

  1. python3.7官网中文官网_通用操作系统服务
  2. 用html做qq会员页面导航,untitledQQ会员页面导航3.html
  3. 字典 dictionary c# 0104
  4. 杭州趣链张帅:区块链应用落地,融合产业高速发展
  5. MySQL查询语句执行过程及性能优化-基本概念和EXPLAIN语句简介
  6. HDU 4946 Area of Mushroom(2014 Multi-University Training Contest 8)
  7. MySQL存储过程定时任务
  8. 不做生活上的“富察皇后”,Soul星球遇见真实的灵魂
  9. 服务器ssd硬盘格式化,ssd固态硬盘格式化教程
  10. 联想A790E的root方法
  11. 关于Kubernetes中的节点优雅关闭 - Graceful node shutdown
  12. mysql ndb集群_MySQL集群 NDB 7.5介绍
  13. 360 私有云平台 MySQL 自动化实现剖析
  14. 阿里云服务器如何初始化云盘(跟换系统)?初始化云盘和跟换操作系统的区别?
  15. 评职称计算机应用能力考核有分吗,苏州评工程师所要求的职称计算机应用能力考核问题有哪些?...
  16. 酷科技 | 智能戒指 ——将科技武装到手指
  17. 项目 3: 创建用户分类
  18. 关于 .NET Core(.NET Core 指南)
  19. STM32驱动W5500动态分配IP
  20. 云知梦BootStrap重入门到精通项目实战 BootStrap基础教程 共14课

热门文章

  1. 测试用例设计方法——黑盒测试和白盒测试
  2. 信息化项目软件运维费用都有哪些构成?
  3. 基于51单片机的智能温控风扇设计
  4. postman虚拟服务器教程,postman安装与使用教程
  5. 【渝粤教育】电大中专电商运营实操 作业 题库
  6. MRI脑影像分析从哲学到技术:一文搞懂VBM预处理基本原理(全网最详细解析)
  7. 想要一款iOS矢量绘图编程软件?推荐来了
  8. 17-什么是资源服务器
  9. 移动端车牌识别SDK应用
  10. Linux指令——tailf