位置: 编程技术 - 正文

cocos2dx中地图拖拽(任意方向拖拽+固定方向拖拽)(cocos2d schedule)

编辑:rootadmin

推荐整理分享cocos2dx中地图拖拽(任意方向拖拽+固定方向拖拽)(cocos2d schedule),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos地图编辑器,cocos2dx 地图,cocos地图编辑器,cocos creator拖尾,cocos地图编辑器,cocos2dx scrollview,cocos地图编辑器,cocos 地图,内容如对您有帮助,希望把文章链接给更多的朋友!

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

我们先创建一个精灵:

s_map_img是纹理图片路径,我们创建了一个s_map的地图精灵。

然后将其添加到层中:

将其添加到层中,并设置一个tag:1。

然后开始对触摸添加监听:

cocos2dx中地图拖拽(任意方向拖拽+固定方向拖拽)(cocos2d schedule)

这里我们创建了一个listener,对其绑定了一个触摸移动的监听,回调函数为test_drag(自己测试随便写的类)的成员函数onTouchesMoved。

然后我们来写这个回调函数:

这里我们可以看到首先获取了移动的相对距离diff,然后通过tag获取到了s_map的指针,随后将现在的距离加上移动的相对距离diff,再设置一下精灵的位置即可。

到此时,我们已经可以任意拖拽地图了,那么,如果我们需要限定地图只向指定方向拖拽移动呢,例如,我们的地图只允许往纵向移动,不允许其他方向的移动。这里给出两种方案:

现在我们知道了,支持拖拽的本质就是根据偏移量重新设置精灵的位置,那么,我们可以在这个偏移量上动手脚,先来看第一种方式:

我们可以检查一下diff的x的大小,如果为0,则表示没有横向的移动,就执行移动操作,这样可以保证只进行纵向的移动。这种方式其实不太好,因为有些时候我们滑动的时候并不是那么绝对的纵向,可能会偏一点点横向,对于这类情况,请看第二种方案:这里,我们定义一个新的偏移量new_diff,使用其获取diff的纵向移动,然后将横向始终设置为0,这样,我们就可以只进行用户纵向的移动了~

Android游戏之输入类设计(传感器,键盘,触摸点) Android游戏之输入类设计(传感器,键盘,触摸点)1、基础知识:A.SensorEventListener传感器事件监听

Android游戏之文件读写类和绘图类设计 Android游戏之文件读写类和绘图类设计1、基础知识:A.

android游戏开发的技术实现分析 在android开发中,你可能会有想要开发一个小游戏的冲动,那么用android来开发游戏如何实现呢?幸运的是,google提供了一些已经开发好的游戏实例.我们从他的

标签: cocos2d schedule

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

上一篇:Android游戏之音频类设计(安卓音游吃音)

下一篇:Android游戏之输入类设计(传感器,键盘,触摸点)(游戏输入法安卓)

  • 工会经费的计税依据是含税还是不含税
  • 支付国外佣金代扣代缴增值税
  • 耕地占用税的税目
  • 有关研发支出的账务怎么做?
  • 预提的费用在做所得税的时候如何处理
  • 增值税专用发票的三流合一是什么意思
  • 个贷系统平账专户A户
  • 印花税交完有什么凭证
  • 董事费监事费个税计算
  • 随意变更会计处理方法违背了
  • 维修 物业
  • 商业汇票概念股票
  • 所有转让土地税怎么算
  • 广告费准予扣除怎么算
  • 物业公司安装监控
  • 环评公司的成本核算
  • 记账凭证应交税费应交增值税怎么写
  • 调整增值税税率
  • 收到科技局研发的短信
  • 工伤保险的作用有
  • mac电脑键盘进水,键盘不可以用了
  • 圣克鲁斯群岛海战百度百科
  • 太超过了
  • php require include
  • PHP:pg_convert()的用法_PostgreSQL函数
  • php从哪里开始学
  • 2021发票勾选认证
  • 框架的弊端和作用
  • 二维码的实现原理和实现过程
  • 食堂员工自己吃饭违法吗
  • 多线程并发python
  • python面向过程与面向对象的区别
  • 银行存款利息应记什么科目
  • 收到银行的贷款怎么入账
  • 冲减多计提的工资摘要怎么写
  • 小企业会计制度的适用对象是
  • mongodb too many open files
  • sql group by
  • dedecms插件
  • 商誉减值每年都要调整吗
  • 社保可以直接计入费用吗
  • 小型微利企业免税销售额是多少
  • 不良资产处置公司违法吗
  • 印花税处罚适用征管法六十四条规定
  • 劳务报酬所得如何申报
  • 个税异地缴纳后果
  • 开出去的发票没有进项发票应如何核算成本?
  • 单位定期存款起存金额为1万元,多存不限,存期分为
  • 小规模季报成功后怎么缴费
  • 水利建设基金的征税对象
  • 开个人普票需要身份证吗
  • 来料加工的特点包括
  • 1.金融资产有哪些基本类型?
  • mysql5.7最新版
  • windows mysql1045
  • windows注册表保存在BIOS
  • windows中输入法的安装步骤
  • ie10和ie11
  • winxp不显示桌面图标
  • incorrect email format, please re-enter.
  • win7系统两台电脑共享
  • 双液浆常用配合比
  • 笔记本w8系统怎么取消开机密码
  • win7系统纯净版和旗舰版有什么区别
  • window7文件查看方式
  • 关于我和鬼变成家人的那件事
  • bat关闭bat
  • python中的单下划线和双下划线
  • python3 pygame
  • shell脚本替换文件中某个字符串
  • Android带有注册界面的简单app
  • 安卓手机 监听功能
  • staticlayout 换行
  • javascript原型
  • js轮播图视频教程
  • python gensim
  • 怎么利用python处理批量表格
  • 合格的税务人
  • 耐心服务的名言警句
  • 代理记账公司前期准备流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设