私の悪い英語でごめんなさい
私はインターネットで検索し、方法を見ましたが、何らかの理由でオブジェクトを追加していません。私がやりたいことは、パワーアップスプライトをレイヤーにロードし、それらを配列に追加することです。配列に基づいて、どのレイヤーをいつ別のレイヤーに表示するかを選択します。
ばかげた詳細だと確信していますが、何が理解できません。ローカル配列を作成し、シングルトンの代わりに使用すると機能します。
ゲームマネージャークラスを作りました
//header
@interface GameManager : NSObject {
}
@property (nonatomic,retain) NSMutableArray *powerUpsArray;
+(GameManager*)sharedGameManager;
@end
実装
@implementation GameManager
static GameManager* _sharedGameManager = nil;
@synthesize powerUpsArray=_powerUpsArray;
+(GameManager*)sharedGameManager {
@synchronized([GameManager class])
{
if(!_sharedGameManager)
[[self alloc] init];
return _sharedGameManager;
}
return nil;
}
-(id)init {
self = [super init];
if (self != nil) {
self.powerUpsArray=[[NSMutableArray alloc]init];
}
return self;
}
@end
そして、ヘッダーをインポートし、レイヤーでinitメソッドで行います
[[GameManager sharedGameManager].powerUpsArray addObject:[[CCSpriteFrameCache sharedSpriteFrameCache] spriteFrameByName:[NSString stringWithFormat:@"bomb.png"]]];
バッチノードを作成し、フレームからフレームキャッシュを作成しましたが、理由はありますか?