1

我是初学者,Cocos2d我遇到了一个我自己似乎无法解决的问题。我的问题是,如果我CCSprite在预定的方法中添加一个,添加的图像的背景将是不透明的(黑色),即使原点是透明的 PNG。但是代码更好地解释了我正在尝试做的事情,所以

- (void) openShutters 
{
  NSInteger randomTime = (arc4random() % 3) + 2;
  [self schedule:@selector(openShutter) interval:0 repeat:1 delay:randomTime];
}

- (void) openShutter 
{
  NSInteger randomShutter = (arc4random() % [shutters count]);

  CCSprite *soldier = [CCSprite spriteWithFile:@"soldier.png"];
  soldier.anchorPoint = CGPointMake(0, 1);
  soldier.position = ccp(0, winSize.height);
  [self addChild:soldier];

  [self unschedule:@selector(openShutter)];
  [self openShutters];
}

这里奇怪的问题是,如果我进入CCSprite *soldier = [CCSprite ...方法openShutters,精灵将根据需要显示为透明背景。这是我的代码中的cocos-2d一个错误,还是我的代码中的一个错误,或者从计划的方法中添加新的孩子是不安全的?

4

1 回答 1

2

在 openShutters 方法中,您分配间隔 = 0 此语句在设置间隔值大于零工作正常后创建问题

于 2012-12-20T10:01:18.723 回答