diff options
Diffstat (limited to 'crawl-ref/source/spells4.cc')
-rw-r--r-- | crawl-ref/source/spells4.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/crawl-ref/source/spells4.cc b/crawl-ref/source/spells4.cc index 1c665cec12..4f005c81ac 100644 --- a/crawl-ref/source/spells4.cc +++ b/crawl-ref/source/spells4.cc @@ -191,6 +191,7 @@ static int shatter_monsters(int x, int y, int pow, int garbage) case MONS_ICE_BEAST: // 3/2 damage case MONS_SIMULACRUM_SMALL: case MONS_SIMULACRUM_LARGE: + case MONS_SILVER_STATUE: dam_dice.num = 4; break; @@ -201,6 +202,7 @@ static int shatter_monsters(int x, int y, int pow, int garbage) case MONS_STONE_GOLEM: case MONS_IRON_GOLEM: case MONS_CRYSTAL_GOLEM: + case MONS_ORANGE_STATUE: case MONS_EARTH_ELEMENTAL: case MONS_GARGOYLE: case MONS_SKELETAL_DRAGON: @@ -2476,6 +2478,27 @@ void cast_fragmentation(int pow) // jmf: ripped idea from airstrike blast.damage.num += 1; break; + case MONS_SILVER_STATUE: + case MONS_ORANGE_STATUE: + explode = true; + blast.ex_size = 2; + if (menv[mon].type == MONS_SILVER_STATUE) + { + blast.name = "blast of silver fragments"; + blast.colour = WHITE; + blast.damage.num = 3; + } + else + { + blast.name = "blast of orange crystal shards"; + blast.colour = LIGHTRED; + blast.damage.num = 6; + } + + if (player_hurt_monster(mon, roll_dice( blast.damage ))) + blast.damage.num += 2; + break; + case MONS_CRYSTAL_GOLEM: explode = true; blast.ex_size = 2; |