diff options
author | Kenpachi Developer <Kenpachi.Developer@gmx.de> | 2020-02-21 00:29:22 +0100 |
---|---|---|
committer | Kenpachi Developer <Kenpachi.Developer@gmx.de> | 2020-02-21 00:29:22 +0100 |
commit | e2f6d8b056e608fee4242dcc30052309f048178c (patch) | |
tree | 925cb2c5c71cda8fcbc357a08b7c9b0880da5bff | |
parent | 9106bbab19b4feaa4623a3b8e5d59e08ef73b640 (diff) | |
download | hercules-e2f6d8b056e608fee4242dcc30052309f048178c.tar.gz hercules-e2f6d8b056e608fee4242dcc30052309f048178c.tar.bz2 hercules-e2f6d8b056e608fee4242dcc30052309f048178c.tar.xz hercules-e2f6d8b056e608fee4242dcc30052309f048178c.zip |
Make getiteminfo() script command usable with item name, too
-rw-r--r-- | src/map/script.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/map/script.c b/src/map/script.c index c1eb2e8b7..22ab733a1 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -14788,9 +14788,15 @@ static BUILDIN(getitemslots) *------------------------------------------*/ static BUILDIN(getiteminfo) { - int item_id = script_getnum(st, 2); int n = script_getnum(st, 3); - struct item_data *it = itemdb->exists(item_id); + struct item_data *it; + + if (script_isstringtype(st, 2)) { /// Item name. + const char *name = script_getstr(st, 2); + it = itemdb->search_name(name); + } else { /// Item ID. + it = itemdb->exists(script_getnum(st, 2)); + } if (it == NULL) { script_pushint(st, -1); @@ -26970,7 +26976,7 @@ static void script_parse_builtin(void) BUILDIN_DEF(setnpcdisplay,"sv??"), BUILDIN_DEF(compare,"ss"), // Lordalfa - To bring strstr to scripting Engine. BUILDIN_DEF(strcmp,"ss"), - BUILDIN_DEF(getiteminfo,"ii"), //[Lupus] returns Items Buy / sell Price, etc info + BUILDIN_DEF(getiteminfo,"vi"), //[Lupus] returns Items Buy / sell Price, etc info BUILDIN_DEF(setiteminfo,"iii"), //[Lupus] set Items Buy / sell Price, etc info BUILDIN_DEF(getequipcardid,"ii"), //[Lupus] returns CARD ID or other info from CARD slot N of equipped item BUILDIN_DEF(getequippedoptioninfo, "i"), |