`
HeLinHang
  • 浏览: 141711 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Cocos2d-x中地图的使用方法(视角的设置和对象层的使用)

 
阅读更多

事件处理:

	virtual void ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent);
	virtual void ccTouchesMoved(CCSet *pTouches, CCEvent *pEvent);
	virtual void ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent);
在init中setTouchEnabled(true);

 

 

获取地图中对象层中对象的坐标点:

m_tileMap =CCTMXTiledMap::create("12.tmx");
	sprite=CCSprite::create("picture\\banana.png");
	this->addChild(sprite);
	this->addChild(m_tileMap);

	CCTMXObjectGroup* objects = m_tileMap->objectGroupNamed("object");//层的名称
//层中的对象块(名称为floor_one)
	CCDictionary* spawnPoint = objects->objectNamed("floor_one");  
	int x = spawnPoint->valueForKey("x")->intValue();  
	int y = spawnPoint->valueForKey("y")->intValue();
	CCLog("x:%d",x);
	CCLog("y:%d",y);

	sprite->setPosition(ccp(x,y));
	sprite->setZOrder(20);

 让精灵始终在地图的中间:

void HelloWorld::ccTouchesEnded(CCSet *pTouches, CCEvent *pEvent)
{
	CCTouch* touch = (CCTouch*)pTouches->anyObject();
	CCPoint tmp = touch->getLocationInView();  
	tmp = CCDirector::sharedDirector()->convertToGL(tmp);  
	CCPoint pos = convertToNodeSpace(tmp); 

	CCLog("x:%f",pos.x);
	CCLog("y:%f",pos.y);
	sprite->setPosition(ccp(sprite->getPosition().x-2,sprite->getPosition().y));

	setViewPosition(ccp(sprite->getPosition().x,sprite->getPosition().y));
}

 

视角函数:

setViewPosition(CCPoint pos)
{
	CCSize winSize = CCDirector::sharedDirector()->getWinSize();  
	int x = max(pos.x,winSize.width/2);  
	int y =max(pos.y,winSize.height/2);  

	  x = min(x,(m_tileMap->getMapSize().width*m_tileMap->getTileSize().width-winSize.width/2));  
	  y = min(y,(m_tileMap->getMapSize().height*m_tileMap->getTileSize().height-winSize.height/2));  

//	x = min(x,(m_tileMap->getContentSize().width-winSize.width/2));  
//	y = min(y,(m_tileMap->getContentSize().height-winSize.height/2));  

	this->setPosition(ccp(winSize.width/2-x,winSize.height/2-y));  
}

 

分享到:
评论

相关推荐

    Cocos2d-x实战:JS卷——Cocos2d-JS开发

    资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...

    cocos2d-x事件类

    谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类,还需要实现handleEvent方法 事件发送者和事件接收者要在构造函数和析构函数中调用一下方法 事件发送者...

    cocos2d-x-2.1.5

    cocos2d-x-2.1.5

    大富翁手机游戏开发实战基于Cocos2d-x3.2引擎

    本书根据大富翁项目一一展开讲解游戏开发过程中涉及的各方面内容,读者可以通过这个游戏的开发,全面掌握Cocos2d-x游戏开发的方法和技巧。 本书理论和实践相结合, 资源太大,传百度网盘了,链接在附件中,有需要的...

    cocos2d-x实战项目

    cocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML文件读取与骨骼动画.rarcocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML...

    Cocos2d-x高级开发教程

    书中汇聚了热门手机游戏《捕鱼达人》开发的实战经验,作者从最基础的内容开始,逐步深入地介绍了Cocos2d-x的相关知识点。此外,书中的教学资源获得《捕鱼达人》手机游戏的授权,读者可以从一流游戏开发中高起点地...

    cocos2d-x-3.2旧版引擎下载

    cocos2d-x-3.2下载,不多说。或者可以下载另一个资源 cocos引擎老版本集合(cocos2d-x-2.2.1 - 3.5) http://download.csdn.net/download/crazymagicdc/9982656

    Cocos2D-X游戏开发技术精解

     《Cocos2D-X游戏开发技术精解》详细介绍如何使用Cocos2D-X引擎开发自己的移动平台游戏。全书共15章,主要内容包括:Cocos2D-X引擎简介;如 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    cocos2d-x-3.0 类图

    这是我重新弄的cocos2d-x-3.0的类图.之前别人兄台弄的,有些不全面,有些地方错误.我这个可以说是最新的了.每个类添加了中文的详细注解,同时也添加了中文的类名称翻译.这样对cocos2d-x-3.0的框架比较好上手. 有兴趣的...

    Cocos2D-X游戏开发技术精解.pdf

    《Cocos2D-X游戏开发技术精解》详细介绍如何使用Cocos2D-X引擎开发自己的移动平台游戏。全书共15章,主要内容包括:Cocos2D-X引擎简介;如何建立跨平台的开发环境;引擎的核心模块——渲染框架;如何实现动态画面和...

    cocos2d-x开发者文档(中文)2015-01-30

    因为最近在学cocos2d-x,找了半天在网上也找不到一个离线的文档,于是自己抽空做了一个,全部内容提取自cocos2d-x中文官网的文档页http://cn.cocos2d-x.org/article 目前只提取了cocos2d-x部分内容。因为内容比较多...

    cocos2d-x 地图的缩放和拖动

    cocos2d-x 地图的缩放 拖动 ,这是个android项目

    精通COCOS2D-X游戏开发 基础卷_2016.4-P399-13961841.pdf

    精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发

    经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip

    经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip

    cocos2d-x 3.0

    cocos2d-x 3.0 人物行走 . 包里有代码和 图片资源.

    Cocos2d-x 3.x游戏开发实战pdf含目录

    Cocos2d-x 3.x游戏开发实战pdf含目录,内容详细,强烈推荐给大家。

    Cocos2d-x 3.x游戏开发之旅

    介绍如何通过官方Demo获取更多关于Cocos2d-x的API使用方法;介绍CocoStudio和Cocos Code IDE基础使用方法;通过2到3个游戏实例介绍Cocos2d-x在实际开发中的应用;手机网络游戏开发入门;介绍在实际的手游开发过程中...

    cocos2d-x windows vs2010配置

    Cocos2d-x windows vs2010 配置图文详解

    cocos2d-x 动画工具 Flash2Cocos2d-x 1.3

    cocos2d-x 动画工具 Flash2Cocos2d-x 1.3

    Cocos2d-x实战 JS卷 Cocos2d-JS开发

    Cocos2d-x实战 JS卷 Cocos2d-JS开发 PDF 电子书完整版本

Global site tag (gtag.js) - Google Analytics