位置: 编程技术 - 正文

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

  • 如何查询公司是否是小微企业
  • 税务申报指的是什么
  • 纳税申报期限是纳税期限期满后的时间
  • 先开票后收款违法吗
  • 上市公司股价变动谁受益
  • 进口奶牛缴纳增值税
  • 住房贷款利息专项附加扣除是返钱吗
  • 高新企业职工教育经费扣除比例
  • app 开发公司的账务处理
  • 银行收到理财资金怎么做账
  • 销售不动产包括哪些内容
  • 开出的发票什么情况下需要补税?
  • 空调折旧年限的最新规定2018
  • 收取施工队管理费
  • 通讯费 个税
  • 境内所得和境外所得
  • 残疾人就业保障金是什么意思啊
  • 凤尾蕨的养殖方法
  • PHP:mb_check_encoding()的用法_mbstring函数
  • 2021新旧会计准则
  • PHP:stream_context_create()的用法_Stream函数
  • 无限极分类mysql
  • 年报中投资总额怎么填
  • php确认弹窗
  • php实现原理
  • 国内旅客运输服务普票可以抵扣吗
  • 融资租入的办公楼
  • 固定资产捐赠的账务处理
  • javascript 高级教程
  • 帝国cms使用手册
  • 社保局申报工伤款多久能下
  • oracle与mysql的优缺点对比
  • vue+ele
  • 主营业务收入含义
  • 餐饮行业经营模式有哪些
  • 项目差旅费能计入项目费用吗
  • sqlserver2019配置
  • 零申报对企业有什么影响
  • 注册资本印花税2023年新规定
  • 会计上需要结转的科目
  • 计提地税会计分录怎么做
  • 应付账款的余额表示什么
  • 单位补扣社保算漏交吗
  • 资本化支出计入什么科目
  • 运费开什么发票
  • 收购票票样
  • 银行存款利息记账凭证
  • 滴滴发票抬头是什么意思
  • 展览费计入管理费用吗
  • sql跨服务器查询方法
  • mysql 厂家
  • win10预览版和正式版区别
  • windows怎么查看
  • win2008 R2 与SP1 PS2无法安装操作系统补丁的解决办法
  • nw.exe是什么进程
  • 装双win7系统怎么设置
  • window10自带的软件有哪些
  • linux里find命令
  • linux ldt
  • 苹果电脑dock栏不见了
  • linux检测硬盘故障
  • centos fedora
  • linux cvf
  • win7安全更新kb4534314
  • cocos2dx CardinalSpline和CatmullRom算法
  • kvm 安装
  • 设置cmd命令
  • css做一个好看的网页
  • shell的简单实现
  • python进阶视频
  • linux批量修改文件时间
  • u3d脚本语言
  • nodejs10支持es6吗
  • java arraysort
  • Python字符串切片例子
  • 用javascript
  • 告诉你什么是无限的恐怖日语
  • 国税和地税现在合并了吗
  • 预测收入遵循什么方法
  • 个体开专用票需要进项吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设