• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Solved reward script by lvl

jlskelin

New Member
Joined
Mar 28, 2009
Messages
198
Reaction score
1
nobody gets a reward when lvling what did i do wrong ?

Lua:
local t = {
    39001, {
    [50000] = {2157, 100, "Congratulations, you have achieved one of seven goals! You have been awarded with 100 Golden Nuggets!", 1},
    [100000] = {9971, 50, "Congratulations, you have achieved two of seven goals! You have been awarded with 50 Golden Ingots!", 2},
    [150000] = {2358, 1, "Congratulations, you have achieved three of seven goals! You have been awarded with Rich Boots!", 3},
    [250000] = {8976, 1, "Congratulations, you have achieved four of seven goals! You have been awarded with a Lottery Bird!", 4},
    [300000] = {9970, 20, "Congratulations, you have achieved five of seven goals! You have been awarded with Buffary Coins!", 5},
    [400000] = {5785, 1, "Congratulations, you have achieved six seven goals! You have been awarded with a V.I.P Medal!", 6},
    [500000] = {9970, 50, "Congratulations, you have achieved  all seven goals! You have been awarded with Buffary Coins!", 7}
    }
}
function onAdvance(cid, skill, oldlevel, newlevel)
    if skill == SKILL__LEVEL then
        for level, v in pairs(t[2]) do
            if oldlevel < level and getPlayerLevel(cid) >= level and getPlayerStorageValue(cid, t[1]) < v[7] then
                doPlayerAddItem(cid, v[1], v[2])
                doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, v[3])
                setPlayerStorageValue(cid, t[1], v[7])
            end
        end
    end
    doPlayerSave(cid, true)
    return true
end
 
getPlayerStorageValue(cid, t[1]) < v[7]
v[7] doesn't exist. v only has 4 elements: itemid, count, message, and seemingly an id from 1-7
looks like that should be v[4]
edit:
setPlayerStorageValue(cid, t[1], v[7])
here as well
 
do you have it registered in creaturescripts.xml and login.lua
yeas i did now i get this

data/creaturescripts/scripts/reward45.lua:15: attempt to compare number with nil
[24/02/2017 16:56:11] stack traceback:
[24/02/2017 16:56:11] data/creaturescripts/scripts/reward45.lua:15: in function <data/creaturescripts/scripts/reward45.lua:12>
 
Back
Top