From ea151b73fd14c5d9ced60979b91c7d13cf0c4422 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Thu, 2 Apr 2015 23:57:56 +0300 Subject: map: add new attributes to item_db. New attributes RequiredDef, RequiredMDef. --- src/map/data/itemd.c | 2 ++ src/map/itemdb.c | 4 ++++ src/map/pc.c | 2 ++ src/map/struct/itemdext.h | 2 ++ 4 files changed, 10 insertions(+) diff --git a/src/map/data/itemd.c b/src/map/data/itemd.c index 468c072..974c86c 100644 --- a/src/map/data/itemd.c +++ b/src/map/data/itemd.c @@ -58,5 +58,7 @@ struct ItemdExt *itemd_create(void) data->requiredAtk = 0; data->requiredMAtkMin = 0; data->requiredMAtkMax = 0; + data->requiredDef = 0; + data->requiredMDef = 0; return data; } diff --git a/src/map/itemdb.c b/src/map/itemdb.c index c777a44..50c2728 100644 --- a/src/map/itemdb.c +++ b/src/map/itemdb.c @@ -74,6 +74,10 @@ void eitemdb_readdb_additional_fields(int *itemid, data->requiredMAtkMin = i32; if (libconfig->setting_lookup_int(it, "RequiredMAtkMax", &i32) && i32 >= 0) data->requiredMAtkMax = i32; + if (libconfig->setting_lookup_int(it, "requiredDef", &i32) && i32 >= 0) + data->requiredDef = i32; + if (libconfig->setting_lookup_int(it, "requiredMDef", &i32) && i32 >= 0) + data->requiredMDef = i32; hookStop(); } diff --git a/src/map/pc.c b/src/map/pc.c index 84f8638..929b57f 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -214,6 +214,8 @@ int epc_isuseequip_post(int retVal, struct map_session_data *sd, int *nPtr) sd->battle_status.batk < data->requiredAtk || sd->battle_status.matk_min < data->requiredMAtkMin || sd->battle_status.matk_max < data->requiredMAtkMax || + sd->battle_status.def < data->requiredDef || + sd->battle_status.mdef < data->requiredMDef || ) { return 0; diff --git a/src/map/struct/itemdext.h b/src/map/struct/itemdext.h index b8fc7be..283f20d 100644 --- a/src/map/struct/itemdext.h +++ b/src/map/struct/itemdext.h @@ -18,6 +18,8 @@ struct ItemdExt int requiredAtk; int requiredMAtkMin; int requiredMAtkMax; + int requiredDef; + int requiredMDef; bool allowPickup; }; -- cgit v1.2.3-60-g2f50