diff options
author | Samuel Bronson <naesten@gmail.com> | 2013-03-20 18:51:02 -0400 |
---|---|---|
committer | Samuel Bronson <naesten@gmail.com> | 2013-03-20 19:10:18 -0400 |
commit | 8a4c45beecdfe9b937771130063c58637cef8beb (patch) | |
tree | 1520a02df86b2d1545d8bda8ef4b5ce490dd93f7 /crawl-ref/source/quiver.cc | |
parent | f30ac8358eafbb6a2693cecaf3cf552c7c6a2b09 (diff) | |
download | crawl-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.cc | 14 |
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)); } |