0
我一直在試圖逃離觸摸的節點SKTexture變化,表示節點與循環創建:設置SKTexture爲SKSpriteNode與給定sprite.name
int nameIndex = 0;
for (int i = 1; i <= 3; i++) {
self.card = [SKSpriteNode spriteNodeWithImageNamed:@"front"];
NSString *nodeName = [NSString stringWithFormat:@"node%d", nameIndex];
self.card.name = nodeName;
self.card.position = CGPointMake((((board-self.card.size.width)/3)*i), y);
[self addChild:self.card];
nameIndex++;
}
在開始觸摸我的方法有:
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [touches anyObject];
NSArray *nodes = [self nodesAtPoint:[touch locationInNode:self]];
for (SKNode *node in nodes) {
if ([node.name isEqualToString:@"node0"]) {
//Change the texture for the given node:
NSLog(@"Node 0");
[self.card setTexture:[SKTexture textureWithImageNamed:nameIndex]];
}
if ([node.name isEqualToString:@"node1"]) {
NSLog(@"Node 1");
}
if ([node.name isEqualToString:@"node2"]) {
NSLog(@"Node 2");
}
}
的觸摸開始方法工作得很好,它只要一個精靈被觸摸
但是運行塊,與當前代碼紋理變化只發生在預期最後創建的精靈。我一直在尋找一種方法來在一個名爲X的精靈上運行一個方法,但我沒有一種方法。
在此先感謝!