diff --git a/src/simulation/elements/DEST.cpp b/src/simulation/elements/DEST.cpp index 42124c752..fd4f6530b 100644 --- a/src/simulation/elements/DEST.cpp +++ b/src/simulation/elements/DEST.cpp @@ -59,7 +59,7 @@ int Element_DEST::update(UPDATE_FUNC_ARGS) if (parts[i].life<=0 || parts[i].life>37) { - parts[i].life = RNG::Ref().between(30, 59); + parts[i].life = RNG::Ref().between(30, 49); sim->pv[y/CELL][x/CELL]+=60.0f; } if (rt == PT_PLUT || rt == PT_DEUT) diff --git a/src/simulation/elements/LIGH.cpp b/src/simulation/elements/LIGH.cpp index 00610d819..1770769bb 100644 --- a/src/simulation/elements/LIGH.cpp +++ b/src/simulation/elements/LIGH.cpp @@ -91,7 +91,7 @@ int Element_LIGH::update(UPDATE_FUNC_ARGS) rt = TYP(r); if ((surround_space || sim->elements[rt].Explosive) && (rt!=PT_SPNG || parts[ID(r)].life==0) && - sim->elements[rt].Flammable && (sim->elements[rt].Flammable + RNG::Ref().chance(sim->pv[(y+ry)/CELL][(x+rx)/CELL] * 10.0f, 1000))) + sim->elements[rt].Flammable && RNG::Ref().chance(sim->elements[rt].Flammable + sim->pv[(y+ry)/CELL][(x+rx)/CELL] * 10.0f, 1000)) { sim->part_change_type(ID(r),x+rx,y+ry,PT_FIRE); parts[ID(r)].temp = restrict_flt(sim->elements[PT_FIRE].Temperature + (sim->elements[rt].Flammable/2), MIN_TEMP, MAX_TEMP); diff --git a/src/simulation/elements/NEUT.cpp b/src/simulation/elements/NEUT.cpp index 5f975e86b..e5a42c50b 100644 --- a/src/simulation/elements/NEUT.cpp +++ b/src/simulation/elements/NEUT.cpp @@ -70,7 +70,7 @@ int Element_NEUT::update(UPDATE_FUNC_ARGS) { if (RNG::Ref().chance(1, 3)) { - sim->create_part(ID(r), x+rx, y+ry, RNG::Ref().chance(1, 3) ? PT_LAVA : PT_URAN); + sim->create_part(ID(r), x+rx, y+ry, RNG::Ref().chance(2, 3) ? PT_LAVA : PT_URAN); parts[ID(r)].temp = MAX_TEMP; if (parts[ID(r)].type==PT_LAVA) { parts[ID(r)].tmp = 100; diff --git a/src/simulation/elements/SPNG.cpp b/src/simulation/elements/SPNG.cpp index 9616ce9f6..e679869de 100644 --- a/src/simulation/elements/SPNG.cpp +++ b/src/simulation/elements/SPNG.cpp @@ -73,7 +73,7 @@ int Element_SPNG::update(UPDATE_FUNC_ARGS) if (parts[i].lifekill_part(ID(r)); else sim->part_change_type(ID(r), x+rx, y+ry, PT_SALT); diff --git a/src/simulation/elements/STKM.cpp b/src/simulation/elements/STKM.cpp index 2f30396d5..0d1533b06 100644 --- a/src/simulation/elements/STKM.cpp +++ b/src/simulation/elements/STKM.cpp @@ -468,7 +468,7 @@ int Element_STKM::run_stickman(playerst *playerp, UPDATE_FUNC_ARGS) { if (angle<0) angle+=360; parts[np].tmp = angle; - parts[np].life = RNG::Ref().between(0, 2+power/15) + power/7; + parts[np].life = RNG::Ref().between(0, 1+power/15) + power/7; parts[np].temp = parts[np].life*power/2.5; parts[np].tmp2 = 1; } @@ -592,7 +592,7 @@ void Element_STKM::STKM_interact(Simulation *sim, playerst *playerp, int i, int { if (TYP(r)==PT_SPRK && playerp->elem!=PT_LIGH) //If on charge { - sim->parts[i].life -= RNG::Ref().between(32, 52); + sim->parts[i].life -= RNG::Ref().between(32, 51); } if (sim->elements[TYP(r)].HeatConduct && (TYP(r)!=PT_HSWC||sim->parts[ID(r)].life==10) && ((playerp->elem!=PT_LIGH && sim->parts[ID(r)].temp>=323) || sim->parts[ID(r)].temp<=243) && (!playerp->rocketBoots || TYP(r)!=PT_PLSM))