这让我觉得自己像个笨手笨脚的白痴,而我似乎就是这样问的。
我有一个类似桌面游戏的游戏,我在这里为每个空格添加空格(类型DDSpace
,一个NSObject
的子类)到一个可变数组(NSMutableArray
)。
以下是到目前为止将空格加载到视图中的函数(loadSpaces
):
NSLog(@"amount of spaces: %i", amountOfSpaces);
for (int i = 0; i < amountOfSpaces; i++) {
DDSpace *space = [DDSpace new];
[space setupSpriteWithTheme:gamePlace];
[spacesArray addObject:space];
}
int num = 0;
// INITIAL SPACE IS SPACE 0.
NSLog(@"adding spaces to scene... self.width = %f, count of space array = %i", self.size.width, spacesArray.count);
for (DDSpace* space in spacesArray) {
CGFloat x = 100.0 + (num * 225.0);
NSLog(@"x at num%i = %f.", num, x);
space.sprite.position = CGPointMake(x, (self.size.width / 3.0));
space.sprite.name = [NSString stringWithFormat:@"space%ld",(long)num];
if (space.sprite.position.x < self.size.width) {
NSLog(@"adding space.");
[self addChild:space.sprite];
}
}
NSLog(@"loadSpaces function finished.");
第一个游戏加载1,000个空格。该函数首先记录空格量以确保正确设置(并且它是),然后记录屏幕的宽度和数组中的空格数(数组的计数为0
),然后下面的所有内容只是将适合屏幕的内容添加到视图中。
我的目标是将空格添加到spacesArray
数组(NSMutableArray
),以便稍后我可以访问其他空格,以防角色“轮到他们”(我会那里的逻辑将其他人向后移动,但要做到这一点,我需要一个空格数组。)
我的问题是,如何将DDSpace
添加到spacesArray
数组中? addObject:
方法是否正确?我只是做一些愚蠢的事情吗?
场景中也没有出现任何空格。
答案 0 :(得分:2)
我认为在向对象添加对象之前需要这样做。
spaceArray = [NSMutableArray Array];
并添加这样的对象(就像你一样)
[spacesArray addObject:space];