Fixed bugreport:5456 you can no exploit creation of crafting items by mixing packets thru wpe/rpe/whatever. it now checks if the item you're attempting to create belongs to the trigger used.

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15698 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
shennetsind 2012-03-17 20:21:44 +00:00
parent 36be409882
commit ad56da4b99

View File

@ -10779,7 +10779,8 @@ void clif_parse_ProduceMix(int fd,struct map_session_data *sd)
sd->menuskill_val = sd->menuskill_id = 0;
return;
}
skill_produce_mix(sd,0,RFIFOW(fd,2),RFIFOW(fd,4),RFIFOW(fd,6),RFIFOW(fd,8), 1);
if( skill_can_produce_mix(sd,RFIFOW(fd,2),sd->menuskill_val, 1) )
skill_produce_mix(sd,0,RFIFOW(fd,2),RFIFOW(fd,4),RFIFOW(fd,6),RFIFOW(fd,8), 1);
sd->menuskill_val = sd->menuskill_id = 0;
}
@ -10798,8 +10799,7 @@ void clif_parse_Cooking(int fd,struct map_session_data *sd)
//int type = RFIFOW(fd,2);
int nameid = RFIFOW(fd,4);
if( sd->menuskill_id != AM_PHARMACY )
{
if( sd->menuskill_id != AM_PHARMACY ) {
return;
}
@ -10809,7 +10809,8 @@ void clif_parse_Cooking(int fd,struct map_session_data *sd)
sd->menuskill_val = sd->menuskill_id = 0;
return;
}
skill_produce_mix(sd,0,nameid,0,0,0,1);
if( skill_can_produce_mix(sd,nameid,sd->menuskill_val, 1) )
skill_produce_mix(sd,0,nameid,0,0,0,1);
sd->menuskill_val = sd->menuskill_id = 0;
}