Jonny Henly
Jonny Henly

Reputation: 4213

Particles Shooting Out at Random Angles Between Certain Angles

Hello all,

I'm creating a game where some particles are created after a collision between two objects. The particles are then given a random x and y velocity and they shoot out in every direction. I've been trying to alter the way the particles shoot out to resemble Figure 1, where the particles shoot out at a randoom angle between 330 to 30 and 150 to 210 (I wrote the angles in degrees rather than radians for an ease in understanding). The red areas in Figure 1 are where the particles shouldn't shoot out and the blue is where they should. I have not been able to achieve the desired effect however. I was wondering if anyone could assist with a link to helpful reading or an example in code. I have been searching google but cannot find a decent example.

Particle spawn angles, blue being able to spawn, red being unable to spawn. Figure 1

Notes:

Upvotes: 2

Views: 413

Answers (1)

AtomicRobot
AtomicRobot

Reputation: 395

var speed:Number = minSpeed + Math.random() * (maxSpeed - minSpeed);
var angle:Number = Math.random() * 120 - 30;
if (angle > 30) angle += 120;
angle *= Math.PI/180;

var speedX = Math.cos(angle) * speed;
var speedY = Math.sin(angle) * speed;

Upvotes: 2

Related Questions