在我的砖头游戏中,我想把砖块放在彼此顶部。如何获得旧spritenode的位置用于新spritenode?
我创建了一个BrickNode
类。这里是在主文件中创建的不同大小的砖块。
#import "BrickNode.h"
@implementation BrickNode
- (instancetype) init {
if (self == [super init]) {
int number = arc4random() % 2;
if (number == 0) {
SKSpriteNode *bridge1 = [SKSpriteNode spriteNodeWithImageNamed:@"TestBridgePiece"];
bridge1.anchorPoint = CGPointMake(0.5, 0.0);
[self addChild:bridge1];
}
if (number == 1) {
SKSpriteNode *bridge2 = [SKSpriteNode spriteNodeWithImageNamed:@"TestBridgePiece1"];
bridge2.anchorPoint = CGPointMake(0.5, 0.0);
[self addChild:bridge2];
}
}
return self;
}
@end
我创建了调用类的方法。该方法将在TouchesBegin
中调用。因为我希望用户能够产生下一块砖块。
-(void)spawnBrick
{
BrickNode *newBrick = [[BrickNode alloc] init];
newBrick.position = CGPointMake(0.0, <#CGFloat y#>)
}
但问题是新砖的位置。我需要刚刚加载的砖块的位置信息以知道新砖块的位置。
请看enumerateChildNodesWithName。 –