diff options
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 20 |
1 files changed, 16 insertions, 4 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index d9f6fbc62..775e8ca14 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -9881,8 +9881,8 @@ int skill_can_produce_mix (struct map_session_data *sd, int nameid, int trigger, if(trigger>20) { // Non-weapon, non-food item (itemlv must match) if(skill_produce_db[i].itemlv!=trigger) return 0; - } else if(trigger>10) { // Food (itemlv must be higher or equal) - if(skill_produce_db[i].itemlv<=10 || skill_produce_db[i].itemlv>trigger) + } else if(trigger>10) { // Food (any item level between 10 and 20 will do) + if(skill_produce_db[i].itemlv<=10) return 0; } else { // Weapon (itemlv must be higher or equal) if(skill_produce_db[i].itemlv>trigger) @@ -10077,6 +10077,16 @@ int skill_produce_mix (struct map_session_data *sd, int skill_id, int nameid, in } break; default: + if (sd->menuskill_id == AM_PHARMACY && + sd->menuskill_lv > 10 && sd->menuskill_lv <= 20) + { //Assume Cooking Dish + if (sd->menuskill_lv >= 15) //Legendary Cooking Set. + make_per = 10000; //100% Success + else + make_per = 12*(sd->menuskill_lv-10) //12% chance per set level. + + 700 - 70*(skill_produce_db[idx].itemlv-10); //70% - 7% per dish level + break; + } make_per = 5000; break; } @@ -10199,7 +10209,8 @@ int skill_produce_mix (struct map_session_data *sd, int skill_id, int nameid, in clif_misceffect(&sd->bl,3); break; default: //Those that don't require a skill? - if (skill_produce_db[idx].itemlv==11) //Cooking items. + if (skill_produce_db[idx].itemlv>10 && + skill_produce_db[idx].itemlv<= 20) //Cooking items. clif_specialeffect(&sd->bl, 608, AREA); break; } @@ -10239,7 +10250,8 @@ int skill_produce_mix (struct map_session_data *sd, int skill_id, int nameid, in clif_misceffect(&sd->bl,2); break; default: - if (skill_produce_db[idx].itemlv==11) + if (skill_produce_db[idx].itemlv>10 && + skill_produce_db[idx].itemlv<= 20) //Cooking items. clif_specialeffect(&sd->bl, 609, AREA); } } |