/*
* File: losparam.h
* Summary: Parameters for the LOS algorithm
*/
// Note: find_ray relies on the fact that 2*OPC_HALF == OPC_OPAQUE.
// On the other hand, losight tracks this explicitly.
;
;
;
// Default LOS rules.
;
static opacity_default opc_default;
// Default LOS rules, but only consider fully opaque features blocking.
// In particular, clouds don't affect the result.
;
static opacity_fullyopaque opc_fullyopaque;
// Make anything solid block in addition to normal LOS.
// XXX: Are trees, bushes solid?
;
static opacity_solid opc_solid;
// Opacity for monster movement, based on the late monster_los.
;
// LOS bounded by fixed presquared radius.
;
// LOS bounded by fixed radius.
;
static bounds_radius bds_deflos = ;
static bounds_radius bds_maxlos = ;
// LOS bounded by current global LOS radius.
;
static bounds_cur_los_radius bds_default;
// Subclasses of this are passed to losight() to modify the
// LOS calculation. Implementations will have to translate between
// relative coordinates (-8,-8)..(8,8) and real coordinates,
// specify how opaque the cells are and determine what values
// are written to the visible cells.
;