summaryrefslogtreecommitdiff
path: root/src/map/npc.c
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2009-02-06 13:03:30 +0000
committerJared Adams <jaxad0127@gmail.com>2009-02-06 13:03:30 +0000
commitd632e06b92d5c6e73f9f34f8ac9cb71ea7148e90 (patch)
tree24759ced4b327304dbd36178bf13310b33e62859 /src/map/npc.c
parent0eee06adb76e56fc50becd4805384a9d5c7aea8e (diff)
downloadtmwa-d632e06b92d5c6e73f9f34f8ac9cb71ea7148e90.tar.gz
tmwa-d632e06b92d5c6e73f9f34f8ac9cb71ea7148e90.tar.bz2
tmwa-d632e06b92d5c6e73f9f34f8ac9cb71ea7148e90.tar.xz
tmwa-d632e06b92d5c6e73f9f34f8ac9cb71ea7148e90.zip
Add ability to specify item name when making shops
Diffstat (limited to 'src/map/npc.c')
-rw-r--r--src/map/npc.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/map/npc.c b/src/map/npc.c
index a2ad04d..ee84c79 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -1230,12 +1230,18 @@ static int npc_parse_shop(char *w1,char *w2,char *w3,char *w4)
while (p && pos < max) {
int nameid,value;
+ char name[24];
+ struct item_data *id;
p++;
- if (sscanf(p, "%d:%d", &nameid, &value) != 2)
- break;
+ if (sscanf(p, "%d:%d", &nameid, &value) == 2) {
+ } else if (sscanf(p, "%s :%d", name, &value) == 2) {
+ id = itemdb_searchname(name);
+ if (id == NULL) break;
+ nameid = id->nameid;
+ } else break;
nd->u.shop_item[pos].nameid = nameid;
if (value < 0) {
- struct item_data *id = itemdb_search(nameid);
+ if (id == NULL) id = itemdb_search(nameid);
value = id->value_buy;
}
nd->u.shop_item[pos].value = value;