I also made this script, what do you think?
local pos = getCreaturePosition(cid)
local effect = 29
function onUse(cid, item, fromPosition, itemEx, toPosition)
if getPlayerLevel(cid) >= 50 then
setPlayerExtraExpRate(cid, 5)
doSendAnimatedText(getThingPos(cid)...