Vector2 acc(0,0);
+ float CoR = e->CoR;
float radius = 0;
const Ball* b = dynamic_cast<const Ball*>(e);
if( b != NULL )
if(pos.y > 600-radius && velo.y > 0)
- acc.y += velo.y * -2;
+ acc.y += velo.y * -(1 + CoR);
if(pos.y < 0+radius && velo.y < 0)
- acc.y += velo.y * -2;
+ acc.y += velo.y * -(1 + CoR);
if(pos.x > 800-radius && velo.x > 0)
- acc.x += velo.x * -2;
+ acc.x += velo.x * -(1 + CoR);
if(pos.x < 0+radius && velo.x < 0)
- acc.x += velo.x * -2;
+ acc.x += velo.x * -(1 + CoR);
return acc;
}
/// ***** Constructors/Destructors *****
PhysicsEntity::PhysicsEntity(const Vector2& pos)
- : Entity(pos), force(0,0), mass(1), CoR(1)
+ : Entity(pos), force(0,0), mass(1), CoR(0.8)
{
}