diff options
author | pauldubois <pauldubois@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-04-11 10:55:40 +0000 |
---|---|---|
committer | pauldubois <pauldubois@c06c8d41-db1a-0410-9941-cceddc491573> | 2008-04-11 10:55:40 +0000 |
commit | a0065e7a7d5c55f0cf93c758f26afa9a86b16572 (patch) | |
tree | 74d513f5d251dd57f5b64c5ffb85703c4e08c70a /crawl-ref/source/spells4.cc | |
parent | 172fd76cadb63cb41be2758b044b3f16c29a5fbf (diff) | |
download | crawl-ref-a0065e7a7d5c55f0cf93c758f26afa9a86b16572.tar.gz crawl-ref-a0065e7a7d5c55f0cf93c758f26afa9a86b16572.zip |
+ allocate and initialize
+ _fire_prompt_for_item returns -1, not ENDOFPACK
+ remove _fire_get_noitem_reason()
+ remove get_current_fire_item()
+ fix get_next_fire_item
+ remove _get_fire_order()
+ remove _fire_item_matches()
+ verify: no use of ENDOFPACK, use -1
+ on_item_fired
- implement: tags stuff
+ bug: wielding sling with stones = empty quiver
- bug: wield sling, no quiver, pick up stones: should quiver
+ bug: wield sling, pick up stones: update # stones
+ bug: wield sling, stones quivered, drop stones: should update
- feature: explicitly dropping all of ammo stack should remove it from quiver
- move get_next_fire_item into quiver.cc?
- remove: fire_quiver_best
- remove: you.quiver
- rename: you.quiver_change -> you.redraw_quiver
- test no item because of fire_order_begin, =f, etc
- find better place for on_weapon_changed
- polish Qv: display, the command change
- PROBLEM: cast_portal_projectile uses empty quiver slot? (test this)
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4191 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/spells4.cc')
-rw-r--r-- | crawl-ref/source/spells4.cc | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/crawl-ref/source/spells4.cc b/crawl-ref/source/spells4.cc index 90ccd5ac9e..cbb771dfaa 100644 --- a/crawl-ref/source/spells4.cc +++ b/crawl-ref/source/spells4.cc @@ -44,6 +44,7 @@ #include "mstuff2.h" #include "ouch.h" #include "player.h" +#include "quiver.h" #include "randart.h" #include "religion.h" #include "skills.h" @@ -2424,12 +2425,19 @@ bool cast_portal_projectile(int pow, bolt& beam) return 0; } - const int idx = get_current_fire_item(); - if ( idx == ENDOFPACK ) + int idx; + const item_def* item; + you.m_quiver->get_desired_item(&item, &idx); + if ( item == NULL ) { mpr("No suitable missiles."); return false; } + else if ( idx == -1 ) + { + mpr("No missiles left."); + return false; + } throw_it( beam, idx, true, random2(pow/4) ); return true; |