Can i add friction in air?
Posted
by
Diken
on Game Development
See other posts from Game Development
or by Diken
Published on 2012-09-05T06:16:48Z
Indexed on
2012/09/05
15:52 UTC
Read the original article
Hit count: 164
box2d
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??
© Game Development or respective owner