LUA:
local prizes = {
[60000] = {level = 15, reward = {2160, 1}},
[60001] = {level = 20, reward = {2160, 2}},
[60002] = {level = 35, reward = {2160, 5}},
[60003] = {level = 50, reward = {7589, 100}},
[60004] = {level = 75, reward = {2160, 5}},
[60005] = {level = 80, reward = {7590, 100}},
[60006] = {level = 100, reward = {2160, 20}},
[60006] = {level = 120, reward = {2160, 8}}
}
function onAdvance(cid, skill, oldlevel, newlevel)
if(skill ~= SKILL__LEVEL)then return TRUE end
for i,t in ipairs(prizes) do
if not(getPlayerStorageValue(cid, i)) and t.level <= newlevel then
if type(t.reward[1] ~= "table") then
local add = doPlayerAddItem(cid, t.reward[1], t.reward[2])
if add then
doPlayerSendTextMessage(cid, 19, "You have received "..t.reward[2].." "..getItemNameById(t.reward[2]).." due to reaching level "..t.level..".")
setPlayerStorageValue(cid, i, true)
end
else
local bp = doCreateItemEx(1988, 1)
for _,item in ipairs(t.reward) do
doAddContainerItem(bp, item[1], item[2])
end
local add = doPlayerAddItemEx(cid, bp)
if add then
doPlayerSendTextMessage(cid, 19, "You have received a backpack with items due to reaching level "..t.level..".")
setPlayerStorageValue(cid, i, true)
end
end
end
end
return TRUE
end
This script gives rewards automatically when a player reaches a level. However, it is not working. Weird part is there is NO error whatsoever regarding the script on my server. Anyone have any ideas?
REP++