Cocos2d iphone Cocos2D-碰撞检测getTileGIDAt

Cocos2d iphone Cocos2D-碰撞检测getTileGIDAt,cocos2d-iphone,cocos2d-x,tiled,Cocos2d Iphone,Cocos2d X,Tiled,我在这个问题上纠缠了好几天了。我希望你们能帮助我。我根据本教程创建了一个简单的游戏: 我被困在碰撞检测部分。getTileGIDAt()方法总是返回0,很可能我发现这是一个与平铺相关的问题(可能平铺不存在,等等),但问题是平铺完全没有问题。除此之外,一切运行和加载都很顺利 谢谢 代码如下: void HelloWorld::setPlayerPosition(Point position) { Point tileCoord = this->tileCoordForPosition

我在这个问题上纠缠了好几天了。我希望你们能帮助我。我根据本教程创建了一个简单的游戏:

我被困在碰撞检测部分。getTileGIDAt()方法总是返回0,很可能我发现这是一个与平铺相关的问题(可能平铺不存在,等等),但问题是平铺完全没有问题。除此之外,一切运行和加载都很顺利

谢谢

代码如下:

void HelloWorld::setPlayerPosition(Point position)
{
    Point tileCoord = this->tileCoordForPosition(position);
    int tileGid = _blockage->getTileGIDAt(tileCoord);
    if (tileGid) {
        auto properties = _tileMap->getPropertiesForGID(tileGid).asValueMap();
        if (!properties.empty()) {
            auto collision = properties["Blockage"].asString();
            if ("True" == collision) {
                return;
            }
        }
    }
    _player->setPosition(position);
}

我想试试这个教程,看看你的代码是如何匹配的。我想主要的事情是检查你是否为不同的层正确地设置了平铺


我将尝试本教程,看看您的代码如何匹配。我想主要的事情是检查你是否为不同的层正确地设置了平铺


嘿,我也有同样的问题,你有什么解决办法吗?嘿,我也有同样的问题,你有什么解决办法吗?