diff options
| author | Phil <cracker642@gmail.com> | 2010-09-08 00:32:51 (GMT) |
|---|---|---|
| committer | Phil <cracker642@gmail.com> | 2010-09-08 00:32:51 (GMT) |
| commit | eb7206aa304ac46ee08d4d2466b48ffe217f7bcb (patch) | |
| tree | 263bea4f47667e7350c10d94ce451d14ed5ae8fc /powder.c | |
| parent | d7bb4932e675f31381f36bcc1dd933f875ac9496 (diff) | |
| download | powder-eb7206aa304ac46ee08d4d2466b48ffe217f7bcb.zip powder-eb7206aa304ac46ee08d4d2466b48ffe217f7bcb.tar.gz | |
Fireworks look much better, and random colors for each firework yay!
Diffstat (limited to 'powder.c')
| -rw-r--r-- | powder.c | 40 |
1 files changed, 19 insertions, 21 deletions
@@ -1911,41 +1911,42 @@ player[23] = 1; create_part(-1, x , y-1 , PT_FWRK); r = pmap[y-1][x]; - parts[r>>8].vy = rand()%5-10; - parts[r>>8].vx = rand()%5-rand()%5; + parts[r>>8].vy = rand()%10-25; + parts[r>>8].vx = rand()%30-rand()%30; parts[r>>8].life=rand()%30+50; parts[i].type=PT_NONE; } if(parts[i].life>1) { - if(parts[i].life>5) - { - parts[i].vy += rand()%3-rand()%5; - parts[i].vx += rand()%3-rand()%3; - } parts[i].life--; + if(parts[i].life>=90&&parts[i].type==PT_FWRK) + parts[i].life=0; } - if(parts[i].life==1||(parts[i].vy>6&&parts[i].life>1)) + if((parts[i].life<3&&parts[i].life>0)||parts[i].vy>6&&parts[i].life>0) { - int q = (rand()%6+1)*200+50; + int q = (rand()%255+1); + int w = (rand()%255+1); + int e = (rand()%255+1); for(nx=-1; nx<2; nx++) - for(ny=-1; ny<2; ny++) + for(ny=-2; ny<3; ny++) if(x+nx>=0 && y+ny>0 && - x+nx<XRES && y+ny<YRES && (nx || ny)) + x+nx<XRES && y+ny<YRES) { if(5>=rand()%8) { - create_part(-1, x+nx, y+ny , PT_DUST); a= pmap[y+ny][x+nx]; - parts[a>>8].vy = rand()%(ny*16+4)-rand()%9; - parts[a>>8].vx = rand()%(nx*16+4)-rand()%9; - parts[a>>8].life= q; + parts[a>>8].vy = -(rand()%8+1); + parts[a>>8].vx = rand()%8-rand()%8+(parts[i].vx)*2; + parts[a>>8].life= rand()%75+175; + parts[a>>8].tmp=q; + parts[a>>8].flags=w; + parts[a>>8].ctype=e; parts[a>>8].temp= rand()%20+600; - parts[i].type=PT_NONE; } + } - + parts[i].type=PT_NONE; } } if(t==PT_DUST&&!parts[i].life==0) @@ -1953,10 +1954,7 @@ player[23] = 1; if(parts[i].life>=0) { parts[i].life--; - if(parts[i].life<=50||(parts[i].life>248&&parts[i].life<252)||(parts[i].life>448&&parts[i].life<452)||(parts[i].life>648&&parts[i].life<652)|| - (parts[i].life>848&&parts[i].life<852)||(parts[i].life>1048&&parts[i].life<1052)||parts[i].life==rand()%50+50||parts[i].life==rand()%50+10|| - parts[i].life==rand()%50+250||parts[i].life==rand()%50+350||parts[i].life==rand()%50+450||parts[i].life==rand()%50+550||parts[i].life==rand()%50+50||parts[i].life==rand()%50+10|| - parts[i].life==rand()%50+250||parts[i].life==rand()%50+350||parts[i].life==rand()%50+450||parts[i].life==rand()%50+550) + if(parts[i].life<1) parts[i].type=PT_NONE; } |
