位置: 编程技术 - 正文

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游戏之输入类设计(传感器,键盘,触摸点)(游戏输入法安卓)

  • 最新个税手续费返还会计分录小规模纳税人
  • 免税收入不征税收入有哪些
  • 偶然所得税什么时候颁布
  • 经营罚没物品增值税计算
  • 开票没有网络可以开票吗
  • 收到保险公司开票怎么做账
  • 商品流通企业应收账款很少的原因
  • 购进蔬菜的进项税额
  • 职工享受工伤保险
  • 小微企业所得税优惠政策最新2022
  • 取得虚开增值税专票如何税务处理
  • 工程项目劳务分包合同范本
  • 从农民个人手里获取资源
  • 公司借款给个人利息怎么做账
  • 餐饮企业卖套餐赠送单品要交增值税吗?
  • 应交增值税期末余额在借方表示什么
  • 自行承担税费是什么意思
  • 简易计税方法是什么意思
  • 一般纳税人收取的下列款项中,应并入销售额
  • 增值税发票抵扣期限最新规定
  • 上年多计提附加税调整了,今年怎么调整
  • 增值税发票每个月什么时候可以开
  • 无法取得发票的预付账款如何处理
  • 资源税计税依据含不含增值税
  • 行程单的金额怎么算
  • 金蝶核算项目明细表
  • mac双系统删除window后怎么重新恢复
  • win10 microsoft store怎么改变下载途径
  • 残疾人就业保障金申报时间
  • 怎么使用win10
  • php session实例
  • linux 查看文件内容 转换字符编码
  • 销货方发票红冲操作流程
  • linux的系统设置在哪
  • 应收票据贴现的会计分录
  • vnisedit 打包
  • 股票发行费用怎么算
  • 加工制造业包括
  • uniapp相关面试题
  • 德国楚格峰一日游攻略
  • 什么情况下可以赔偿n+1
  • 内资企业
  • 35.JavaScript对象和数组的解构赋值基础详解、let陷阱、函数参数解构
  • thinkphp6多表关联查询
  • 隐藏php后缀
  • python读取TXT文件代码
  • 管家婆实收资本显示负数什么原因
  • 分公司能给总公司担保吗
  • 出口发票已经抵扣认证怎么办
  • 当月收入可以下月开票吗
  • 其他综合收益影响留存收益吗
  • 财务报表里的现金流量表括号是什么意思
  • 职工给单位造成损失可以申请仲裁吗
  • 劳务外经证预缴税款
  • 广告公司非税收入标准
  • 固定性制造费用能量差异公式
  • 建筑安装结转成本分录
  • 什么是划分?划分应当遵守哪些规则?
  • 货款已付对方不发货的案例分析
  • 会计净资产计算公式
  • mysql深入理解
  • 用sql语句实现分页效果
  • u盘装机大师手机下载电脑版
  • win7的运行命令在哪里
  • os x10.11el capitan公测版下载地址(公测版计划注册教程)
  • centos7编译安装内核
  • linux进程管理实验总结
  • centos nis
  • 怎么打开windows移动中心
  • 变量js
  • android内存分析显示
  • unity延迟调用函数
  • js右键菜单
  • 安卓监听事件
  • 纪检委是干什么工作的能管理税务管理局吗
  • 普票已开发票怎么作废
  • 应交税费应交增值税已交税金是什么意思
  • 内蒙古国家税务局网上电子税务局官网
  • 房屋租赁税房东不承担怎么办理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设