diff --git a/src/simulation/elements/CRAY.cpp b/src/simulation/elements/CRAY.cpp index 1caca535f..f22f141b9 100644 --- a/src/simulation/elements/CRAY.cpp +++ b/src/simulation/elements/CRAY.cpp @@ -30,7 +30,7 @@ Element_CRAY::Element_CRAY() HeatConduct = 0; Description = "Particle Ray Emitter. Creates a beam of particles set by its ctype, with a range set by tmp."; - Properties = TYPE_SOLID|PROP_LIFE_DEC; + Properties = TYPE_SOLID; LowPressure = IPL; LowPressureTransition = NT; @@ -68,7 +68,7 @@ int Element_CRAY::update(UPDATE_FUNC_ARGS) } } // only fire when life is 0, but nothing sets the life right now - else if (parts[i].life==0) + else { for (int rx =-1; rx <= 1; rx++) for (int ry = -1; ry <= 1; ry++) @@ -98,6 +98,8 @@ int Element_CRAY::update(UPDATE_FUNC_ARGS) if (colored) parts[nr].dcolour = colored; parts[nr].temp = parts[i].temp; + if (parts[i].life>0) + parts[nr].life = parts[i].life; if(!--partsRemaining) docontinue = 0; }