Fixed exploit with infinite item use, bugreport:2973

-- Special Thanks to Yommy

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15312 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
shennetsind 2011-12-29 16:51:23 +00:00
parent 50abab611b
commit 22fc43dd35

View File

@ -446,7 +446,12 @@ int skillnotok (int skillid, struct map_session_data *sd)
if (sd->blockskill[i] > 0) if (sd->blockskill[i] > 0)
return 1; return 1;
/**
* It has been confirmed on a official server (thanks to Yommy) that item-cast skills bypass all the restrictions above
* Also, without this check, an exploit where an item casting + healing (or any other kind buff) isn't deleted after used on a restricted map
**/
if( sd->skillitem == skillid )
return 0;
// Check skill restrictions [Celest] // Check skill restrictions [Celest]
if(!map_flag_vs(m) && skill_get_nocast (skillid) & 1) if(!map_flag_vs(m) && skill_get_nocast (skillid) & 1)
return 1; return 1;