增加猜拳次数及猜拳按钮

//初始化引擎组件
init(50, "div_caiquan", 800, 400, main); //定义游戏层,加载进度层、游戏背景层,结果显示层,出拳操作层
var loadingLayer, backLayer, resultLayer, clickLayer; //定义游戏图片
//定义图片资源加载完成后返回的图片对象
var imglist = {};
//定义图片资源数组
var imgData = new Array( { name: "title", path: "../images/title.png" },
{ name: "shitou", path: "../images/shitou.png" },
{ name: "jiandao", path: "../images/jiandao.png" },
{ name: "bu", path: "../images/bu.png" } );
//定义自己出拳图片,电脑出拳图片
var selfBitMap, enemyBitMap; //定义出拳图片数组
var showList = new Array(); //定义结果显示文字信息 //猜拳次数,胜利次数,失败次数,平局次数文本框
var selfTextAll, selfTextWin, selfTextLoss, selfTextDraw; //胜利次数,失败次数,平局次数初始值
var win = 0, loss = 0, draw = 0; //回调函数
function main() { //创建背景层
backLayer = new LSprite(); //将背景层添加到画布
addChild(backLayer); //创建加载进度层
loadingLayer = new LoadingSample3(); //将加载进度层添加到背景层
backLayer.addChild(loadingLayer); //loadingLayer.setProgress(35); //加载图片资源
LLoadManage.load(
//图片数据数组
imgData,
function (progress) {
//显示加载进度
loadingLayer.setProgress(progress);
},
function (result) { //加载完成
//result可以认为是一个map,资源列表中的资源可以按键获取
imglist = result;
//移除加载进度层
backLayer.removeChild(loadingLayer);
loadingLayer = null;
//游戏初始化
gameInit();
}
);
}; //游戏初始化
function gameInit() { //game begin //构造出拳图片数组
showList.push(new LBitmapData(imglist["shitou"]));
showList.push(new LBitmapData(imglist["jiandao"]));
showList.push(new LBitmapData(imglist["bu"])); //绘制游戏界面背景
backLayer.graphics.drawRect(10, "#008800", [0, 0, LGlobal.width, LGlobal.height], true, "#000000"); //显示游戏标题
var titleBitmap = new LBitmap(new LBitmapData(imglist["title"]));
titleBitmap.x = (LGlobal.width - titleBitmap.width) / 2;
titleBitmap.y = 10;
backLayer.addChild(titleBitmap); //显示玩家出拳图片
selfBitMap = new LBitmap(showList[0]);
selfBitMap.x = 400 - selfBitMap.width - 50;
selfBitMap.y = 130;
backLayer.addChild(selfBitMap); //显示电脑出拳图片
enemyBitMap = new LBitmap(showList[0]);
enemyBitMap.x = 400 + 50;
enemyBitMap.y = 130;
backLayer.addChild(enemyBitMap); //玩家电脑名称设定
var nameText;
nameText = new LTextField();
nameText.text = "玩家";
nameText.weight = "bolder";
nameText.color = "#ffffff";
nameText.size = 24;
nameText.x = selfBitMap.x + (selfBitMap.width - nameText.getWidth()) / 2;
nameText.y = 95;
backLayer.addChild(nameText); nameText = new LTextField();
nameText.text = "电脑";
nameText.weight = "bolder";
nameText.color = "#ffffff";
nameText.size = 24;
nameText.x = enemyBitMap.x + (enemyBitMap.width - nameText.getWidth()) / 2;
nameText.y = 95;
backLayer.addChild(nameText); //结果显示层初始化
initResultLayer(); //操作层初始化
initClickLayer(); }; function initResultLayer() { //创建结果显示层对象
resultLayer = new LSprite(); //绘制结果显示层,使用Sprite的graphic绘图
resultLayer.graphics.drawRect(4, '#ff8800', [0, 0, 150, 110], true, '#ffffff'); //设置结果显示层位置
resultLayer.x = 10;
resultLayer.y = 100; //添加到游戏背景层
backLayer.addChild(resultLayer); //显示猜拳次数
selfTextAll = new LTextField();
selfTextAll.text = "猜拳次数 : 0";
selfTextAll.weight = "bolder";
selfTextAll.x = 10;
selfTextAll.y = 20;
resultLayer.addChild(selfTextAll); //显示胜利次数
selfTextWin = new LTextField();
selfTextWin.text = "胜利次数 : 0";
selfTextWin.weight = "bolder";
selfTextWin.x = 10;
selfTextWin.y = 40;
resultLayer.addChild(selfTextWin); //显示失败次数
selfTextLoss = new LTextField();
selfTextLoss.text = "失败次数 : 0";
selfTextLoss.weight = "bolder";
selfTextLoss.x = 10;
selfTextLoss.y = 60;
resultLayer.addChild(selfTextLoss); //显示平局次数
selfTextDraw = new LTextField();
selfTextDraw.text = "平局次数 : 0";
selfTextDraw.weight = "bolder";
selfTextDraw.x = 10;
selfTextDraw.y = 80;
resultLayer.addChild(selfTextDraw); }; function initClickLayer() { //创建操作层对象
clickLayer = new LSprite(); //绘制操作层,使用Sprite的graphic绘图
clickLayer.graphics.drawRect(4, '#ff8800', [0, 0, 300, 110], true, '#ffffff'); //设置操作层显示坐标
clickLayer.x = 250;
clickLayer.y = 275; //添加到游戏背景层
addChild(clickLayer); //添加“请出拳”文本
var msgText = new LTextField();
msgText.text = "请出拳:";
msgText.weight = "bolder";
msgText.x = 10;
msgText.y = 10;
clickLayer.addChild(msgText); //添加出拳按钮
var btnShitou = getButton("shitou");
btnShitou.x = 30;
btnShitou.y = 35;
clickLayer.addChild(btnShitou); var btnJiandao = getButton("jiandao");
btnJiandao.x = 115;
btnJiandao.y = 35;
clickLayer.addChild(btnJiandao); var btnBu = getButton("bu");
btnBu.x = 200;
btnBu.y = 35;
clickLayer.addChild(btnBu); }; //构造猜拳按钮
function getButton(value) { //LButton类来添加一个按钮,LButton ( upState , overState ,downState ,disableState ) ( 弹起状态,经过状态,按下状态,不可用状态) //LButton 弹起状态
var btnUp = new LBitmap(new LBitmapData(imglist[value]));
//表示从注册点开始应用的对象的水平缩放比例(百分比)。默认注册点为 (0,0)。1.0 等于 100% 缩放。
btnUp.scaleX = 0.5;
btnUp.scaleY = 0.5; //LButton 经过状态
var btnOver = new LBitmap(new LBitmapData(imglist[value]));
//表示从注册点开始应用的对象的水平缩放比例(百分比)。默认注册点为 (0,0)。1.0 等于 100% 缩放。
btnOver.scaleX = 0.5;
btnOver.scaleY = 0.5;
btnOver.x = 2;
btnOver.y = 2; //构造LButton
var btn = new LButton(btnUp, btnOver); btn.name = value; return btn; };

finger-guessing game:3增加猜拳次数及猜拳按钮显示的更多相关文章

  1. python统计apache、nginx访问日志IP访问次数并且排序(显示前20条)【转】

    前言:python统计apache.nginx访问日志IP访问次数并且排序(显示前20条).其实用awk+sort等命令可以实现,用awk数组也可以实现,这里只是用python尝试下.   apach ...

  2. 为dedecms文章列表页标题增加序号,第二页开始才显示第x页

    想必大伙建站都会写文章,随着时间的推移,你的智慧结晶会越来越多,一般的建站程序早帮你想好了,把这些文章做成一个列表,比如dedecms栏目列表,便于观众浏览,但有个问题就是dedecms文章列表页标题 ...

  3. 为 Editor.md 编辑器插件增加预览和发布按钮

    前言 一直在使用 Editor.md 插件作为博客的编辑器,用着挺好,但是在全屏下编辑时,每次想预览或者保存又必须切换到非全屏状态下才可以点击按钮,用着不舒服,所以花了一点时间在工具栏上增加了预览.保 ...

  4. 为datagrid、treegrid增加右键表头菜单,用于显示或隐藏列,注意:冻结列不在此菜单中

    var createGridHeaderContextMenu = function(e, field) { e.preventDefault(); var grid = $(this);/* gri ...

  5. 文件上传前端操作-增加文件与删除文件按钮(jquery实现)

    初始 删除与添加 <!DOCTYPE html> <html> <head> <title></title> <meta charse ...

  6. PCL点云配准(2)

    (1)正态分布变换进行配准(normal Distributions Transform) 介绍关于如何使用正态分布算法来确定两个大型点云之间的刚体变换,正态分布变换算法是一个配准算法,它应用于三维点 ...

  7. 【第三章】Shell 变量的数值计算

    一.算数运算符 shell中常见的算术运算符: shell中常见的算术命令: 1. 整数运算 方法一:expr  expr命令就既可以用于整数运算,也可以用于相关字符串长度.匹配等的运算处理: exp ...

  8. Linux下的Finger指令

    Linux finger命令 Linux finger命令可以让使用者查询一些其他使用者的资料.会列出来的资料有: Login Name User Name Home directory Shell ...

  9. 可在广域网部署运行的QQ高仿版 -- GG叽叽V3.4,增加系统设置、最近联系人、群功能(源码)

    自从上次版本(GG叽叽V3.2,增加离线消息.离线文件功能)发布后,我个人觉得主要的大功能都实现得差不多了,接下来的几个版本将不断优化GG的细节,提高其可用性.这次版本更新的内容主要是为GG增加了系统 ...

随机推荐

  1. Linux内存管理 【转】

    转自:http://blog.chinaunix.net/uid-25909619-id-4491368.html Linux内存管理 摘要:本章首先以应用程序开发者的角度审视Linux的进程内存管理 ...

  2. zabbix 3.2.2 server端(源码包)安装部署 (一)【转】

    环境准备: 操作系统 CentOS 6.8 2.6.32-642.11.1.el6.x86_64 zabbix server 172.16.10.150 zabbix agent 172.16.10. ...

  3. apache显示目录文件列表

    在apache服务器下访问一个目录,如果没有index.html/index.php,则会报错. 为了访问文件夹: 1. 在 /var/www/html 目录下新建 /d/ mkdir d 2.  t ...

  4. Batch Normalization 与 Caffe中的 相关layer

    在机器学习领域,通常假设训练数据与测试数据是同分布的,BatchNorm的作用就是深度神经网络训练过程中, 使得每层神经网络的输入保持同分布. 原因:随着深度神经网络层数的增加,训练越来越困难,收敛越 ...

  5. linux下cpu物理个数、多核、超线程判断解析

    在Linux体系中,供给了proc文件体系显示体系的软硬件信息.若是想懂得体系中CPU的供给商和相干设备信息,则可以经由过程/proc/cpuinfo文件获得.本文章针对该文件进行简单的总结. 基于指 ...

  6. 【论文阅读】HydraPlus-Net: Attentive Deep Features for Pedestrian Analysis

    转载请注明出处:https://www.cnblogs.com/White-xzx/ 原文地址:https://arxiv.org/abs/1709.09930 Github: https://git ...

  7. T-SQL语句3

    一.删除表 1.drop table语句 drop table database_name,schema_name,table_name 2.删除数据表 drop table dbo.t_delete ...

  8. Serilog 记录日志

    Serilog 记录日志 Serilog是.net里面非常不错的记录日志的库,另外一个我认为比较好的Log库是NLog. 在我个人的asp.net web api 2 基础框架(Github地址)里, ...

  9. 023 Hadoop的生态系统

    1.数据来源 RDBM:sqoop 日志文件:flume 2.zookeeper 多台机器保持同步数据. 3.hive sql语句的查询 HQL转换成mapreduce SQL On Hadoop 4 ...

  10. 浅谈2-SAT(待续)

    2-SAT问题,其实是一个逻辑互斥问题.做了两道裸题之后仔细想来,和小时候做过的“有两个女生,如果A是女生,那么B一定不是女生.A和C性别相同,求A.B.C三人的性别.”几乎是一样的. 对于这道题我们 ...