位置: 编程技术 - 正文

Cocos2dx3.2 Crazy Tetris 游戏输入(键盘事件,重力事件,触摸屏事件)

编辑:rootadmin

推荐整理分享Cocos2dx3.2 Crazy Tetris 游戏输入(键盘事件,重力事件,触摸屏事件),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

游戏基本的逻辑功能之前已经完成,之后的问题就是如何去控制游戏中的方块。在电脑上,很显然就是使用键盘最为直接,而在手机上,考虑上要让操作方便,这里采用的是用重力感应控制左右移动,点击屏幕进行方块的旋转。

下面,就是加入这些事件的方法:

加入键盘事件,需要重写方法:

加入重力感应事件,需要重写方法:

加入触摸屏事件,需要重写方法:

很显然,一个是按键点击方法,一个是按键释放方法。其中的KeyCode就是被按的那个键的编码可以在EventKeyboard::KeyCode类中找到键盘上每个键的定义。

这里的方法中,我是在键盘按下后,给方块一个左右(x)方向的速度,而在送开时,将速度置为0。如下:

如上是按下按下向左按钮的事件。用setVelocity设置速度,y方向用它自己的速度,x方向设为。

Cocos2dx3.2 Crazy Tetris 游戏输入(键盘事件,重力事件,触摸屏事件)

然后就是按向上的按钮将有旋转事件:

用setAngularVelocoty设置其角速度。

紧接着,便是在按钮点击释放事件中将这些力恢复:

里面那两行代码,分别是恢复左右移动和旋转的方法。

对于加入重力感应事件,主要是其参数Acceleration acc,通过这个可以判断手机旋转的方向。他有四个变量x、y、z、timestamp。其中x,y,z很容易想象,当我们手中平端着手机时,平面上是x轴和y轴,垂直方向是z轴。

这里,用z轴可以判断手机是朝上还是朝下(躺着玩手机)。用x轴判断重力的左右偏移。代码如下:

最后说触摸屏事件,这里重写的一共有四个,onTouchBegan是触摸事件开始,onTouchMoved是触摸移动,onTouchEnded是触摸事件结束。onTouchChancelled,这个,我也不太清楚,网上查了一下,我的理解是,既然是取消,和结束差不多,但你主动取消了,不就是结束。所以,这个可能是被动取消了吧,比如来了个电话什么的。不去深究他了先。

其实可以想象,点击旋转就是一个按钮事件,所以只需要点击开始和点击结束就可以。

因此,有如下代码:

触摸开始时,设置其旋转速度,并且将标识置为true。

然后,触摸结束时:

根据标识旋转速度回复。

关于制作游戏相关其他博客的目录,我放在利用Cocos2dx3.2制作重力版俄罗斯方块(Crazy Tetris)

[置顶] 《CrazyBird》Android休闲射击类游戏1.0版发布啦 《CrazyBird》Android休闲射击类游戏1.0版发布啦新游戏新版本首发啦《CrazyBird》(疯狂的小鸟)1.0版是快开客年做的一款休闲射击类游戏,游戏中你需要点

Android游戏之音频类设计 Android游戏之音频类设计1、基础知识:A.setVolumeControlStream(AudioManager.STREAM_MUSIC);

cocos2dx中地图拖拽(任意方向拖拽+固定方向拖拽) 在游戏开发中,经常会碰见需要使用地图拖拽,例如通关关卡地图,可以允许用户拖拽选择进入哪个关卡,那么在cocos2dx中如何来实现呢?请见如下方案

标签: Cocos2dx3.2 Crazy Tetris 游戏输入(键盘事件,重力事件,触摸屏事件)

本文链接地址:https://www.jiuchutong.com/biancheng/371298.html 转载请保留说明!

上一篇:Android天天数钱游戏源码(天天数链是做什么的)

下一篇:[置顶] 《CrazyBird》Android休闲射击类游戏1.0版发布啦([置顶] 《借.住.情.缘》)

  • 税金及附加怎么来的
  • 资产评估费怎么收
  • 飞机票的快递费多少钱
  • 企业将重组债务转为权益工具
  • 某超市从电器生产厂购进一批电器
  • 现金账怎么记账图例
  • 融资性售后回租承租方出售资产为什么不缴纳增值税
  • 以前没有计提增值税吗
  • 企业受托研发产品有哪些
  • 本期增加发生额是指
  • 公对公转账银行拒绝是什么意思
  • 非独立核算的分公司是法人主体吗
  • 贸易公司买进卖出
  • 一般纳税人进项税额转出会计分录
  • 供应商不开票,还告我司不付款
  • 有税收完税证明还需要发票吗
  • 营改增后建筑业税率变化情况
  • 什么称为非正数
  • 经营性租赁怎么做账
  • 结转实物发放的成本分录
  • 新政府会计制度与旧制度区别
  • 汇算清缴已退税的还可以作废吗
  • 子公司评估增值 出售股权
  • 金税服务费会计分录
  • 在建工程可以质押吗
  • 领专票需要带什么东西
  • 家具螺丝螺母一般在哪里卖
  • window10开始菜单
  • 笔记本怎么按出键盘
  • 缴纳税款滞纳金计算方式
  • 未知格式或损坏文件怎么办
  • 土地房屋转让协议书
  • 增值税一般纳税人和小规模纳税人的区别
  • win10右键个性化显示该文件
  • 员工报销电话费缴纳个税
  • php stl
  • 预售商品房转让合同
  • 原版锯齿
  • 应收账款需要计提损失准备吗
  • 招待费增值税能抵扣吗
  • 企业从应付职工工资中代扣的职工房租应借记
  • nodejs如何使用
  • pytorch x.view
  • 缴纳医疗保险费会计分录
  • 视同销售收入税法处理?
  • 税务清单打印不全
  • python __call__
  • spring10
  • 外管证超期
  • 票据承兑和贴现是指
  • 什么情况下适用简易程序
  • mysql数据库死锁
  • 递延收益为什么属于负债
  • 金税四期何时上线
  • 房产税的计算方式
  • 关于职工薪酬的确认和计量下列说法中不正确的是
  • 计提医疗保险费的会计分录
  • 设计费可以一次支付吗
  • 银行收取服务费
  • 货物运费是否计入成本
  • 为什么开发票能抵税?
  • 私对公可以转账怎么转
  • sqlserver存储过程if语句
  • solaris 2020
  • 在win7操作系统中通过什么可以查看计算机的配置
  • w7系统怎么添加打印机
  • win7桌面点不了怎么回事
  • win8.1系统怎么激活
  • cocos2dx 3.17
  • shell脚本数字运算
  • python怎么编程
  • Unity3D游戏开发pdf
  • 使用权资产
  • Python函数中仅允许有一条return语句
  • 友盟的功能
  • 每天一篇小练笔主题
  • 超清晰的壁纸
  • The method findViewById(int) is undefined for the type FragmentHome报错
  • 袁野近照
  • 南京市车位产权证办理流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设