【问题标题】:Add child to layer from different class Cocos2d?将子级添加到来自不同类 Cocos2d 的图层?
【发布时间】:2011-05-21 18:19:12
【问题描述】:

我正在制作游戏。我在同一个场景上成功使用了不止一层,但我希望有碰撞检测。最简单的方法是拥有一层。我不知道如何将孩子添加到不同班级的图层中。帮助!

【问题讨论】:

  • 尝试将此问题移至 gamedev.stackexchange.com

标签: iphone xcode cocos2d-iphone layer


【解决方案1】:

您可以在函数中传递您希望孩子添加到的层。 像这样:

这是在你的班级:

 -(void)makeChild:(CCLayer*)layer {

 CCSprite *sprite =..**** //Create sprite

 [layer addChild:sprite];

 }

这是在主层:

-(void)init {

[classInstance makeChild:self];

}

希望对您有所帮助..

【讨论】:

    【解决方案2】:

    如果你想添加一些 CCSprite 实例作为两个不同层的孩子,这是不可能的,因为 cocos2d 总是检查你作为孩子添加的对象是否没有附加到另一个对象。但是如果你的问题是一些精灵之间的碰撞检测,它不需要它们是同一个对象的孩子,你可以计算它们每个的绝对位置(我猜[sprite boundingbox]这样做)然后检查这两个是否碰撞,您可以使用 box2d 或 chimunk 为您进行碰撞检查

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-21
      • 1970-01-01
      相关资源
      最近更新 更多