summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/enum.h
diff options
context:
space:
mode:
authorzelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573>2007-09-19 06:42:50 +0000
committerzelgadis <zelgadis@c06c8d41-db1a-0410-9941-cceddc491573>2007-09-19 06:42:50 +0000
commit4958b84b497fe729eaf14bc90b8d01874722c33d (patch)
tree12bce6e34f779166f7cdcefee95255b53d9ba8b3 /crawl-ref/source/enum.h
parent63318a4b57b03ffc4686e4a3b78d64b73f50b6b9 (diff)
downloadcrawl-ref-4958b84b497fe729eaf14bc90b8d01874722c33d.tar.gz
crawl-ref-4958b84b497fe729eaf14bc90b8d01874722c33d.zip
Introduces three new wall types, translucent versions of the normal
rock wall, stone wall and permanent rock wall. These are for use in vaults, and are never randomly generated. Magically translucent versions of the normal wall types are used, rather than glass, so we don't have to figure out how glass would react to things like digging and Shatter, but can re-use the code for the normal wall types. I've tried to fix all the places where the old code assumes that any square which is visible to the player has no walls between it and the player, but I've probably missed lots; this will require a lot of play testing before its ready for non-developers. viewwindow() now has two calls to losight(), the second one determining what squares would be visible if all translucent walls were made transparent, so that there's a quick way to see if there's any translucent walls between the player and a square. This second call to losight() doesn't cause any noticeable slowdown for me, but it might on an older system. Other than viewwindow() making a second call to losight(), there shouldn't be any changes to game-play or game-logic if there aren't any translucent walls around. The wizard blinking command (&b) has been changed so that it ignores all normal restrictions except for needing to see the target square and not landing on monsters; if the player lands on a wall square it's changed to floor. Wizard blinking also doesn't increase magical contamination. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2145 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/enum.h')
-rw-r--r--crawl-ref/source/enum.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/crawl-ref/source/enum.h b/crawl-ref/source/enum.h
index 7190d429cf..1343e4d5f9 100644
--- a/crawl-ref/source/enum.h
+++ b/crawl-ref/source/enum.h
@@ -812,7 +812,14 @@ enum dungeon_char_type
// * Any: edit dat/descript.txt and add a long description if appropriate.
// * Any: check the grid_* functions in misc.cc and make sure
// they return sane values for your new feature.
-//
+// * Any: edit dungeon.cc and add a symbol to map_feature() and
+// vault_grid() for the feature, if you want vault maps to
+// be able to use it. If you do, also update
+// docs/level-design.txt with the new symbol.
+// * Any: edit luadgn.cc and add the feature's name to the dngn_feature_names
+// array, if you want vault map Lua code to be able to use the
+// feature, and/or you want to be able to create the feature
+// using the "create feature by name" wizard command.
// Also take note of MINMOVE and MINSEE above.
//
enum dungeon_feature_type
@@ -827,9 +834,12 @@ enum dungeon_feature_type
DNGN_ORCISH_IDOL,
DNGN_WAX_WALL, // 8
DNGN_PERMAROCK_WALL, // 9 - for undiggable walls
+ DNGN_CLEAR_ROCK_WALL, // 10 - Transparent
+ DNGN_CLEAR_STONE_WALL, // 11 - Transparent
+ DNGN_CLEAR_PERMAROCK_WALL, // 12 - Transparent
// XXX: lowest grid value which can be seen through
- DNGN_MINSEE = 11,
+ DNGN_MINSEE = 10,
DNGN_GRANITE_STATUE = 21, // 21
DNGN_STATUE_RESERVED_1,