2012-12-27 76 views
0

我正在嘗試使用Cocos2d 2.0和box2d來測試/創建示例遊戲。我在屏幕上有一組精靈,當我按下精靈時,我想要一個身體自動附加到該精靈。我試圖使用TouchesEnd方法,但它似乎不工作。將身體附加到雪碧

有人能把我推向正確的方向嗎?

回答

0

試試這個方法...

-(void)createB2Body 
{ 
    b2PolygonShape shape; 

    float xDist = (sprite.contentSize.width*0.5f)/PTM_RATIO ; 
    float yDist = (sprite.contentSize.height*0.5f)/PTM_RATIO ; 

    shape.SetAsBox(xDist, yDist); 

    b2BodyDef bd; 
    bd.type = b2_dynamicBody; 
    bd.userData = sprite; 
    bd.linearDamping = 0.5f; 
    bd.angularDamping = 0.5f; 

    bd.position.Set(self.position.x/PTM_RATIO, self.position.y/PTM_RATIO); 

    b2FixtureDef fixDef; 
    fixDef.shape = &shape; 
    fixDef.density = 1.0f; 
    fixDef.friction = 0.1f; 
    fixDef.restitution = 1.0f; 
    fixDef.isSensor = true; 

    self.body = self.world->CreateBody(&bd); 

    self.body->CreateFixture(&fixDef); 

} 

只有觸摸?然後使用ccTouchesBegan。