我正在尝试在我的.tmx贴图中查找特定瓷砖的像素位置。 CCTMXLayer类的方法positionAt:应该做到这一点,但是每当我尝试使用它时,它都会返回一个带坐标(0,0)的CGPoint ..这是我正在使用的代码的一部分。为什么不会[TMXLayer positionAt:CGPoint]为我工作?
// CCTMXTiledMap Declaration using my class MapLayer
//which inherits from CCTMXTiledMap
MapLayer *tileMap = [MapLayer node];
CCTMXLayer *myLayer = [tileMap layerNamed: @"Middle"];
NSLog(@"%i", [myLayer positionAt: CGPointMake(x,y)].x);
NSLog(@"%i", [myLayer positionAt: CGPointMake(x,y)].y);
不管x和y的值都为CGPointMake,对于CGPoint(0,0)的值不断得到记录下来,我不明白为什么。
编辑:
我只是声明我的图层与地图错误?这是我的代码。
//init method for MapLayer.m class file
@implementation MapLayer
-(id) init {
if((self=[super initWithTMXFile: @"ZombearTilemap.tmx"])) {
}
return self;
}
//in my MainScene.m class init method
MapLayer *tileMap = [MapLayer node];
[self addChild: tileMap];
CCTMXLayer *tileMapLayer = [tileMap layerNamed: @"Middle"];
// (tileMapLayer == nil) returns false
//tileMap.mapSize.width returns 0
//[[tileMapLayer tileAt:ccp(x,y)] boundingBox].size.height returns 0
我的图层文件不是零。我用if语句检查了它。尽管你的高度和宽度都是正确的。他们都是0,所以有些东西坏了,我只是不知道是什么.. 有没有什么我可能会缺少导出我的tmx文件,打破它,因为tmx文件显示,我只是无法让其属性工作。 – user1371455
@ user1371455检查我的编辑上面的addtl信息/帮助.. – MechEthan
@ user1371455你可以编辑你原来的问题,并添加该代码?它对我没有意义。 – MechEthan