cocos2d-x之猜数字游戏
bool HelloWorld::init()
{
if ( !Layer::init() )
{
return false;
}
visibleSize = Director::getInstance()->getVisibleSize();
Vec2 origin = Director::getInstance()->getVisibleOrigin();
srand(time(NULL));//随机种子
theRandomNum=rand()%100;//0~100之间
log("the randnum is %d",theRandomNum);
buildUI();
addListeners();
return true;
}
void HelloWorld::buildUI(){
auto label=Label::create();
label->setString("Please input a number between 0~100");
addChild(label);
label->setPosition(visibleSize.width/2,visibleSize.height-label->getContentSize().height/2-20);
tf=TextFieldTTF::textFieldWithPlaceHolder("Input number here","Courier",16);
tf->setPosition(visibleSize.width/2,label->getPositionY()-50);
addChild(tf);
submitBtn=Label::create();
submitBtn->setPosition(visibleSize.width/2,tf->getPositionY()-50);
submitBtn->setString("Submit");
addChild(submitBtn);
messageLabel=Label::create();
messageLabel->setPosition(visibleSize.width/2,submitBtn->getPositionY()-50);
addChild(messageLabel);
}
void HelloWorld::addListeners(){
auto director=Director::getInstance();
auto handle=[this](Touch* t,Event* e){
auto target=e->getCurrentTarget();
auto point=t->getLocation();
if (target->getBoundingBox().containsPoint(point)) {
if (target==tf) {
tf->attachWithIME();
}else if (target==submitBtn){
tf->detachWithIME();
int inputValue=__String::create(tf->getString())->intValue();
if (inputValue>theRandomNum) {
messageLabel->setString("input value is bigger");
}else if (inputValue<theRandomNum){
messageLabel->setString("input value is smaller");
}else{
messageLabel->setString("you get it");
}
}
}else{
tf->detachWithIME();
}
// if (e->getCurrentTarget()==tf) {
// tf->attachWithIME();
// }else if (e->getCurrentTarget()==submitBtn){
//
// }else{
// tf->detachWithIME();
// }
return false;
};
auto l=EventListenerTouchOneByOne::create();
l->onTouchBegan=handle;
director->getEventDispatcher()->addEventListenerWithSceneGraphPriority(l,tf);
auto submitBtnClickListener=EventListenerTouchOneByOne::create();
submitBtnClickListener->onTouchBegan=handle;
director->getEventDispatcher()->addEventListenerWithSceneGraphPriority(submitBtnClickListener,submitBtn);
}
转载于:https://www.cnblogs.com/daochong/p/5261187.html
cocos2d-x之猜数字游戏相关推荐
- C语言经典小游戏---猜数字游戏 (包含C语言中如何实现随机数的生成)
题目描述:输入1-100之间的数字,进行猜数字游戏,猜大猜小有提示,直至才对为止,游戏可以重复游玩. 算法思路: 1.用void函数分别写出菜单程序与游戏进程程序. 2.用switch-case-de ...
- 例题3-4 猜数字游戏的提示(Master-Mind Hints, UVa 340)
实现一个经典"猜数字"游戏.给定答案序列和用户猜的序列,统计有多少数字位置正确 (A),有多少数字在两个序列都出现过但位置不对(B). 输入包含多组数据.每组输入第一行为序列长度n ...
- c语言猜数字游戏用while,【C语言基础】有趣的猜数字游戏。(while循环,if语句,switch语句)...
要求:猜数字游戏的实现.代码如下:#include #include #include void menu() { printf("***************************** ...
- python猜年龄代码_python入门教程NO.7用python来写一个猜数字游戏
python入门教程 本文涉及的python基础语法为while循环 #python#3中while语句常常被用于循环执行某个程序,任何非0和非空null的值,都会被条件判断为True while 条 ...
- Go-实现猜数字游戏代码
实现猜数字游戏代码 1 package main 2 3 import ( 4 "fmt" 5 "math/rand" 6 "time" 7 ...
- python猜数字游戏简单-python猜数字游戏快速求解解决方案
python猜数字游戏快速求解解决方案.使用方法: 1. 保存代码为guessall.py 2. 执行python guessall.py > result.txt 3. 打开result.tx ...
- python游戏最简单代码-如何利用Python开发一个简单的猜数字游戏
前言 本文介绍如何使用Python制作一个简单的猜数字游戏. 游戏规则 玩家将猜测一个数字.如果猜测是正确的,玩家赢.如果不正确,程序会提示玩家所猜的数字与实际数字相比是"大(high)&q ...
- python写一个游戏多少代码-Python项目实战之猜数字游戏(含实现代码)
猜数字游戏,旨在提高初学者对 Python 变量类型以及循环结构的使用. 此游戏的游戏规则如下:程序随机内置一个位于一定范围内的数字作为猜测的结果,由用户猜测此数字.用户每猜测一次,由系统提示猜测结果 ...
- java猜数字游戏应用程序_猜数字游戏的Java小程序
/* 猜数字游戏: 1,产生随机数. 2,获取键盘录入. 3,将录入数据变成数字,和随机数比较. 给出提示信息. 4,重复这个过程,如果猜中,程序就结束. 注意:对于输入1~100以外的数字,,以及非 ...
- 猜数字游戏python程序gui_python GUI 猜数字游戏
# -*- coding:utf-8 -*- import easygui,random status = easygui.buttonbox("这是一个猜数字游戏,点击开始进行游戏,点击退 ...
最新文章
- java下载网络中的文件,java下载网络文件解决思路
- Object.create()方法
- elasticsearch 第二篇(配置篇)
- Python字符串基础操作
- VTK:BackgroundTexture背景纹理用法实战
- Singleton patterns 单件(创建型模式)
- windows聚焦壁纸不更新_壁纸推荐说 | 爱上你的壁纸,每天更新的免费壁纸软件dynamic theme...
- c语言头文件和源文件_C语言头文件防卫式声明
- SpringMVC源码解析(四)——请求处理
- 最新安卓手机性价比榜公布:Redmi连夺三冠
- c语言学习-使用指针求一个字符串的长度
- 如何使用SQL Server配置管理器
- 关于vue中next和Tick(nextTick)的一点理解
- Mysql中,int(10)和int(11)的区别
- Python编程:从入门到实践 11-3
- 计算机简历个人优势,简历个人优势怎么写
- Groovy学习(二):GDK初探
- 如何将自己的网站上传至服务器并通过域名进行访问
- JDOM和XPATH薛谷雨
- 低学历者已无法生存 程序员尤其明显