The first step in collision management is to know when two bodies collide and when two bodies do not collide anymore.
Do you remember your very first project, explained in Chapter 2, Adding Bodies to the World, with the ball bouncing on the floor?
We'll use it again to get as much information as we can about the collisions between the ball and the floor.
Change your
Main
function adding three simple lines, shown as follows:public function Main() { world=new b2World(new b2Vec2(0,9.81),true); world.SetContactListener(new customContact()); var bodyDef:b2BodyDef=new b2BodyDef(); bodyDef.position.Set(320/worldScale,30/worldScale); bodyDef.type=b2Body.b2_dynamicBody; bodyDef.userData="Ball"; var circleShape:b2CircleShape; circleShape=new b2CircleShape(25/worldScale); var fixtureDef:b2FixtureDef=new b2FixtureDef(); fixtureDef.shape=circleShape; fixtureDef.density=1; fixtureDef.restitution=0.6; fixtureDef.friction=0.1; var theBall:b2Body=world.CreateBody...