diff options
Diffstat (limited to 'src/elements')
| -rw-r--r-- | src/elements/clst.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/elements/clst.c b/src/elements/clst.c index db0eb7c..33e5686 100644 --- a/src/elements/clst.c +++ b/src/elements/clst.c @@ -2,6 +2,7 @@ int update_CLST(UPDATE_FUNC_ARGS) { int r, rx, ry; + float cxy; for (rx=-2; rx<3; rx++) for (ry=-2; ry<3; ry++) if (x+rx>=0 && y+ry>0 && x+rx<XRES && y+ry<YRES && (rx || ry)) @@ -16,7 +17,16 @@ int update_CLST(UPDATE_FUNC_ARGS) { } if ((r&0xFF)==PT_CLST) { - parts[i].vx += 0.01*rx; parts[i].vy += 0.01*ry; + if(parts[i].temp >= 0 && parts[i].temp <294) + cxy = 0.02; + if(parts[i].temp >= 295 && parts[i].temp <349) + cxy = 0.01; + if(parts[i].temp >= 250 && parts[i].temp <499) + cxy = 0.005; + if(parts[i].temp >= 500) + cxy = 0.001; + parts[i].vx += cxy*rx; + parts[i].vy += cxy*ry; } } return 0; |
