// Очень вероятно, ошибка nubby ... столкновений работать, если перетащить плитки ударов TargetNodeCatagoryT1 но как установить BOOL на объект-хит?Узел SKPhysics и как отправить BOOL для исправления объекта
if (firstBody.categoryBitMask == DragTileCategory &&
secondBody.categoryBitMask == TargetNodeCatagoryT1){
TargetNode *hitNode = (TargetNode *) secondBody.node;
hitNode.hasHitT1 = YES; <<this crashes app
but I wish to send BOOl back...
}
ERROR LOG: нагрузочного приложение из-за неперехваченного исключением 'NSInvalidArgumentException', причина: «- [SKSpriteNode setHasHitT1]: непризнанные селектор направлен например
Thank's Knight0fDragon You are right, the "hitNode" are SKSpriteNodes
nested within the TargetNode class - each TargetClass has 3 targets,
BOOLS are declared in .h and synthesised in .m
@interface TargetNode : SKNode
BOOL hasHitTarget1;
BOOL hasHitTarget2;
BOOL hasHitTTarget3;
//later
@property (nonatomic,assign) BOOL hasHitTarget1;
@property (nonatomic,assign) BOOL hasHitTarget2;
@property (nonatomic,assign) BOOL hasHitTarget3;
@implementation TargetNode
@synthesize hasHitTarget1,hasHitTarget2,hasHitTarget3;
-(id)initWithImageNamed:(NSString*)imageName labelText:(NSString*)labelText
other stuff here....then
hasHitTarget1 = NO;
hasHitTarget2 = NO;
hasHitTarget3 = NO;
У нее есть работа: прилагается физикаBody к ярлыку Я хочу чанг e later (физикаBody была немного похожа на маркер, если бы я мог найти второй код. Я бы мог изменить текст ... возможно, это не самый лучший способ, но он работал для моих целей :)
// креплении physicsBody например T1label.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize ...
// нахождение объекта secondBody
В didMakeContact secondBody.categoryBitMask == TargetNodeCatagoryT1) {
//Convert second body into useable object
SKLabelNode *hitNode = (SKLabelNode *) secondBody.node;
//change text
hitNode.text [email protected]"test";
NSLog(@"TargetNode [email protected]%@",hitNode.name);
//Test type of object
NSLog(@"hitNode isMemberOfClass TargetNode: %@", [hitNode isMemberOfClass:[TargetNode class]] ? @"YES":@"NO");
NSLog(@"hitNode isMemberOfClass SKSpriteNode: %@", [hitNode isKindOfClass:[SKLabelNode class]] ? @"YES":@"NO");
}
Привет Knight0fDragon, спасибо, добавил выше код Hitnode является SKSpriteNode внутри класса TargetNode BOOL не работает - вы добавили код, возможно, вы можете увидеть, где я ошибся ... – StackBuddy
whoa whoa whoa, почему targetnode your physicalcontactdelegate, ваша сцена должна делать это – Knight0fDragon
приятно знать, исправлено , (теперь для bools) – StackBuddy