diff --git a/db/re/item_db_usable.yml b/db/re/item_db_usable.yml index 4c1d879002..0f71ef170e 100644 --- a/db/re/item_db_usable.yml +++ b/db/re/item_db_usable.yml @@ -1823,7 +1823,7 @@ Body: Flags: BuyingStore: true Script: | - if (Class == Job_Assassin_Cross || Class == Job_Guillotine_Cross || Class == Job_Guillotine_Cross_T || Class == Job_Shadow_Cross) { + if ((eaclass()&EAJ_ASSASSIN_CROSS)==EAJ_ASSASSIN_CROSS) { sc_start SC_DPOISON,60000,0; sc_start SC_ASPDPOTION3,60000,9; } @@ -50395,7 +50395,6 @@ Body: AegisName: Poison_Bottle_B Name: Poison Bottle Type: Usable - Buy: 10 Weight: 100 Trade: NoDrop: true @@ -50405,7 +50404,7 @@ Body: NoMail: true NoAuction: true Script: | - if (Class == Job_Assassin_Cross || Class == Job_Guillotine_Cross || Class == Job_Guillotine_Cross_T) { + if ((eaclass()&EAJ_ASSASSIN_CROSS)==EAJ_ASSASSIN_CROSS) { sc_start SC_DPOISON,60000,0; sc_start SC_ASPDPOTION3,60000,9; } diff --git a/db/re/item_group_db.yml b/db/re/item_group_db.yml index e91c55b8f9..5e35255df3 100644 --- a/db/re/item_group_db.yml +++ b/db/re/item_group_db.yml @@ -48944,3 +48944,9 @@ Body: List: - Item: Shadow_Refine_Hammer Amount: 3 + - Group: EDP + SubGroups: + - SubGroup: 0 + List: + - Item: Poison_Bottle + - Item: Poison_Bottle_B diff --git a/db/re/skill_db.yml b/db/re/skill_db.yml index e26aa6c792..9af7b1cef5 100644 --- a/db/re/skill_db.yml +++ b/db/re/skill_db.yml @@ -10516,9 +10516,6 @@ Body: Amount: 90 - Level: 5 Amount: 100 - ItemCost: - - Item: Poison_Bottle - Amount: 1 Status: Edp - Id: 379 Name: ASC_BREAKER diff --git a/src/map/itemdb.hpp b/src/map/itemdb.hpp index 653013a959..a0aa8e8165 100644 --- a/src/map/itemdb.hpp +++ b/src/map/itemdb.hpp @@ -1835,6 +1835,7 @@ enum e_random_item_group { IG_S_TEMP2_CUBE, IG_BLACKSMITH_BLESS_BOX_3, IG_SHADOW_HAMMER_BOX_3, + IG_EDP, IG_MAX, }; diff --git a/src/map/script_constants.hpp b/src/map/script_constants.hpp index 393296d70c..106150f956 100644 --- a/src/map/script_constants.hpp +++ b/src/map/script_constants.hpp @@ -6633,6 +6633,7 @@ export_constant(IG_S_TEMP2_CUBE); export_constant(IG_BLACKSMITH_BLESS_BOX_3); export_constant(IG_SHADOW_HAMMER_BOX_3); + export_constant(IG_EDP); /* unit stop walking */ export_constant(USW_NONE); diff --git a/src/map/skill.cpp b/src/map/skill.cpp index f7224c9e6e..927c7111fb 100755 --- a/src/map/skill.cpp +++ b/src/map/skill.cpp @@ -17948,6 +17948,18 @@ bool skill_check_condition_castend(map_session_data* sd, uint16 skill_id, uint16 } break; } +#ifdef RENEWAL + case ASC_EDP: + if(sd) { + int16 item_edp = itemdb_group.item_exists_pc(sd, IG_EDP); + if (item_edp < 0) { + clif_skill_fail( sd, skill_id, USESKILL_FAIL_NEED_ITEM, 1, ITEMID_POISON_BOTTLE ); // [%s] required '%d' amount. + return false; + } else + pc_delitem(sd, item_edp, 1, 0, 1, LOG_TYPE_CONSUME); + } + break; +#endif } status = &sd->battle_status;