Skip to content

Commit e4d3ba5

Browse files
committed
make color changes of Emitter_Fountain slower, make speed of Emitter_Side configurable (with new constructor)
1 parent 9f997ff commit e4d3ba5

File tree

3 files changed

+16
-5
lines changed

3 files changed

+16
-5
lines changed

Emitter_Fountain.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,6 @@ void Emitter_Fountain::emit(Particle_Abstract *particle, ParticleSysConfig *g)
6060
particle->vy = vy + random(var)-_hVar;
6161
}
6262
particle->ttl = random(minLife, maxLife);
63-
particle->hue = counter%255;
63+
particle->hue = (counter/2)%255;
6464
particle->isAlive = true;
6565
}

Emitter_Side.cpp

+12-4
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,14 @@ Emitter_Side::Emitter_Side(char side)
2020
{
2121
counter = 0;
2222
this->side = side;
23+
this->minVelocity = 1;
24+
this->maxVelocity = 4;
25+
}
26+
Emitter_Side::Emitter_Side(char side, uint8_t minVelocity, uint8_t maxVelocity) {
27+
counter = 0;
28+
this->side = side;
29+
this->minVelocity = minVelocity;
30+
this->maxVelocity = maxVelocity;
2331
}
2432

2533
void Emitter_Side::emit(Particle_Abstract *particle, ParticleSysConfig *g)
@@ -31,24 +39,24 @@ void Emitter_Side::emit(Particle_Abstract *particle, ParticleSysConfig *g)
3139
particle->x = random(g->max_x);
3240
particle->y = g->max_y-g->res_y;
3341
particle->vx = 0;
34-
particle->vy = random(-4,0);
42+
particle->vy = random(-maxVelocity,(-minVelocity)+1);
3543
break;
3644
case 'r':
3745
particle->x = g->max_x-g->res_x;
3846
particle->y = random(g->max_y);
39-
particle->vx = random(-4,0);
47+
particle->vx = random(-maxVelocity,(-minVelocity)+1);
4048
particle->vy = 0;
4149
break;
4250
case 't':
4351
particle->x = random(g->max_x);
4452
particle->y = 1;
4553
particle->vx = 0;
46-
particle->vy = random(1,5);
54+
particle->vy = random(minVelocity,maxVelocity+1);
4755
break;
4856
case 'l':
4957
particle->x = 1;
5058
particle->y = random(g->max_y);
51-
particle->vx = random(1,5);
59+
particle->vx = random(minVelocity,maxVelocity+1);
5260
particle->vy = 0;
5361
break;
5462
}

Emitter_Side.h

+3
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,11 @@ class Emitter_Side : public Emitter_Abstract {
2323
static byte maxTtl;
2424
unsigned int counter;
2525
char side;
26+
uint8_t minVelocity;
27+
uint8_t maxVelocity;
2628

2729
Emitter_Side(char side);
30+
Emitter_Side(char side, uint8_t minVelocity, uint8_t maxVelocity);
2831
void emit(Particle_Abstract *particle, ParticleSysConfig *g);
2932
};
3033

0 commit comments

Comments
 (0)