• 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!

Reward script, problem line:13

perwal

New Member
Joined
Jul 14, 2011
Messages
65
Reaction score
1
Location
Poland Torun
Yo,
I have problem with script reward.

I have it error log in console:

Code:
[29/11/2012 21:52:36] [Error - LuaScriptInterface::loadFile] data/creaturescripts/scripts/reward.lua:13: ')' expected near '.'
[29/11/2012 21:52:36] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/reward.lua)
[29/11/2012 21:52:36] data/creaturescripts/scripts/reward.lua:13: ')' expected near '.'


I use this script:

Code:
local prizes = {
    [60001] = {level = 50, reward = {2160, 10}},
    [60001] = {level = 150, reward = {2160, 30}},
}

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 backpack with items due to reaching level ".t.level.".")
                    setPlayerStorageValue(cid, i, true)
                end
            end
        end
    end
    return TRUE
end

Rep for u :)
 
Try:
Lua:
local prizes = {
    [60001] = {level = 50, reward = {2160, 10}},
    [60001] = {level = 150, reward = {2160, 30}},
}

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 backpack with items due to reaching level "..t.level..".")
                    setPlayerStorageValue(cid, i, true)
                end
            end
        end
    end
    return TRUE
end
 
Back
Top