mirror of
https://github.com/wassname/phaser.git
synced 2026-06-29 16:30:29 +08:00
Sorted out the QuadTree issues and resolved a small but vital bug in separateX, also re-organised the collision flags in Body.
This commit is contained in:
+16
-3
@@ -25,11 +25,14 @@
|
||||
|
||||
function create() {
|
||||
|
||||
game.world.setSize(2000, 2000);
|
||||
|
||||
aliens = [];
|
||||
|
||||
for (var i = 0; i < 100; i++)
|
||||
for (var i = 0; i < 1000; i++)
|
||||
{
|
||||
var s = game.add.sprite(game.world.randomX, game.world.randomY, 'baddie');
|
||||
s.name = 'alien' + s;
|
||||
s.body.collideWorldBounds = true;
|
||||
s.body.bounce.setTo(1, 1);
|
||||
s.body.velocity.setTo(10 + Math.random() * 10, 10 + Math.random() * 10);
|
||||
@@ -51,6 +54,9 @@
|
||||
|
||||
total = game.physics.quadTree.retrieve(ship);
|
||||
|
||||
// Get the ships top-most ID. If the length of that ID is 1 then we can ignore every other result,
|
||||
// it's simply not colliding with anything :)
|
||||
|
||||
for (var i = 0; i < total.length; i++)
|
||||
{
|
||||
total[i].sprite.alpha = 1;
|
||||
@@ -80,12 +86,19 @@
|
||||
|
||||
for (var i = 0; i < aliens.length; i++)
|
||||
{
|
||||
game.debug.renderRectangle(aliens[i].bounds);
|
||||
// game.debug.renderRectangle(aliens[i].bounds);
|
||||
}
|
||||
|
||||
game.debug.renderText(total.length, 32, 32);
|
||||
game.debug.renderQuadTree(game.physics.quadTree);
|
||||
game.debug.renderRectangle(ship);
|
||||
// game.debug.renderRectangle(ship);
|
||||
|
||||
game.debug.renderText('Index: ' + ship.body.quadTreeIndex, 32, 80);
|
||||
|
||||
for (var i = 0; i < ship.body.quadTreeIDs.length; i++)
|
||||
{
|
||||
game.debug.renderText('ID: ' + ship.body.quadTreeIDs[i], 32, 100 + (i * 20));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user