Use create_part in resist reactions, and set CarriesCtypeIn for RSSS.

This commit is contained in:
Saveliy Skresanov 2024-04-04 22:20:14 +07:00
parent f8873debc6
commit 1a0eb73ea0
3 changed files with 4 additions and 3 deletions

View File

@ -238,7 +238,7 @@ static int update(UPDATE_FUNC_ARGS)
break;
case PT_RSST: // RSST -> BIZR
sim->part_change_type(ID(r), x + rx, y + ry, PT_BIZR);
sim->create_part(ID(r), x + rx, y + ry, PT_BIZR);
break;
}
}

View File

@ -33,6 +33,7 @@ void Element::Element_RSSS()
Description = "Solidified resist. Blocks pressure and insulates electricity. Liquefies on contact with neutrons.";
Properties = TYPE_SOLID|PROP_NEUTPASS;
CarriesTypeIn = (1U << FIELD_CTYPE) | (1U << FIELD_TMP);
LowPressure = IPL;
LowPressureTransition = NT;

View File

@ -61,7 +61,7 @@ int update(UPDATE_FUNC_ARGS)
// RSST + GUNP = FIRW
if(TYP(r) == PT_GUNP)
{
sim->part_change_type(i, x, y, PT_FIRW);
sim->create_part(i, x, y, PT_FIRW);
sim->kill_part(ID(r));
return 1;
}
@ -69,7 +69,7 @@ int update(UPDATE_FUNC_ARGS)
// RSST + BCOL = FSEP
if(TYP(r) == PT_BCOL)
{
sim->part_change_type(i, x, y, PT_FSEP);
sim->create_part(i, x, y, PT_FSEP);
parts[i].life = 50;
sim->kill_part(ID(r));
return 1;