diff options
author | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-07-13 11:26:38 +0000 |
---|---|---|
committer | dshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573> | 2007-07-13 11:26:38 +0000 |
commit | 0eb7e87096f07509f3fed6a82fab696d505a2c18 (patch) | |
tree | 2b96ba1d50f34f5c3a9c83a22bf7f4dad4ecdd0f /crawl-ref/source/tags.cc | |
parent | a14e48e33b5e1eef0503fa426ff31e0c83628d73 (diff) | |
download | crawl-ref-0eb7e87096f07509f3fed6a82fab696d505a2c18.tar.gz crawl-ref-0eb7e87096f07509f3fed6a82fab696d505a2c18.zip |
[1746014] Added an implicit quiver when firing missiles:
- ^P/^N change the selected missile, but only within a fire_order slot.
i.e., if you're wielding a launcher and have "launcher" first in your
fire order, ^N and ^P will cycle only through suitable launcher ammo.
- If you use ^P or ^N to change the default missiles offered, that choice
gets saved as your quiver (unless you cancel targeting).
- Fire always offers the quivered item first, if appropriate (so if
you have darts quivered and try to shoot from a bow, the darts will
not be offered).
Breaks save compatibility (quiver is saved).
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1854 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/tags.cc')
-rw-r--r-- | crawl-ref/source/tags.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/crawl-ref/source/tags.cc b/crawl-ref/source/tags.cc index c4d039134f..0c9d0fc0a5 100644 --- a/crawl-ref/source/tags.cc +++ b/crawl-ref/source/tags.cc @@ -875,6 +875,8 @@ static void tag_construct_you_items(struct tagHeader &th) marshallString(th, you.inv[i].inscription.c_str(), 80); } + marshallByte(th, you.quiver); + // item descrip for each type & subtype // how many types? marshallByte(th, 5); @@ -1179,6 +1181,8 @@ static void tag_read_you_items(struct tagHeader &th, char minorVersion) you.inv[i].slot = index_to_letter(i); } + you.quiver = unmarshallByte(th); + // item descrip for each type & subtype // how many types? count_c = unmarshallByte(th); |