diff options
| author | jacksonmj <mj-pt@jacksonmj.co.uk> | 2012-09-02 20:44:19 (GMT) |
|---|---|---|
| committer | jacksonmj <mj-pt@jacksonmj.co.uk> | 2012-09-02 20:48:28 (GMT) |
| commit | 355dcf50d2292b7505696ffbb85be4daa27a7930 (patch) | |
| tree | 2458705e36df33e1601332055cc352ae2939c55b /src/elements | |
| parent | 48dbf1704c4c18779bd88582a5db326dabd818b2 (diff) | |
| download | powder-355dcf50d2292b7505696ffbb85be4daa27a7930.zip powder-355dcf50d2292b7505696ffbb85be4daa27a7930.tar.gz | |
WOOD and PLNT turn grey when hot, bluish when cold
Diffstat (limited to 'src/elements')
| -rw-r--r-- | src/elements/plnt.c | 19 | ||||
| -rw-r--r-- | src/elements/wood.c | 40 |
2 files changed, 59 insertions, 0 deletions
diff --git a/src/elements/plnt.c b/src/elements/plnt.c index 8fff1a6..3bdfeac 100644 --- a/src/elements/plnt.c +++ b/src/elements/plnt.c @@ -66,5 +66,24 @@ int update_PLNT(UPDATE_FUNC_ARGS) { } parts[i].life = 0; } + if (parts[i].temp > 400 && parts[i].temp > parts[i].tmp2) + parts[i].tmp2 = (int)parts[i].temp; + return 0; +} + +int graphics_PLNT(GRAPHICS_FUNC_ARGS) +{ + float maxtemp = fmax(cpart->tmp2,cpart->temp); + if (maxtemp > 300) + { + *colr += (int)restrict_flt((maxtemp-300)/5,0,58); + *colg -= (int)restrict_flt((maxtemp-300)/2,0,102); + *colb += (int)restrict_flt((maxtemp-300)/5,0,70); + } + if (maxtemp < 273) + { + *colg += (int)restrict_flt((273-maxtemp)/4,0,255); + *colb += (int)restrict_flt((273-maxtemp)/1.5,0,255); + } return 0; } diff --git a/src/elements/wood.c b/src/elements/wood.c new file mode 100644 index 0000000..e5fec9a --- /dev/null +++ b/src/elements/wood.c @@ -0,0 +1,40 @@ +/* + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#include <element.h> + +int update_WOOD(UPDATE_FUNC_ARGS) { + if (parts[i].temp > 550 && parts[i].temp > parts[i].tmp) + parts[i].tmp = (int)parts[i].temp; + return 0; +} + +int graphics_WOOD(GRAPHICS_FUNC_ARGS) +{ + float maxtemp = fmax(cpart->tmp,cpart->temp); + if (maxtemp > 400) + { + *colr -= (int)restrict_flt((maxtemp-400)/3,0,172); + *colg -= (int)restrict_flt((maxtemp-400)/4,0,140); + *colb -= (int)restrict_flt((maxtemp-400)/20,0,44); + } + if (maxtemp < 273) + { + *colr -= (int)restrict_flt((273-maxtemp)/5,0,40); + *colg += (int)restrict_flt((273-maxtemp)/4,0,40); + *colb += (int)restrict_flt((273-maxtemp)/1.5,0,150); + } + return 0; +} |
