为了访问瓦片地图,Cocos2d-JS中访问瓦片地图API,主要的类有:TMXTiledMap、TMXLayer和TMXObjectGroup等。
1、TMXTiledMap
TMXTiledMap是瓦片地图类,它的类图如下图所示,TMXTiledMap派生自Node类,具有Node特点。
TMXTiledMap常用的函数如下:
new cc.TMXTiledMap(tmxFile)。创建瓦片地图对象。
getLayer(layerName)。通过层名获得层对象。
getObjectGroup(groupName)。通过对象层名获得层中对象组集合。
getObjectGroups()。获得对象层中所有对象组集合。
getProperties()。获得层中所有属性。
getPropertiesForGID (GID)。通过GID[ GID是一个瓦片的全局标识符。]获得属性。
getMapSize()。获得地图的尺寸,它的单位是瓦片。
getTileSize()。获得瓦片尺寸,它的单位是像素。
示例代码如下:
var group = _tileMap.getObjectGroup("Objects");
var background = _tileMap.getLayer("Background");
其中_tileMap是瓦片地图对象。
2、TMXLayer
TMXLayer是地图层类,它的类图如下图所示,TMXLayer也派生自Node类,也具有Node特点。同时TMXLayer也派生自SpriteBatchNode类,所有TMXLayer对象具有批量渲染的能力,瓦片地图层就是由大量重复的图片构成,它们需要渲染提高性能。
TMXLayer常用的函数如下:
getLayerName()。获得层名。
getLayerSize()。获得层尺寸,它的单位是瓦片。
getMapTileSize()。获得瓦片尺寸,它的单位是像素。
getPositionAt(pos)。通过瓦片坐标获得像素坐标,瓦片坐标y轴方向与像素坐标y轴方向相反。
getTileGIDAt(pos)。通过瓦片坐标获得GID值。
3、TMXObjectGroup
TMXObjectGroup是对象层中的对象组集合,它的类图如下图所示,注意TMXObjectGroup与TMXLayer不同,TMXObjectGroup不是派生自Node,不具有Node特性。
TMXObjectGroup常用的函数如下:
propertyNamed(propertyName)。通过属性名获得属性值。
objectNamed(objectName)。通过对象名获得对象信息。
getProperties()。获得对象的属性。
getObjects()。获得所有对象。
本书交流讨论网站:http://www.cocoagame.net
更多精彩视频课程请关注智捷课堂Cocos课程:http://v.51work6.com
京东:http://item.jd.com/11659698.html
欢迎关注智捷iOS课堂微信公共平台,了解最新技术文章、图书、教程信息
相关推荐
Cocos2d-JS 是一个强大的游戏开发框架,它结合了Cocos2d-x的性能和JavaScript的便捷性,让开发者能够用JavaScript编写跨平台的游戏。这个“cocos2d-js-tutorial”教程旨在帮助初学者和有经验的开发者更好地理解和...
1. **CCTileMapAtlas**:这是Cocos2D-X中的一个类,用于处理基于单个纹理的瓦片地图。每个瓦片都有一个唯一的索引,开发者可以通过这个索引来改变地图上的特定瓦片。`CCTileMapAtlas`支持自定义的瓦片大小和行数、列...
7. **Tiled Map(瓦片地图)**:对于需要大量地形或背景的游戏,cocos2d-x提供Tiled Map支持,允许开发者使用TMX格式的瓦片地图文件来创建复杂的关卡。 8. **Box2D Integration(Box2D整合)**:cocos2d-x集成了Box...
7. **Scripting**:通过JavaScript与cocos2d互动,编写游戏逻辑。 四、开发流程 1. **项目初始化**:使用cocos command创建新项目,设置项目名称、分辨率等信息。 2. **设计场景和层**:根据游戏需求创建Scene和...
它建立在Cocos2d-x的基础上,允许开发者使用JavaScript语言进行游戏编程,使得游戏可以在各种浏览器和移动设备上运行,实现了跨平台的无缝对接。 一、核心概念 1. **Scene(场景)**:场景是游戏中的一个独立单元...
1. **QtPort项目**:如压缩包中的"quick-cocos2d-x-20130509-QtPort"所示,这是一个将Cocos2dx移植到Qt的项目,使得开发者可以在Qt环境中直接使用Cocos2dx的API。 2. **混合编程**:通过QtPort,可以将Cocos2d-x的...
本文旨在详细解析CocosCreator中地图的制作流程,并提供相关的源码资源和制作教程,以帮助开发者更好地掌握游戏地图的创建和编辑。 首先,地图的制作可以分为以下几个步骤: 1. 准备素材:地图是由多种元素组合而...
例如,Unity、Godot或Cocos2d-x等引擎都支持Tiled地图格式,可以方便地导入和渲染地图数据。 6. 编程语言与框架:魔塔游戏可以使用各种编程语言开发,如Python、JavaScript、C#或Java。熟悉特定框架如pygame、Unity...