The actual transfer is done by 'void TransferSpecial' in p_sectors.cpp
Code: Select all
void TransferSpecial(sector_t *sector, sector_t *model)
{
sector->special = model->special;
sector->damageamount = model->damageamount;
sector->damagetype = model->damagetype;
sector->damageinterval = model->damageinterval;
sector->leakydamage = model->leakydamage;
sector->Flags = (sector->Flags&~SECF_SPECIALFLAGS) | (model->Flags & SECF_SPECIALFLAGS);
}
The offending code is in r_defs.h -
Code: Select all
gamedata/r_defs.h: SECF_SPECIALFLAGS = SECF_DAMAGEFLAGS|SECF_FRICTION|SECF_PUSH|SECF_EXIT1|SECF_EXIT2|SECF_KILLMONSTERS,
I am not sure if it was intentional to omit the secret flag from this or not. I would need to know from either Marisa H or Graf what the most desired outcome for handling this would be.