Should be fixed now.
Here is a Zelda.exe (2.53.0) Binary with the implemented fix, if anyone wishes to check for any continuing bugs or new issues.
I ended up going with this, so that future flags would be easier to implement:
Code:
int branglevel = itemsbuf[parentitem>-1 ? parentitem : current_item_id(itype_brang)].fam_type;
switch ( branglevel )
{
case 0:
case 1:
{
if(findentrance(x,y,mfBRANG,true)) dead=deadval; break;
}
case 2:
{
if(findentrance(x,y,mfBRANG,true)) dead=deadval;
if(findentrance(x,y,mfMBRANG,true)) dead=deadval;
break;
}
case 3:
{
goto brang_level_3_or_higher;
}
default: //level higher than 3
{
goto brang_level_3_or_higher;
}
brang_level_3_or_higher:
{
if(findentrance(x,y,mfBRANG,true)) dead=deadval;
if(findentrance(x,y,mfMBRANG,true)) dead=deadval;
if(findentrance(x,y,mfFBRANG,true)) dead=deadval;
break;
}
}