Can i add friction in air?
- by Diken
I have issue regarding speed in air. When i jump and move simultaneously that time speed of player increase.For jump i am using impuls and for movement i am using force.I want to slow speed when player is in air.
Thanks in advance
Following is my update method ih HUDLayer
-(void)update:(ccTime)dt :(b2Body *)ballBody :(CCSprite *)player1 :(b2World *)world
{
if (moveRight.active==YES)
{
ballBody->SetActive(true);
b2Vec2 locationworld=b2Vec2(maxSpeed,0);
double mass=ballBody->GetMass();
ballBody->ApplyForce(mass*locationworld, ballBody->GetWorldCenter());
// ballBody->SetLinearDamping(1.2f);
}
else if(moveLeft.active==YES)
{
ballBody->SetActive(true);
b2Vec2 locationworld=b2Vec2(-10,0);
double mass=ballBody->GetMass();
ballBody->ApplyForce(mass*locationworld, ballBody->GetWorldCenter());
// ballBody->SetLinearDamping(1.2f);
}
}
Following is jump
-(void)jump:(b2Body*)ballBody:(ccTime)dt:(BOOL)touch
{
if (touch)
{
if (jumpSprte.active==YES)
{
ballBody->SetActive(true);
b2Vec2 locationWorld;
//locationWorld=b2Vec2(0.0f,98.0f);
locationWorld=b2Vec2(0,32);
// double mass=ballBody->GetMass();
ballBody->ApplyLinearImpulse(locationWorld, ballBody->GetWorldCenter());
// ballBody->ApplyForce(mass*locationWorld, ballBody->GetWorldCenter());
ballBody->SetLinearDamping(1.2f);
}
}
}
So where i apply logic??