summaryrefslogtreecommitdiff
path: root/src/map/itemdb.h
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2019-09-23 02:25:22 +0200
committerGitHub <noreply@github.com>2019-09-23 02:25:22 +0200
commit1132e2e89b4f193cc6edd9ed2856995f3fb8fdd2 (patch)
treed19c8deee09fa6d3e1f50a601f3a0d17767cde17 /src/map/itemdb.h
parent418b26dddca1d6ad9261adee56f96cf7c2c2de9b (diff)
parentde6b3e72de09b3ca0ad34cd95e1fa7ebc572b2c1 (diff)
downloadhercules-1132e2e89b4f193cc6edd9ed2856995f3fb8fdd2.tar.gz
hercules-1132e2e89b4f193cc6edd9ed2856995f3fb8fdd2.tar.bz2
hercules-1132e2e89b4f193cc6edd9ed2856995f3fb8fdd2.tar.xz
hercules-1132e2e89b4f193cc6edd9ed2856995f3fb8fdd2.zip
Merge pull request #2336 from Asheraf/lapineddukddak
Implementation of LapineDdukDdak System
Diffstat (limited to 'src/map/itemdb.h')
-rw-r--r--src/map/itemdb.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/map/itemdb.h b/src/map/itemdb.h
index e3264d7d8..14ead7707 100644
--- a/src/map/itemdb.h
+++ b/src/map/itemdb.h
@@ -39,7 +39,7 @@ struct hplugin_data_store;
#ifndef MAX_ITEM_ID
#if PACKETVER_MAIN_NUM >= 20181121 || PACKETVER_RE_NUM >= 20180704 || PACKETVER_ZERO_NUM >= 20181114
-#define MAX_ITEM_ID 0x20000
+#define MAX_ITEM_ID INT32_MAX
#else
#define MAX_ITEM_ID 0xFFFF
#endif
@@ -492,6 +492,14 @@ struct itemdb_option {
struct script_code *script;
};
+struct item_lapineddukddak {
+ int16 NeedCount;
+ int8 NeedRefineMin;
+ int8 NeedRefineMax;
+ VECTOR_DECL(struct itemlist_entry) SourceItems;
+ struct script_code *script;
+};
+
struct item_data {
int nameid;
char name[ITEM_NAME_LENGTH],jname[ITEM_NAME_LENGTH];
@@ -561,6 +569,7 @@ struct item_data {
/* TODO add a pointer to some sort of (struct extra) and gather all the not-common vals into it to save memory */
struct item_group *group;
struct item_package *package;
+ struct item_lapineddukddak *lapineddukddak;
struct hplugin_data_store *hdata; ///< HPM Plugin Data Store
};
@@ -698,6 +707,9 @@ struct itemdb_interface {
bool (*lookup_const) (const struct config_setting_t *it, const char *name, int *value);
bool (*lookup_const_mask) (const struct config_setting_t *it, const char *name, int *value);
int (*addname_sub) (union DBKey key, struct DBData *data, va_list ap);
+ bool (*read_libconfig_lapineddukddak) (void);
+ bool (*read_libconfig_lapineddukddak_sub) (struct config_setting_t *it, const char *source);
+ bool (*read_libconfig_lapineddukddak_sub_sources) (struct config_setting_t *sources, struct item_data *data);
};
#ifdef HERCULES_CORE