Saltar cuerpo de sprite usando ccJumpto

Tengo un problema al saltar el cuerpo del sprite. El siguiente es el método de actualización para saltar el cuerpo del sprite

-(void) update: (ccTime) dt
{

    world->Step(dt, 10, 10);
    // BOOL worldAsleep=true;
    for(b2Body *b=world->GetBodyList();b;b=b->GetNext())
    {
        if(b->GetUserData() !=NULL)
        {

            CCSprite *myActor=(CCSprite *)b->GetUserData();


            myActor.position=ccp(b->GetPosition().x *PTM_RATIO, b->GetPosition().y *PTM_RATIO);
            b->SetTransform(b2Vec2(b->GetPosition().x,b->GetPosition().y), b->GetAngle());

           if (fire.active==YES) 
            {
                id jump=[CCJumpBy actionWithDuration:1 position:ccp(b->GetPosition().x, b->GetPosition().y) height:100 jumps:1];
                [myActor runAction:jump];
                b2Vec2 force = b2Vec2(0,350);                
            }

        }
    }

}

Aquí fire.active es un botón para saltar el sprite y el método ccjumpto se usa para saltar el sprite, pero qué hacer para saltar el cuerpo. Para saltar el cuerpo del sprite, utilicé ApplyLinearImpuls pero no puede saltar como el tipo de sprite.

Quiero saltar tanto el sprite como el cuerpo igual que solo el salto de sprite.

Gracias por reproducir

preguntado el 28 de agosto de 12 a las 09:08

1 Respuestas

Oye, saltas el cuerpo de acuerdo con el botón que pusiste debajo del código cuando se hizo clic en el botón:

b2Vec2 locationWorld;
 locationWorld = b2Vec2(0.0f,8.0f);
 double Force= _body->GetMass();
  _body->ApplyLinearImpulse(Force*locationWorld, _body->GetWorldCenter());

Respondido 28 ago 12, 12:08

Tengo un nuevo problema con respecto al cuerpo del sprite de salto...stackoverflow.com/questions/12190999/sprite-body-can-not-stop - Leena

hola Leena NSLog(@"Jump Sprite"); b2Vec2 ubicaciónMundo; ubicaciónMundo=b2Vec2(0.0f,4.0f); double force=ballBody->GetMass(); ballBody->ApplyLinearImpulse(force*locationWorld, ballBody->GetWorldCenter()) desde este código salta solo una vez - Nims

Lo sé, pero en mi juego estoy usando los botones MoveLeft y MoveRight para mover el sprite y cuando suelto los botones de movimiento no puedo parar cuando no puedo escribir. else { b2Vec2 force=b2Vec2(0,0); ballBody->SetLinearVelocity(force); } Y cuando escribo este código, el salto no puede funcionar. - Leena

Gracias por la identificación del correo y te envié un correo, por favor échale un vistazo. - Leena

Oye, el correo no puede enviarte. ¿Me puede dar una identificación de correo personal? O envíeme su correo de prueba a leena.shah.2908@gmail.com o contácteme en skype leena.shah.2908 - Leena

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.