Extreme performance slowdown in my game after a lot of collisions

:wave:

The world bounds event comes from the physics world itself, so you need only one event handler. Remove this line and add to create() instead:

this.physics.world.on('worldbounds', function (body) {
  body.gameObject.handleBulletBounce();
});

(or something similar)

The easiest solution for this is to use a physics group instead. If you destroy a member the group automatically removes it.

var bulletsGroup = this.physics.add.group();

// This will be simpler:
bulletsGroup.defaults = {};

// …

bulletsGroup.add(bullet); // etc.