Cocos2d: error不存在从Cocos2d::Valuemap到Cocos2d::CCdictionary的合适
Cocos2d: error no suitable conversion function from Cocos2d::Valuemap to Cocos2d::CCdictionary existis
我正在遵循这个关于在我的游戏中执行tilemap的神奇教程http://www.raywenderlich.com/39113/cocos2d-x-tile-map-tutorial-part-1
http://www.raywenderlich.com/40544/cocos2d-x-tile-map-tutorial-part-2但是当我看到这个:
CCTMXObjectGroup *objectGroup = _tileMap->objectGroupNamed("Objects");
if(objectGroup == NULL){
CCLog("tile map has no objects object layer");
return false;
}
CCDictionary *spawnPoint = objectGroup->objectNamed("SpawnPoint");
int x = ((CCString)*spawnPoint->valueForKey("x")).intValue();
int y = ((CCString)*spawnPoint->valueForKey("y")).intValue();
_player = new CCSprite();
_player->initWithFile("Player.png");
_player->setPosition(ccp(x,y));
this->addChild(_player);
this->setViewPointCenter(_player->getPosition());
我得到一个错误:CCDictionary *spawnPoint = objectGroup->objectNamed(" spawnPoint ");
表示没有函数转换此objectGroup。(Cocos2d::Valuemap到Cocos2d::CCdictionary不存在合适的转换函数)
这看起来像是不同cocos版本使用的问题(教程是v2,我是v3)。
有人知道如何解决这个问题吗?
为什么不使用自动指针,并使用正常的c++语法访问返回的无序映射呢?参见下面的代码示例。
auto spawnPoints = objectGroupd->objectNamed("SpawnPoint");
int x = spawnPoints.at("x").asInt();
int y = spawnPoints.at("y").asInt();
这将为您提供raywenderlich教程期望您拥有的相同值。
CCDictionary现在是ValueMap。把它改成ValueMap。然后你可以这样使用:
int x = spawnPoint["x"].asInt();
int y = spawnPoint["y"].asInt();
做起来容易多了
相关文章:
- 构造对象 c++ (cocos2d-x) 时的区别
- 如何避免 Cocos2d-x 3.15.1 中的 MenuItemImage 和 MenuItemSprite 之间的冲突
- Cocos2D-X:从内存中读取 MP3 数据
- 如何在 cocos2d-x 3.17v 中创建字符串数组
- 如何使用 cocos creator 在 Cocos2d-X/Cocos2d-JS 中调用 javascript 函数并
- 音乐和音效无法在win32平台上播放?(Cocos2D-X)
- Cocos2d-x TiledMap,在调用 getLayer() 获取碰撞层时返回一个 nullptr?
- 为什么精灵在 cocos2d-x 中颤抖
- lambda回调中Android Cocos2D-X应用程序上的SEG故障
- COCOS2D-X 3.0时间表错误2276
- gldrawarrays with cocos2d根本没有绘画
- 内存相关崩溃:Cocos2d游戏中的三维数组
- cc.game.restart() carsh when extend sdkbox in cocos2d-js 3.1
- 如何在Cocos2d Android应用程序中获得呼叫/挂起事件
- 如何在 cocos2d-x 中创建自定义操作
- 对'cocos2d::network::HttpClient::send(cocos2d::network::HttpRequest*)'的未定义引用
- 在 Cocos2d-x 中一次使用多个精灵表
- 如何使用在 Cocos2d 中执行存储的动画
- 当插入到CCDictionary中时,将标签添加到扩展CCNode的Cocos2d-x将消失
- Cocos2d: error不存在从Cocos2d::Valuemap到Cocos2d::CCdictionary的合适