diff options
Diffstat (limited to 'crawl-ref/source/terrain.h')
-rw-r--r-- | crawl-ref/source/terrain.h | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/crawl-ref/source/terrain.h b/crawl-ref/source/terrain.h new file mode 100644 index 0000000000..d4acdb743c --- /dev/null +++ b/crawl-ref/source/terrain.h @@ -0,0 +1,57 @@ +/* + * File: terrain.h + * Summary: Terrain related functions. + * Written by: Linley Henzell + * + * Modified for Crawl Reference by $Author: j-p-e-g $ on $Date: 2007-09-03 06:41:30 -0700 (Mon, 03 Sep 2007) $ + * + * Change History (most recent first): + * + * <1> 9/11/07 MPC Split from misc.h + */ + +#ifndef TERRAIN_H +#define TERRAIN_H + +#include "enum.h" + +class coord_def; + +// last updated 12may2000 {dlb} +/* *********************************************************************** + * called from: acr + * *********************************************************************** */ +bool fall_into_a_pool( int entry_x, int entry_y, bool allow_shift, + unsigned char terrain ); + + +bool grid_is_wall(dungeon_feature_type grid); +bool grid_is_opaque(dungeon_feature_type grid); +bool grid_is_solid(dungeon_feature_type grid); +bool grid_is_stone_stair(dungeon_feature_type grid); +bool grid_is_rock_stair(dungeon_feature_type grid); +bool grid_is_solid(int x, int y); +bool grid_is_solid(const coord_def &c); +bool grid_is_trap(dungeon_feature_type grid); +command_type grid_stair_direction(dungeon_feature_type grid); +bool grid_sealable_portal(dungeon_feature_type grid); +bool grid_is_portal(dungeon_feature_type grid); + +bool grid_is_water(dungeon_feature_type grid); +bool grid_is_watery(dungeon_feature_type grid); +god_type grid_altar_god( dungeon_feature_type grid ); +dungeon_feature_type altar_for_god( god_type god ); +bool grid_is_branch_stairs( dungeon_feature_type grid ); +int grid_secret_door_appearance( int gx, int gy ); +bool grid_destroys_items( dungeon_feature_type grid ); + +const char *grid_item_destruction_message( dungeon_feature_type grid ); + +// Terrain changed under 'pos', perform necessary effects. +void dungeon_terrain_changed(const coord_def &pos, + dungeon_feature_type feat = DNGN_UNSEEN, + bool affect_player = true, + bool preserve_features = false, + bool preserve_items = false); + +#endif |