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

AutoLevel Script - Help

_Aion_

Nothing Else
Joined
Jan 19, 2010
Messages
400
Solutions
4
Reaction score
10
Location
Jequie,Bahia,Brazil
Hello, i'm making one script that, when player say !automax on, after reach max level, this script will be give one more level for him continue hunting without write !max(script that give one level by command)

this is my script, in console dont show error, but advance no works.

local conf = {}
conf.LevelMax = 8
conf.LevelMax2 = 903637
conf.LevelMax3 = 1034406
conf.LevelMax4 = 1138511
conf.LevelMax5 = 1226424
conf.Storage = 651478


function AutoLevel(cid)
--if isPlayer(cid) and getPlayerVipDays(cid) >= 1 and getPlayerStorageValue(tab[1], conf.Storage) == 1 then
if getPlayerLevel(cid) == conf.LevelMax then
db.executeQuery("UPDATE `players` SET `level` = `level` + 1, `experience` = 0 WHERE `id` = " .. getPlayerGUID(cid) .. "")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Test")
doRemoveCreature(cid)
elseif getPlayerLevel(cid) == conf.LevelMax2 then
db.executeQuery("UPDATE `players` SET `level` = `level` + 1, `experience` = 0 WHERE `id` = " .. getPlayerGUID(cid) .. "")
doRemoveCreature(cid)
elseif getPlayerLevel(cid) == conf.LevelMax3 then
db.executeQuery("UPDATE `players` SET `level` = `level` + 1, `experience` = 0 WHERE `id` = " .. getPlayerGUID(cid) .. "")
doRemoveCreature(cid)
elseif getPlayerLevel(cid) == conf.LevelMax4 then
db.executeQuery("UPDATE `players` SET `level` = `level` + 1, `experience` = 0 WHERE `id` = " .. getPlayerGUID(cid) .. "")
doRemoveCreature(cid)
elseif getPlayerLevel(cid) == conf.LevelMax5 then
db.executeQuery("UPDATE `players` SET `level` = `level` + 1, `experience` = 0 WHERE `id` = " .. getPlayerGUID(cid) .. "")
doRemoveCreature(cid)
end
--end
return true
end

function onAdvance(cid, skill, oldlevel, newlevel)
if skill == 8 then
AutoLevel({cid, events[pid]})
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Teste")
end
return true
end

function onLogin(cid)
if getPlayerStorageValue(cid, conf.Storage) == 1 and getPlayerVipDays(cid) >= 1 then
AutoLevel({cid, events[pid]})
registerCreatureEvent(cid, "AutoMax")
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está ativo")
else
--stopEvent(events[pid].AutoLevel)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está inativo")
setPlayerStorageValue(cid, conf.Storage, 0)
unregisterCreatureEvent(cid, "AutoMax")
end
return TRUE
end


function onSay(cid, words, param, channel)
local pid = getPlayerGUID(cid)

if type(events[pid]) ~= "table" then
events[pid] = {}
end

if string.lower(param) == "on" and not(events[pid].AutoLevel) and getPlayerVipDays(cid) >= 1 then
AutoLevel({cid, events[pid]})
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está ativo")
setPlayerStorageValue(cid, conf.Storage, 1)
elseif string.lower(param) == "off" and events[pid].AutoLevel then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está inativo")
setPlayerStorageValue(cid, conf.Storage, 0)
stopEvent(events[pid].AutoLevel)
events[pid] = {}
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Você não é VIP para usar este comando.")
end
return TRUE
end

Can you fix for me?
 
Why are you not going to use this function?
Because my ot is high, when reach level 717217 dont UP Level, player need talk one command for "unlock" level
Clean the script and more people will be willing to help.
Clean? how? im learning scripting, i created this based in another
 
Lua:
local LevelMax = {
    [8]         = { level = 1, msg = "test", xp = 0},
    [903637]     = { level = 1, msg = "test", xp = 0},
    [1034406]     = { level = 1, msg = "test", xp = 0},
    [1138511]     = { level = 1, msg = "test", xp = 0},
    [1226424]     = { level = 1, msg = "test", xp = 0}
}

local storage = 651478

function AutoLevel(cid)
    local playerLevel = getPlayerLevel(cid)
    if LevelMax[playerLevel] then
        db.executeQuery("UPDATE `players` SET `level` = `"..playerLevel.."` + "..LevelMax[playerLevel].level", `experience` = "..LevelMax[playerLevel].xp.." WHERE `id` = " .. getPlayerGUID(cid) .. "")
        if LevelMax[level].msg then
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, LevelMax[level].msg)
        end
        doRemoveCreature(cid)
    end
end

function onAdvance(cid, skill, oldlevel, newlevel)
    if skill == 8 then
        AutoLevel(cid)
    end
    return true
end

function onLogin(cid)
    local storage = 651478
    if getPlayerStorageValue(cid, storage) >= 1 and getPlayerVipDays(cid) >= 1 then
        AutoLevel(cid)
        registerCreatureEvent(cid, "AutoMax")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está ativo")
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está inativo")
        setPlayerStorageValue(cid, storage, 0)
        unregisterCreatureEvent(cid, "AutoMax")
    end
    return true
end

function onSay(cid, words, param, channel)
    local storage = 651478
    if string.lower(param) == "on" and getPlayerVipDays(cid) >= 1 and getPlayerStorageValue(cid, storage) < 1 then
        AutoLevel(cid)
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está ativo")
        setPlayerStorageValue(cid, storage, 1)
    elseif string.lower(param) == "off" then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está inativo")
        setPlayerStorageValue(cid, storage, 0)
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Você não é VIP para usar este comando.")
    end
    return true
end
 
Forgot 2 dots
Lua:
local LevelMax = {
    [8]         = { level = 1, msg = "test", xp = 0},
    [903637]     = { level = 1, msg = "test", xp = 0},
    [1034406]     = { level = 1, msg = "test", xp = 0},
    [1138511]     = { level = 1, msg = "test", xp = 0},
    [1226424]     = { level = 1, msg = "test", xp = 0}
}

local storage = 651478

function AutoLevel(cid)
    local playerLevel = getPlayerLevel(cid)
    if LevelMax[playerLevel] then
        db.executeQuery("UPDATE `players` SET `level` = `"..playerLevel.."` + "..LevelMax[playerLevel].level..", `experience` = "..LevelMax[playerLevel].xp.." WHERE `id` = " .. getPlayerGUID(cid) .. "")
        if LevelMax[level].msg then
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, LevelMax[level].msg)
        end
        doRemoveCreature(cid)
    end
end

function onAdvance(cid, skill, oldlevel, newlevel)
    if skill == 8 then
        AutoLevel(cid)
    end
    return true
end

function onLogin(cid)
    local storage = 651478
    if getPlayerStorageValue(cid, storage) >= 1 and getPlayerVipDays(cid) >= 1 then
        AutoLevel(cid)
        registerCreatureEvent(cid, "AutoMax")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está ativo")
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está inativo")
        setPlayerStorageValue(cid, storage, 0)
        unregisterCreatureEvent(cid, "AutoMax")
    end
    return true
end

function onSay(cid, words, param, channel)
    local storage = 651478
    if string.lower(param) == "on" and getPlayerVipDays(cid) >= 1 and getPlayerStorageValue(cid, storage) < 1 then
        AutoLevel(cid)
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está ativo")
        setPlayerStorageValue(cid, storage, 1)
    elseif string.lower(param) == "off" then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Seu AutoMax Está inativo")
        setPlayerStorageValue(cid, storage, 0)
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Você não é VIP para usar este comando.")
    end
    return true
end
 
Back
Top