From 22fc43dd35a8f6ddcd480b5e7c21922956ac4f46 Mon Sep 17 00:00:00 2001 From: shennetsind Date: Thu, 29 Dec 2011 16:51:23 +0000 Subject: [PATCH] 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 --- src/map/skill.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/map/skill.c b/src/map/skill.c index 9044a9bf1d..1720db43e6 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -446,7 +446,12 @@ int skillnotok (int skillid, struct map_session_data *sd) if (sd->blockskill[i] > 0) 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] if(!map_flag_vs(m) && skill_get_nocast (skillid) & 1) return 1;