From aac8898f42e0e2fb3fcf6a3824ae19d8e676eb8c Mon Sep 17 00:00:00 2001 From: Simon Robertshaw Date: Tue, 14 Jun 2011 18:41:01 +0100 Subject: [PATCH] Prevent photons stealing heat energy --- src/powder.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/powder.c b/src/powder.c index 1c06e4dcf..0c46daa4f 100644 --- a/src/powder.c +++ b/src/powder.c @@ -1646,7 +1646,7 @@ void update_particles_i(pixel *vid, int start, int inc) if ((r>>8)>=NPART || !r) continue; rt = r&0xFF; - if (rt&&ptypes[rt].hconduct&&(rt!=PT_HSWC||parts[r>>8].life==10) + if (rt&&ptypes[rt].hconduct&&ptypes[rt].weight>0&&(rt!=PT_HSWC||parts[r>>8].life==10) &&(t!=PT_FILT||(rt!=PT_BRAY&&rt!=PT_BIZR&&rt!=PT_BIZRG)) &&(rt!=PT_FILT||(t!=PT_BRAY&&t!=PT_PHOT&&t!=PT_BIZR&&t!=PT_BIZRG))) { @@ -1657,8 +1657,7 @@ void update_particles_i(pixel *vid, int start, int inc) } } - pt = parts[i].temp = (c_heat+parts[i].temp*96.645/ptypes[t].hconduct*ptypes[t].weight) - /(c_Cm+96.645/ptypes[t].hconduct*ptypes[t].weight); + pt = parts[i].temp = (c_heat+parts[i].temp*96.645/ptypes[t].hconduct*ptypes[t].weight)/(c_Cm+96.645/ptypes[t].hconduct*ptypes[t].weight); for (j=0; j<8; j++) { parts[surround_hconduct[j]].temp = pt;