diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-11-09 18:19:00 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2006-11-09 18:19:00 +0000 |
commit | 84d24b72b573becc9cfed52b423c4c9da8180456 (patch) | |
tree | 46021359f276b78fd5ec37e8b57e4c10ace54c5e /crawl-ref/source/dungeon.cc | |
parent | 414ade94db4f4c13c8b8b2f95ca0eb9a238cc559 (diff) | |
download | crawl-ref-84d24b72b573becc9cfed52b423c4c9da8180456.tar.gz crawl-ref-84d24b72b573becc9cfed52b423c4c9da8180456.zip |
[1589854] Orange and silver statues are now monsters. Statue effects are handled
as monster special abilities. Disintegration continues to instakill, and the
statue can also be destroyed physically.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup@377 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/dungeon.cc')
-rw-r--r-- | crawl-ref/source/dungeon.cc | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/crawl-ref/source/dungeon.cc b/crawl-ref/source/dungeon.cc index f210d817e0..2cf8c88e3d 100644 --- a/crawl-ref/source/dungeon.cc +++ b/crawl-ref/source/dungeon.cc @@ -5605,7 +5605,8 @@ static int vault_grid( int level_number, int vx, int vy, int altar_count, int not_used; // first, set base tile for grids {dlb}: - grd[vx][vy] = ((vgrid == 'x') ? DNGN_ROCK_WALL : + const int grid = + grd[vx][vy] = ((vgrid == 'x') ? DNGN_ROCK_WALL : (vgrid == 'X') ? DNGN_PERMAROCK_WALL : (vgrid == 'c') ? DNGN_STONE_WALL : (vgrid == 'v') ? DNGN_METAL_WALL : @@ -5742,6 +5743,19 @@ static int vault_grid( int level_number, int vx, int vy, int altar_count, break; } + if (grid == DNGN_ORANGE_CRYSTAL_STATUE + || grid == DNGN_SILVER_STATUE) + { + const int mtype = + grid == DNGN_ORANGE_CRYSTAL_STATUE? MONS_ORANGE_STATUE + : MONS_SILVER_STATUE; + + grd[vx][vy] = DNGN_FLOOR; + + place_monster( not_used, mtype, 30, BEH_HOSTILE, + MHITNOT, true, vx, vy, false); + } + // finally, handle grids that place monsters {dlb}: if (vgrid >= '0' && vgrid <= '9') { |