目前正在設法找到解決,自己目前是傷害我的應用程序問題的SKNode。我想看看我是否可以改變下面的代碼來減少內存。現在,我有五個方法,所有做到以下幾點,Attemped添加已經有一個父
-(void)createObstacle0 {
int yMin = (CGRectGetMidY(self.frame)+190);
int yMax = (CGRectGetMidY(self.frame)+270);
CGPoint startPoint = CGPointMake(-20, yMin + arc4random_uniform(yMax - yMin));
SKSpriteNode *obstacle = [SKSpriteNode spriteNodeWithImageNamed:@"obstacle"];
obstacle.position = CGPointMake(startPoint.x, startPoint.y);
obstacle.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:21.5];
obstacle.physicsBody.categoryBitMask = enemyCategory;
obstacle.physicsBody.contactTestBitMask = playerCategory;
obstacle.physicsBody.dynamic = NO;
obstacle.name = @"obstacle0";
[self addChild:obstacle];
[obstacle runAction:[SKAction moveTo:CGPointMake(340, startPoint.y) duration:minTime + arc4random_uniform(maxTime - minTime)]];
float randomNum = arc4random_uniform(3.0) + 0.1;
[self performSelector:@selector(createObstacle0) withObject:nil afterDelay:randomNum];
}
我想聲明我的.h文件SKSpriteNode,並有代替SKSpriteNode他們的內聲明的每個方法的使用,但我得到上述錯誤。有人可以告訴我如何改變我的代碼,所以圖像「障礙」只加載一次。
是的,我知道,物體會一直產卵,直到玩家擊中他們中的一個,場景轉換,這是故意的。 – user3552678
@ user3552678 - 刪除線後是否有效? – sangony
它有效,沒有崩潰或任何事情,但我的遊戲有很多來自側面的物體,沒有這條線,它們不會繼續來,只有一個會。 – user3552678