diff options
Diffstat (limited to 'main.cpp')
-rw-r--r-- | main.cpp | 20 |
1 files changed, 15 insertions, 5 deletions
@@ -947,17 +947,27 @@ void logic(){ o->interact(); objectInteracting=false; } - } } - } } } for(auto &b : currentWorld->build){ - if(b->bsubtype == FOUNTAIN){ - for(int r = 0; r < (rand()%20)+10;r++) - currentWorld->addParticle(rand()%HLINE*3 + b->loc.x + b->width/2,b->loc.y + b->height, HLINE,HLINE, rand()%2 == 0?-(rand()%7)*.01:(rand()%7)*.01,((4+rand()%6)*.05), {0,0,1.0f}, 2500); + switch(b->bsubtype){ + case FOUNTAIN: + for(int r = 0; r < (rand()%20)+10;r++){ + currentWorld->addParticle(rand()%HLINE*3 + b->loc.x + b->width/2,b->loc.y + b->height, HLINE,HLINE, rand()%2 == 0?-(rand()%7)*.01:(rand()%7)*.01,((4+rand()%6)*.05), {0,0,1.0f}, 2500); + currentWorld->particles.back()->fountain = true; + } + break; + case FIRE_PIT: + for(int r = 0; r < (rand()%20)+10;r++){ + currentWorld->addParticle(rand()%(int)(b->width/2) + b->loc.x+b->width/4, b->loc.y+3*HLINE, HLINE, HLINE, rand()%2 == 0?-(rand()%7)*.01:(rand()%7)*.01,((4+rand()%6)*.05), {1.0f,0.0f,0.0f}, 100); + currentWorld->particles.back()->gravity = false; + currentWorld->particles.back()->behind = true; + } + break; + default: break; } } |