int token = get_trap_type($1);
if (token == ERR || token == 0)
lc_error("Unknown trap type '%s'!", $1);
+ Free($1);
$$ = (1L << (token - 1));
}
| ALL_ID
if ((1L << (token - 1)) & $3)
lc_error("Monster seen_traps, trap '%s' listed twice.", $1);
-
+ Free($1);
$$ = ((1L << (token - 1)) | $3);
}
;
$$ = -1;
} else
$$ = SP_MONST_PACK(m, def_monsyms[(int)mons[m].mlet].sym);
+ Free($1);
}
| CHAR
{
$$ = -1;
} else
$$ = SP_MONST_PACK(m, $2);
+ Free($4);
}
| RANDOM_TYPE
{
$$ = -1;
} else
$$ = SP_OBJ_PACK(m, 1); /* obj class != 0 to force generation of a specific item */
-
+ Free($1);
}
| CHAR
{
$$ = -1;
} else
$$ = SP_OBJ_PACK(m, $2);
+ Free($4);
}
| RANDOM_TYPE
{