meu pedido é um seguinte , no meu serv é usado um sistema de resets porem eu queria que a cada reset adquirido exemplo a cada 100 resets a exp abaixa-se igual rate por lvl mesmo.
Já vou postar o script de resets :
-- CONFIGS -- prem = false -- Premium Account necessária para resetar? (true / false) pz = true -- É preciso estar em Protection Zone para resetar? (true / false) white = false -- Players com White Skull podem resetar? (true / false) red = false -- Players com Red Skull podem resetar? (true / false) black = false -- Players com Black Skull podem resetar? (true / false) battle = true -- Players com battle podem resetar? (true / false) teleport = false -- Teleportar o player para o templo após o reset? (true / false) look = true -- Aparecer resets no look? (true / false) level = 350 -- Level necessário para resetar nlevel = 100 -- Level que o player ficará após o reset time = 1 -- Tempo para o player deslogar ao resetar (segundos) limite = 3500 -- Limite de resets (Caso não queira limite, coloque false) system = "storage" -- Modo do sistema (database / storage) storage = 39650 -- Storage dos resets group = 5 -- ID do Group que tem permissão para adicionar resets (6 = god, 5 = cm, 4 = gm, 3 = senior tutor, 2 = tutor) exhastor = 17138 -- CONFIGS -- ------------------------------------------------------------------------------------------------------------------------------------ function getPlayerResets(tid) if system == "database" then local a = db.getResult("SELECT `resets` FROM `players` WHERE `id`= "..pid..";") b = a:getDataInt("resets", pid) return b elseif system == "storage" then return getPlayerStorageValue(tid, storage) < 0 and 0 or getPlayerStorageValue(tid, storage) else return print("Erro: Configuração da variável 'system' no sistema de resets incorreta.") end end function doPlayerAddResets(tid, count) if system == "database" then return db.executeQuery("UPDATE `players` SET `resets` = '"..(getPlayerResets(tid)+(count == nil and 1 or count)).."' WHERE `id` = '"..pid.."';") elseif system == "storage" then return setPlayerStorageValue(tid, storage, getPlayerResets(tid)+(count == nil and 1 or count)) else return print("Erro: Configuração da variável 'system' no sistema de resets incorreta.") end end function doPlayerReset(tid, count, mid) if teleport then doTeleportThing(tid, getTownTemplePosition(getPlayerTown(tid))) end local resets = getPlayerResets(tid) function setResetsInLook(tid) return db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..(resets+(count == nil and 1 or count)).."]' WHERE `id` = '"..(mid == nil and pid or mid).."';") end if system == "database" then doRemoveCreature(tid) doPlayerAddResets(tid, count == nil and 1 or count) elseif system == "storage" then doPlayerAddResets(tid, count == nil and 1 or count) doRemoveCreature(tid) else return print("Erro: Configuração da variável 'system' no sistema de resets incorreta.") end db.executeQuery("UPDATE `players` SET `level` = '"..nlevel.."' WHERE `id` = '"..(mid == nil and pid or mid).."';") if look then setResetsInLook(tid) end end ------------------------------------------------------------------------------------------------------------------------------------ function onSay(cid, words, param) pid = getPlayerGUID(cid) if words == "!reset" or words == "!resetar" then if prem and not isPremium(cid) then doPlayerSendCancel(cid, "Você precisa ser Premium Account para resetar.") return true elseif pz and not getTilePzInfo(getCreaturePosition(cid)) then doPlayerSendCancel(cid, "Você precisa estar em Protection Zone para resetar.") return true elseif white and getCreatureSkullType(cid) == SKULL_WHITE then doPlayerSendCancel(cid, "Você precisa estar sem White Skull para resetar.") return true elseif red and getCreatureSkullType(cid) == SKULL_RED then doPlayerSendCancel(cid, "Você precisa estar sem Red Skull para resetar.") return true elseif black and getCreatureSkullType(cid) == SKULL_BLACK then doPlayerSendCancel(cid, "Você precisa estar sem Black Skull para resetar.") return true elseif battle and hasCondition(cid, CONDITION_INFIGHT) then doPlayerSendCancel(cid, "Você precisa estar sem battle para resetar.") return true elseif getPlayerLevel(cid) < level then doPlayerSendCancel(cid, "Você precisa ter level "..level.." para resetar.") return true elseif limite and getPlayerResets(cid) == limite then doPlayerSendCancel(cid, "Você já está no limite de resets ("..limite..").") return true elseif exhaustion.check(cid, exhastor) then doPlayerSendCancel(cid, "Espere "..exhaustion.get(cid, exhastor).." segundos para usar o comando novamente.") return true end addEvent(doPlayerReset, time*1000, cid) doPlayerPopupFYI(cid, "Você resetou com sucesso. Você agora tem "..(getPlayerResets(cid)+1).." resets. Você será deslogad"..(getPlayerSex(cid) >= 1 and "o" or "a").." em "..time.." segundos.") exhaustion.set(cid, exhastor, time) elseif words == "/addresets" then local t = string.explode(param, ",") if getPlayerGroupId(cid) < group then return false elseif not t then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Parâmetros incorretos. Especifique o nome do player e opcionalmente a quantidade de resets.") return true elseif not getPlayerByName(t[1]) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Player "..t[1].." não encontrado.") return true elseif t[3] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Parâmetros incorretos. Especifique apenas o nome do player e opcionalmente a quantidade de resets.") return true end addEvent(doPlayerReset, time*1000, getPlayerByName(t[1]), t[2] == nil and "1" or t[2], getPlayerGUIDByName(t[1])) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você adicionou "..(t[2] == nil and "1" or t[2]).." resets no player "..getCreatureName(getPlayerByName(t[1]))..". Agora el"..(getPlayerSex(getPlayerByName(t[1])) >= 1 and "e" or "a").." possui "..(getPlayerResets(getPlayerByName(t[1]))+(t[2] == nil and "1" or t[2])).." resets.") doPlayerPopupFYI(getPlayerByName(t[1]), ""..getCreatureName(cid).." adicionou "..(t[2] == nil and "1" or t[2]).." resets em seu character. Você agora tem "..(getPlayerResets(getPlayerByName(t[1]))+(t[2] == nil and "1" or t[2])).." resets. Você será deslogad"..(getPlayerSex(getPlayerByName(t[1])) >= 1 and "o" or "a").." em "..time.." segundos.") end return true end
Desculpa só sei posta em forma de código
Até mais , abraços espero que me ajudem ! + REP