summaryrefslogtreecommitdiff
path: root/src/init1.cc
diff options
context:
space:
mode:
authorBardur Arantsson <bardur@scientician.net>2018-03-25 20:07:30 +0200
committerBardur Arantsson <bardur@scientician.net>2018-03-25 20:07:30 +0200
commitec375a2761a661e8fa3dfb86e720afc9e45150f2 (patch)
tree86925eb60623a8d2c771fb97b15a608466296d52 /src/init1.cc
parent3a34412fbb734e1afcbed8646f446ff29447c2d0 (diff)
Clean up handling of store item filtering
Diffstat (limited to 'src/init1.cc')
-rw-r--r--src/init1.cc19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/init1.cc b/src/init1.cc
index 98c16cc5..2224bc25 100644
--- a/src/init1.cc
+++ b/src/init1.cc
@@ -5352,10 +5352,12 @@ errr init_st_info_txt(FILE *fp)
if (!*s) return (1);
/* Add to items array */
- store_item item;
- item.chance = atoi(buf + 2);
- item.kind = test_item_name(s);
- st_ptr->items.emplace_back(item);
+ auto chance = atoi(buf + 2);
+ int k_idx = test_item_name(s);
+ assert(k_idx >= 0);
+
+ st_ptr->items.emplace_back(
+ store_item::k_idx(k_idx, chance));
/* Next... */
continue;
@@ -5371,11 +5373,10 @@ errr init_st_info_txt(FILE *fp)
&rar1, &tv1, &sv1)) return (1);
/* Add to the items array */
- store_item item;
- item.chance = rar1;
- item.kind = (sv1 < 256)
- ? lookup_kind(tv1, sv1)
- : tv1 + 10000; /* An SVAL of 256 means all possible items. */
+ store_item item = (sv1 < 256)
+ ? store_item::k_idx(lookup_kind(tv1, sv1), rar1)
+ : store_item::tval(tv1, rar1); /* An SVAL of 256 means all possible items. */
+
st_ptr->items.emplace_back(item);
/* Next... */