diff options
Diffstat (limited to 'crawl-ref/source/beam.cc')
-rw-r--r-- | crawl-ref/source/beam.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/crawl-ref/source/beam.cc b/crawl-ref/source/beam.cc index abe97ceb66..451cadd81d 100644 --- a/crawl-ref/source/beam.cc +++ b/crawl-ref/source/beam.cc @@ -3140,7 +3140,7 @@ void bolt::drop_object() return; } - if (!thrown_object_destroyed(item, pos(), false)) + if (!thrown_object_destroyed(item, pos())) { if (item->sub_type == MI_THROWING_NET) { @@ -3154,10 +3154,10 @@ void bolt::drop_object() set_item_stationary(*item); } } + copy_item_to_grid(*item, pos(), 1); } - else if (item->sub_type == MI_LARGE_ROCK - && !feat_destroys_items(grd(pos()))) + else if (item->sub_type == MI_LARGE_ROCK) { // Large rocks mulch to stone. std::string sound_msg = "You hear a cracking sound!"; @@ -3176,6 +3176,10 @@ void bolt::drop_object() copy_item_to_grid(*item, pos(), item->quantity); } + else + { + item_was_destroyed(*item, NON_MONSTER); + } } // Returns true if the beam hits the player, fuzzing the beam if necessary |