summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/l_item.cc
diff options
context:
space:
mode:
authorNeil Moore <neil@s-z.org>2011-12-08 13:20:01 -0500
committerNeil Moore <neil@s-z.org>2011-12-08 13:20:01 -0500
commit18444e85adfd61bdde0bcea2b8b8261425bbf345 (patch)
treefa1548455b08c42150c4b3deee45a0cf87cd224d /crawl-ref/source/l_item.cc
parent511968cf2d9bed1d1f4baf1682802dee31dcfda7 (diff)
downloadcrawl-ref-18444e85adfd61bdde0bcea2b8b8261425bbf345.tar.gz
crawl-ref-18444e85adfd61bdde0bcea2b8b8261425bbf345.zip
Add item.is_melded to clua, check it in autofight.
We shouldn't try to fire a melded bow, or reach with a melded polearm. Fixes #5026.
Diffstat (limited to 'crawl-ref/source/l_item.cc')
-rw-r--r--crawl-ref/source/l_item.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/crawl-ref/source/l_item.cc b/crawl-ref/source/l_item.cc
index 61b8dd2677..d741612a4b 100644
--- a/crawl-ref/source/l_item.cc
+++ b/crawl-ref/source/l_item.cc
@@ -530,6 +530,16 @@ IDEF(dropped)
return (1);
}
+IDEF(is_melded)
+{
+ if (!item || !item->defined())
+ return (0);
+
+ lua_pushboolean(ls, item_is_melded(*item));
+
+ return (1);
+}
+
IDEF(can_cut_meat)
{
if (!item || !item->defined())
@@ -1007,6 +1017,7 @@ static ItemAccessor item_attrs[] =
{ "is_ranged", l_item_is_ranged },
{ "is_throwable", l_item_is_throwable },
{ "dropped", l_item_dropped },
+ { "is_melded", l_item_is_melded },
{ "can_cut_meat", l_item_can_cut_meat },
{ "is_bad_food", l_item_is_bad_food },
{ "is_useless", l_item_is_useless },