summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/quiver.cc
diff options
context:
space:
mode:
authorSamuel Bronson <naesten@gmail.com>2013-03-20 18:51:02 -0400
committerSamuel Bronson <naesten@gmail.com>2013-03-20 19:10:18 -0400
commit8a4c45beecdfe9b937771130063c58637cef8beb (patch)
tree1520a02df86b2d1545d8bda8ef4b5ce490dd93f7 /crawl-ref/source/quiver.cc
parentf30ac8358eafbb6a2693cecaf3cf552c7c6a2b09 (diff)
downloadcrawl-ref-8a4c45beecdfe9b937771130063c58637cef8beb.tar.gz
crawl-ref-8a4c45beecdfe9b937771130063c58637cef8beb.zip
Simplify a couple of things in quiver.cc
Diffstat (limited to 'crawl-ref/source/quiver.cc')
-rw-r--r--crawl-ref/source/quiver.cc14
1 files changed, 5 insertions, 9 deletions
diff --git a/crawl-ref/source/quiver.cc b/crawl-ref/source/quiver.cc
index b52f7a3823..9a4797168c 100644
--- a/crawl-ref/source/quiver.cc
+++ b/crawl-ref/source/quiver.cc
@@ -598,8 +598,8 @@ static int _get_pack_slot(const item_def& item)
// First try to find the exact same item.
for (int i = 0; i < ENDOFPACK; i++)
{
- const item_def& inv_item = you.inv[i];
- if (inv_item.quantity && _items_similar(item, you.inv[i], false)
+ const item_def &inv_item = you.inv[i];
+ if (inv_item.quantity && _items_similar(item, inv_item, false)
&& !_wielded_slot_no_quiver(i))
{
return i;
@@ -609,8 +609,8 @@ static int _get_pack_slot(const item_def& item)
// If that fails, try to find an item sufficiently similar.
for (int i = 0; i < ENDOFPACK; i++)
{
- const item_def& inv_item = you.inv[i];
- if (inv_item.quantity && _items_similar(item, you.inv[i], true)
+ const item_def &inv_item = you.inv[i];
+ if (inv_item.quantity && _items_similar(item, inv_item, true)
&& !_wielded_slot_no_quiver(i))
{
return i;
@@ -647,9 +647,5 @@ static ammo_t _get_weapon_ammo_type(const item_def* weapon)
static bool _items_similar(const item_def& a, const item_def& b, bool force)
{
- if (!force)
- return (items_similar(a, b) && a.slot == b.slot);
-
- // This is a reasonable implementation for now.
- return items_stack(a, b, force);
+ return (items_similar(a, b) && (force || a.slot == b.slot));
}