Jump to content

Moving group objects


Fla5h
 Share

Recommended Posts

ok so i have a quick question

 

i have a full game running but i cant figure out how to get my group of enemys to follow my player. I tried this for a single enemy and it works,  but it wont work for my enemys group 

(the group is called "enemys")
// this will cause the enemy to follow the player, this works game.physics.moveTowardsObject(enemy, player, 100);
// this will cause the group enemys to follow the player , doesn't work game.physics.moveTowardsObject(enemys, player, 100);

the same thing when i try to assign a particle effect to every member in a group, For when a collision occurs and they are destroyed.

Am i supposed to control groups another way?

Link to comment
Share on other sites

I moved your post to its own thread because it wasn't relevant to the thread you originally posted it on, and warrants a thread in its own right.

 

The answer is that moveTowardsObject expects a Sprite to be given to it, not a Group. However once we release Phaser 1.0.7 later this week you'll be able to do this:

(function () {	var game = new Phaser.Game(800, 600, Phaser.AUTO, '', { preload: preload, create: create, update: update });	function preload() {		game.load.image('ball', 'assets/sprites/shinyball.png');	}	var balls;	function create() {		balls = game.add.group();		for (var i = 0; i < 50; i++)		{			balls.create(game.world.randomX, game.world.randomY, 'ball');		}	}	function update() {		if (game.input.mousePointer.isDown)		{			//	First is the callback			//	Second is the context in which the callback runs, in this case game.physics			//	Third is the parameter/s the callback expects			balls.forEach(game.physics.moveTowardsMouse, game.physics, false, 200);		}		else		{			balls.setAll('body.velocity.x', 0);			balls.setAll('body.velocity.y', 0);		}	}})();
Link to comment
Share on other sites

I am having a group collide with sprite, which, group need to set velocity and sprite is static(remain at the main position all the time). I have a few question:

1) collision cannot detect if simply using += y, need to be in velocity?

2) balls.setAll('body.velocity.x', 0);

this line will have this situation - when the group hit the sprite, the sprite will move together with the group. The sprite suppose to be static on the screen. Any solution for this?

 

 

**** I get the answers already. Thanks anyway.  ;)

Link to comment
Share on other sites

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...