ちょっと、エラーメッセージを返すようなコードがありますが、問題の原因がわかりません。私はObjective-cの構文がかなり新しくなっているので、かなりシンプルなものになるかもしれませんが、問題を見つけることができません。 「tileCoordForPosition:」任意の助けをいただければ幸い方法は、それは2行目のエラー無効なイニシャライザを返し、また、私のクラスはに応答しないことを言うCGPointの無効な初期化子
-(void)setPlayerPosition:(CGPoint) position {
CGPoint tileCoord = [self tileCoordForPosition:position];
int tileGid = [metaLayer tileGIDAt:tileCoord];
if (tileGid) {
NSDictionary *properties = [tileMap propertiesForGID:tileGid];
if (properties) {
NSString *collision = [properties valueForKey:@"Collidable"];
if (collision && [collision compare:@"True"] == NSOrderedSame) {
return;
}
NSString *collectable = [properties valueForKey:@"Collectable"];
if (collectable && [collectable compare:@"True"] == NSOrderedSame) {
[metaLayer removeTileAt:tileCoord];
[foreground removeTileAt:tileCoord];
}
}
}
player.position = position;
}
です!