Ir para conteúdo
  • 0

[PEDIDO] Alterar reset system


UntFrc

Pergunta

Bom dia, galera... Eu mais uma vez (como de costume) aqui com os scripts problematicos. Enfim to com um reset system aqui por talkaction, e ele funciona normal, mas quando reseta ele mantem a mana e health do antigo level. Eu gostaria que quando desse reset a mana e health ficasse compativel com level para que o char voltou. Outra coisa tambem, ali no script tem a função de mostrar no look do char quantos resets ele tem, e também não funciona. Se alguém puder me ajudar ai com isso, ficarei eternamente agradecido.

function onSay(cid, words, param)
local level = 2000 --level pra ser resetado
local RemainingLvl = 20 --lvl que ele ficara depois do reset
local pid = getPlayerGUID(cid)
 
 
function addReset(cid)
resets = getResets(cid)
setPlayerStorageValue(cid,1020,resets+1)
look = true
return true
end
 
function getResets(cid)
resets = getPlayerStorageValue(cid,1020)
if resets < 0 then
resets = 0
end
return resets
end
 
if getPlayerLevel(cid) >= level then
addReset(cid)
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
doPlayerPopupFYI(cid,"you now was reset, you have "..getResets(cid).." reset.")
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `level` = "..RemainingLvl..", `experience` = 0 WHERE `id` = "..pid)

function onLook(cid, thing, position, lookDistance)
    if isPlayer(thing.uid) then
        resets = getPlayerStorageValue(thing.uid, 1020)+1
        doPlayerSetSpecialDescription(thing.uid, "\nResets: [" .. resets .."]")
    end
    return true
end
 
else
doPlayerSendCancel(cid, "You need to have level "..level.." or more you may be reset.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
 
return TRUE
end
Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

 

Bom dia, galera... Eu mais uma vez (como de costume) aqui com os scripts problematicos. Enfim to com um reset system aqui por talkaction, e ele funciona normal, mas quando reseta ele mantem a mana e health do antigo level. Eu gostaria que quando desse reset a mana e health ficasse compativel com level para que o char voltou. Outra coisa tambem, ali no script tem a função de mostrar no look do char quantos resets ele tem, e também não funciona. Se alguém puder me ajudar ai com isso, ficarei eternamente agradecido.

function onSay(cid, words, param)
local level = 2000 --level pra ser resetado
local RemainingLvl = 20 --lvl que ele ficara depois do reset
local pid = getPlayerGUID(cid)
 
 
function addReset(cid)
resets = getResets(cid)
setPlayerStorageValue(cid,1020,resets+1)
look = true
return true
end
 
function getResets(cid)
resets = getPlayerStorageValue(cid,1020)
if resets < 0 then
resets = 0
end
return resets
end
 
if getPlayerLevel(cid) >= level then
addReset(cid)
doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
doPlayerPopupFYI(cid,"you now was reset, you have "..getResets(cid).." reset.")
doRemoveCreature(cid)
db.executeQuery("UPDATE `players` SET `level` = "..RemainingLvl..", `experience` = 0 WHERE `id` = "..pid)

function onLook(cid, thing, position, lookDistance)
    if isPlayer(thing.uid) then
        resets = getPlayerStorageValue(thing.uid, 1020)+1
        doPlayerSetSpecialDescription(thing.uid, "\nResets: [" .. resets .."]")
    end
    return true
end
 
else
doPlayerSendCancel(cid, "You need to have level "..level.." or more you may be reset.")
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
end
 
return TRUE
end

Usa este, além de ser melhor tem exausted e stages para resetar que você poderá configurar da forma que quiser.

 

 

--[[ <(Advanced Reset System 2.0)>
                                   Autor: Juniior Cwb ;*. Contato: (Juniior_Cwb@[member=Hotmail].com)
                                   Versão: 2.0
                                   Testado em: 8.50 e 8.60
                                   TFS: 0.3.6 and 0.4.0
                                   Atenção , Se Achar Esse Sistema em outro site ou forum favor comunicar Eu ( Juniior Cwb ) Juniior_Cwb@[member=Hotmail].com )
                   -=[Características]=-
                            ~( Versão 2.0 )~
                   - Resets agora Armazenados na DataBase; (Sem Valor de Storage)
                   - Instala o System e cria a Tabela de Resets com o comando "/installreset";
                   - Resets no Look do jogador ex: 22:10 You see Marcello [Reset 2] (Level 8). He is an elder druid.;
                   - [STAGES] para "Premium Account" e "Free Account";  ]]
--=[Functions]=--
-- installReset()'                                                                        [Instala o Sistema.]
-- tableResetInstall()'                             [Verifica Se o Sistema ja foi instaladao.]
-- nowReseting()'                                                                           [Verifica, retorna o erro ou reseta.]
-- getPlayerReset(cid)'                             [Pega numero de resets do player.]
-- checLevelStageReset(cid)'                      [Verifica o Level para Resetar.]
-- newReset(cid)'                                                                           [Verifica todas as Condições de Reset.]
-- addValue(value)'                                                         [Adiciona numero de resets.]
--=[Comandos de Jogadores]=--
--  "!resetar"            -- Para Resetar.

local exhaustionMinutes = 10 -- exausted em segundos
local storageUse = 34538 -- storage usado no exausted.

function onSay(cid, words, param)
if words =="!resetar" then
if(exhaustion.check(cid, storageUse) == TRUE) then
   if (exhaustion.get(cid, storageUse) >= 5) then
   doPlayerSendCancel(cid, "Voçê só pode usar após [" .. math.floor(exhaustion.get(cid, storageUse) / 5 + 1) .."] Segundos.")
   end
    if (exhaustion.get(cid, storageUse) <= 5) then
    doPlayerSendCancel(cid, "Voçê só pode usar após [" .. exhaustion.get(cid, storageUse).."] segundos.")
    end
return TRUE
end
exhaustion.set(cid, storageUse, exhaustionMinutes*5)
--[ Condições de Reset ] --
local coNdConf = {
needPz = false,                                              -- Precisa estar em Pz pra resetar?                                   [false, false]
needPa = false,                                           -- Precisa ser Premium Account Pra resetar?      [true, false]
withe = false,                                              -- Players com Pk Withe podem resetar?                                          [false, false]
red = true,                                                                      -- Players com Pk Red pode resetar?                                        [false, false]
battle = true,                                           -- Players precisão estar sem battle pra resetar? [true, true]
teleport = false,                                                          -- Teleportar Player para o templo após resetar?  [false, false]
look = true,                                                       -- Aparecer Resets no Look do Player?                                                 [true, true]
pid = getPlayerGUID(cid),                 -- Não Mexer.

--[ Configurações do Reset ] --
resetConf = {
Level = 350,                                                                -- Level Necessário para Resetar.                                                                                       [Valor]
backLvl = 8,                                                                -- Level que voltará após o Reset.                                                                                    [Valor]
time = 5,                                                                                 -- Tempo para o Player deslogar ao resetar, em segundos.  [Valor]
  },
}
                                  --[[>> STAGES <<]]--
x=true;X=true -- Não Mexer.
local stage = {Abilitar = {x}, Desabilitar = {},                 --<< Abilitar Stages?? >>--                                [{x};{}]
--          [RESETS]      |  [PREMMY]  |   [FREE]
stage1= {resets= 1,  premmy= 330, free= 330},
stage2= {resets= 5,  premmy= 355, free= 355},    -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}])
stage3= {resets= 10, premmy= 360, free= 360},    -- resets = Número de resets para o Stage;
stage4= {resets= 15, premmy= 365, free= 365},    -- premmy = Level necessário para Premium Accounts;
stage5= {resets= 20, premmy= 380, free= 380},    -- free            = Level necessário para Free Accounts;
stage6= {resets= 25, premmy= 390, free= 390},     -- Coloque em Ordem...
stage7= {resets= 30, premmy= 410, free= 410},    -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES]
stage8= {resets= 35, premmy= 430, free= 430},    -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x}
stage9= {resets= 40, premmy= 450, free= 450},
stage10={resets= 45, premmy= 480, free= 480},
stage11={resets= 50, premmy= 510, free= 510},
stage12={resets= 55, premmy= 550, free= 550},
stage13={resets= 60, premmy= 610, free= 610},
stage14={resets= 65, premmy= 750, free= 750},
stage15={resets= 70, premmy= 760, free= 760},
stage16={resets= 75, premmy= 900, free= 900},
stage17={resets= 80, premmy= 1000, free= 1000},
stage18={resets= 85, premmy= 1300, free= 1300},
stage19={resets= 90, premmy= 1500, free= 1500},
stage20={resets= 95, premmy= 3000, free= 3000},
stage21={resets= 100, premmy= 2800, free= 2800},
stage22={resets= 105, premmy= 2900, free= 2900},
stage23={resets= 110, premmy= 3200, free= 3200},
stage24={resets= 115, premmy= 3500, free= 3500},
stage25={resets= 120, premmy= 4300, free= 4300},
stage26={resets= 125, premmy= 4500, free= 4500},
stage27={resets= 130, premmy= 99500, free= 99500},

}
                            --[[>> FIM STAGES <<]]--
--=[Pega Valor de Resets]=--
function getPlayerReset(cid)
local qr = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";")
rss = qr:getDataInt("reset", coNdConf.pid)
if rss < 0 then
rss = 0
end
return rss
end
local success = "                                                                 ~~ Sucesso! ~~ \nVocê tem agora "..(getPlayerReset(cid)+1).." resets. \nVocê será deslogado em "..coNdConf.resetConf.time.." segundos." ;err = doPlayerSendTextMessage
local qrt = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";");rss_db = qrt:getDataInt("reset", coNdConf.pid)
local lvl_query = "UPDATE `players` SET `level` = "..(coNdConf.resetConf.backLvl)..", `experience` = 0 WHERE `id`= " .. coNdConf.pid .. ";"
local reset_query = "UPDATE `players` SET `reset` = "..(getPlayerReset(cid)+(1)).." WHERE `id`= " .. coNdConf.pid .. ";"
local nolook_query = "UPDATE `players` SET `description` = '' WHERE `players`.`id`= " .. coNdConf.pid .. ";"
local look_query = "UPDATE `players` SET `description` = ' [Reset "..(getPlayerReset(cid)+(1)).."]' WHERE `players`.`id`= " .. coNdConf.pid .. ";"
--=[Reseta]=--
function addValue(value)
if coNdConf.look == false then
  doRemoveCreature(cid)
db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(nolook_query)
else
  doRemoveCreature(cid)
   db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(look_query)
  return LUA_NO_ERROR
end
end
function nowReseting()
if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then
  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -")
  return true
end
if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then
                  doPlayerPopupFYI(cid, success)
                  addEvent(addValue, coNdConf.resetConf.time*1, value)
            else
                  doPlayerPopupFYI(cid, success)
                  addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))
                  addEvent(addValue, coNdConf.resetConf.time*1000, value)
  return true
end
end
--[STAGES Nao mexer em nada.]--
function checkLevelStageReset(cid)
local stages = {
            {resets= stage.stage1.resets, premmy= stage.stage1.premmy, free= stage.stage1.free},
            {resets= stage.stage2.resets, premmy= stage.stage2.premmy, free= stage.stage2.free},
            {resets= stage.stage3.resets, premmy= stage.stage3.premmy, free= stage.stage3.free},
            {resets= stage.stage4.resets, premmy= stage.stage4.premmy, free= stage.stage4.free},
            {resets= stage.stage5.resets, premmy= stage.stage5.premmy, free= stage.stage5.free},
            {resets= stage.stage6.resets, premmy= stage.stage6.premmy, free= stage.stage6.free},
            {resets= stage.stage7.resets, premmy= stage.stage7.premmy, free= stage.stage7.free},
            {resets= stage.stage8.resets, premmy= stage.stage8.premmy, free= stage.stage8.free},
            {resets= stage.stage9.resets, premmy= stage.stage9.premmy, free= stage.stage9.free},
            {resets=stage.stage10.resets, premmy=stage.stage10.premmy, free=stage.stage10.free},
            {resets=stage.stage11.resets, premmy=stage.stage11.premmy, free=stage.stage11.free},
            {resets=stage.stage12.resets, premmy=stage.stage12.premmy, free=stage.stage12.free},
            {resets=stage.stage13.resets, premmy=stage.stage13.premmy, free=stage.stage13.free},
            {resets=stage.stage14.resets, premmy=stage.stage14.premmy, free=stage.stage14.free},
            {resets=stage.stage15.resets, premmy=stage.stage15.premmy, free=stage.stage15.free},
            {resets=stage.stage16.resets, premmy=stage.stage16.premmy, free=stage.stage16.free},
            {resets=stage.stage17.resets, premmy=stage.stage17.premmy, free=stage.stage17.free},
            {resets=stage.stage18.resets, premmy=stage.stage18.premmy, free=stage.stage18.free},
            {resets=stage.stage19.resets, premmy=stage.stage19.premmy, free=stage.stage19.free},
            {resets=stage.stage20.resets, premmy=stage.stage20.premmy, free=stage.stage20.free},
            {resets=stage.stage21.resets, premmy=stage.stage21.premmy, free=stage.stage21.free},
            {resets=stage.stage22.resets, premmy=stage.stage22.premmy, free=stage.stage22.free},
            {resets=stage.stage23.resets, premmy=stage.stage23.premmy, free=stage.stage23.free},
            {resets=stage.stage24.resets, premmy=stage.stage24.premmy, free=stage.stage24.free},
            {resets=stage.stage25.resets, premmy=stage.stage25.premmy, free=stage.stage25.free},
            {resets=stage.stage26.resets, premmy=stage.stage26.premmy, free=stage.stage26.free},
        {resets=stage.stage27.resets, premmy=stage.stage27.premmy, free=stage.stage27.free},

}
            local resets = getPlayerReset(cid)
                            for i, tab in ipairs(stages) do
                                            if resets <= tab.resets then
                                                            coNdConf.resetConf.Level = isPremium(cid) and tab.premmy or tab.free
                                                            break
                                            end
                            end
if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then
err(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -")
return TRUE
end
  if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then
                 doPlayerPopupFYI(cid, success)
                 addEvent(addValue, coNdConf.resetConf.time*1000, value)
   else
   doPlayerPopupFYI(cid, success)
   addEvent(addValue, coNdConf.resetConf.time*1000, value)
   addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))
            return true
  end
end
            function newReset(cid)
            if(coNdConf.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == LUA_ERROR) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar em Protection Zone Para Resetar. -") return TRUE end
            if(coNdConf.needPa == true) and not isPremium(cid) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa ser Premium Account para Resetar. -") return TRUE end
            if(coNdConf.withe == false) and (getCreatureSkullType(cid) == 3) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Withe. -") return TRUE end
            if(coNdConf.red == false) and (getCreatureSkullType(cid) == 4) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Red. -") return TRUE end
            if(coNdConf.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar sem Battle para Resetar. -") return TRUE end
local xy = {true,false}
table.insert(stage.Abilitar, false)
table.insert(stage.Desabilitar, false)
if stage.Abilitar[1] == xy[1] and stage.Desabilitar[1] == xy[2] then
checkLevelStageReset(cid)
elseif stage.Abilitar[1] == xy[2] and stage.Desabilitar[1] == xy[1] then
nowReseting()
else
doPlayerPopupFYI(cid, "LUA_ERROR; Configure corretamente o Sistema de STAGES!")
end
return true
end
            function tableResetInstall()
                 print(not rss_db  and LUA_ERROR or "Tabela de Resets: Instalada ... [success] ")
                 addEvent(newReset, 1000, cid)
                 return false
                 end
            if tableResetInstall() then
  end
end
            --=[Install System]=--
                   function installReset()
                            if db.executeQuery("ALTER TABLE `players` ADD reset INT(11) NOT NULL DEFAULT 0;") then
                                                            print("[MarcelloMkez] -= Advanced Reset System 2.0 por DataBase =- Instalado com sucesso!")
                                                            return TRUE
                            end
                            print('[Advanced Reset System/MarcelloMkez] Não foi possível instalar o Sistema.')
                            return FALSE
                 end
                            local tt = {
                                   "Preparando Instalação...",
                                   "Instalando: TableReset Db...",
                                   "Instalando: getPlayerReset()...",
                                   "Instalando: addValue()...",
                                   "Instalando: checkLevelStageReset()...",
                                   "Instalando: newReset() and nowReseting()...",
                                   "Finalizando Instalação...",
                                   "...",
                                   success = {
                                   "Iniciando...",
                                   "function: TableReset Db...  [success]",
                                   "function: getPlayerReset()...          [success]",
                                   "function: addValue(value)...                   [success]",
                                   "function: checkLevelStageReset()... [success]",
                                   "function: newReset() and nowReseting()...    [success]",
                                   "Fim da Instalação.  ",
                                   "by: ~~ MarcelloMkez ~~                                          \nContato: marcello_dirt@[member=Hotmail].com",
                                   inst = {"MarcelloMkez","Advanced Reset System 2.0 por DataBase"
                                   },
                                 },
                            }
                 if words == "/installresetguiizeera" and getPlayerAccess(cid) >= 3 then
                                            function install()
                                            if installReset() then
                                                            print(""..tt.success[7].."")
                                                                   doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,""..tt.success[8].."")
                                                            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] -="..tt.success.inst[2].."=- Instalado com sucesso!")
                                   else
                                                            print("["..tt.success.inst[1].."]  FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].")
                                                                  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].")
                                            end
                                            return 1
                            end
                                  function concl(cid)
                                            local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[7].."")
                                                                 print(""..tt[8].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[7].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[8].."")
                                                            addEvent(install, 1000,cid)
                                            end
                                            function finall(cid)
                                                            local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[6].."")
                                                            print(""..tt[7].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[6].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[7].."")
                                                            addEvent(concl, 3000,cid)
                                            end
                                                 function installDd(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[5].."")
                                                            print(""..tt[6].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[5].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[6].."")
                                                            addEvent(finall, 1000,cid)
                                            end
                                            function installCc(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[4].."")
                                                            print(""..tt[5].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[4].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[5].."")
                                                  addEvent(installDd, 1000,cid)
                                            end
                                            function installBb(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[3].."")
                                                            print(""..tt[4].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[3].."")
                                                  doPlayerSendTextMessage(cid, typetx,""..tt[4].."")
                                            addEvent(installCc, 1000,cid)
                                            end
                                            function installAa(cid)
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[2].."")
                                                            print(""..tt[3].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[2].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[3].."")
                                                            addEvent(installBb, 1000,cid)
                                            end
                                            function toInstall()
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[1].."")
                                                            print(""..tt[2].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[1].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[2].."")
                                                   addEvent(installAa, 1000,cid)
                                                  end
                                            function preparation()
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                   print(""..tt[1].."")
                                                 doPlayerSendTextMessage(cid, typetx,""..tt[1].."")
                                            addEvent(toInstall, 3000,cid)
                            end
                                            if preparation() then
                                            end
                            end
return 1
end
--=[By: Juniior Cwb ;* ]=--

 

 

 

 

Link para o comentário
Compartilhar em outros sites

  • 0

Usa este, além de ser melhor tem exausted e stages para resetar que você poderá configurar da forma que quiser.

 

 

--[[ <(Advanced Reset System 2.0)>
                                   Autor: Juniior Cwb ;*. Contato: (Juniior_Cwb@[member='Hotmail'].com)
                                   Versão: 2.0
                                   Testado em: 8.50 e 8.60
                                   TFS: 0.3.6 and 0.4.0
                                   Atenção , Se Achar Esse Sistema em outro site ou forum favor comunicar Eu ( Juniior Cwb ) Juniior_Cwb@[member='Hotmail'].com )
                   -=[Características]=-
                            ~( Versão 2.0 )~
                   - Resets agora Armazenados na DataBase; (Sem Valor de Storage)
                   - Instala o System e cria a Tabela de Resets com o comando "/installreset";
                   - Resets no Look do jogador ex: 22:10 You see Marcello [Reset 2] (Level 8). He is an elder druid.;
                   - [STAGES] para "Premium Account" e "Free Account";  ]]
--=[Functions]=--
-- installReset()'                                                                        [Instala o Sistema.]
-- tableResetInstall()'                             [Verifica Se o Sistema ja foi instaladao.]
-- nowReseting()'                                                                           [Verifica, retorna o erro ou reseta.]
-- getPlayerReset(cid)'                             [Pega numero de resets do player.]
-- checLevelStageReset(cid)'                      [Verifica o Level para Resetar.]
-- newReset(cid)'                                                                           [Verifica todas as Condições de Reset.]
-- addValue(value)'                                                         [Adiciona numero de resets.]
--=[Comandos de Jogadores]=--
--  "!resetar"            -- Para Resetar.

local exhaustionMinutes = 10 -- exausted em segundos
local storageUse = 34538 -- storage usado no exausted.

function onSay(cid, words, param)
if words =="!resetar" then
if(exhaustion.check(cid, storageUse) == TRUE) then
   if (exhaustion.get(cid, storageUse) >= 5) then
   doPlayerSendCancel(cid, "Voçê só pode usar após [" .. math.floor(exhaustion.get(cid, storageUse) / 5 + 1) .."] Segundos.")
   end
    if (exhaustion.get(cid, storageUse) <= 5) then
    doPlayerSendCancel(cid, "Voçê só pode usar após [" .. exhaustion.get(cid, storageUse).."] segundos.")
    end
return TRUE
end
exhaustion.set(cid, storageUse, exhaustionMinutes*5)
--[ Condições de Reset ] --
local coNdConf = {
needPz = false,                                              -- Precisa estar em Pz pra resetar?                                   [false, false]
needPa = false,                                           -- Precisa ser Premium Account Pra resetar?      [true, false]
withe = false,                                              -- Players com Pk Withe podem resetar?                                          [false, false]
red = true,                                                                      -- Players com Pk Red pode resetar?                                        [false, false]
battle = true,                                           -- Players precisão estar sem battle pra resetar? [true, true]
teleport = false,                                                          -- Teleportar Player para o templo após resetar?  [false, false]
look = true,                                                       -- Aparecer Resets no Look do Player?                                                 [true, true]
pid = getPlayerGUID(cid),                 -- Não Mexer.

--[ Configurações do Reset ] --
resetConf = {
Level = 350,                                                                -- Level Necessário para Resetar.                                                                                       [Valor]
backLvl = 8,                                                                -- Level que voltará após o Reset.                                                                                    [Valor]
time = 5,                                                                                 -- Tempo para o Player deslogar ao resetar, em segundos.  [Valor]
  },
}
                                  --[[>> STAGES <<]]--
x=true;X=true -- Não Mexer.
local stage = {Abilitar = {x}, Desabilitar = {},                 --<< Abilitar Stages?? >>--                                [{x};{}]
--          [RESETS]      |  [PREMMY]  |   [FREE]
stage1= {resets= 1,  premmy= 330, free= 330},
stage2= {resets= 5,  premmy= 355, free= 355},    -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}])
stage3= {resets= 10, premmy= 360, free= 360},    -- resets = Número de resets para o Stage;
stage4= {resets= 15, premmy= 365, free= 365},    -- premmy = Level necessário para Premium Accounts;
stage5= {resets= 20, premmy= 380, free= 380},    -- free            = Level necessário para Free Accounts;
stage6= {resets= 25, premmy= 390, free= 390},     -- Coloque em Ordem...
stage7= {resets= 30, premmy= 410, free= 410},    -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES]
stage8= {resets= 35, premmy= 430, free= 430},    -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x}
stage9= {resets= 40, premmy= 450, free= 450},
stage10={resets= 45, premmy= 480, free= 480},
stage11={resets= 50, premmy= 510, free= 510},
stage12={resets= 55, premmy= 550, free= 550},
stage13={resets= 60, premmy= 610, free= 610},
stage14={resets= 65, premmy= 750, free= 750},
stage15={resets= 70, premmy= 760, free= 760},
stage16={resets= 75, premmy= 900, free= 900},
stage17={resets= 80, premmy= 1000, free= 1000},
stage18={resets= 85, premmy= 1300, free= 1300},
stage19={resets= 90, premmy= 1500, free= 1500},
stage20={resets= 95, premmy= 3000, free= 3000},
stage21={resets= 100, premmy= 2800, free= 2800},
stage22={resets= 105, premmy= 2900, free= 2900},
stage23={resets= 110, premmy= 3200, free= 3200},
stage24={resets= 115, premmy= 3500, free= 3500},
stage25={resets= 120, premmy= 4300, free= 4300},
stage26={resets= 125, premmy= 4500, free= 4500},
stage27={resets= 130, premmy= 99500, free= 99500},

}
                            --[[>> FIM STAGES <<]]--
--=[Pega Valor de Resets]=--
function getPlayerReset(cid)
local qr = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";")
rss = qr:getDataInt("reset", coNdConf.pid)
if rss < 0 then
rss = 0
end
return rss
end
local success = "                                                                 ~~ Sucesso! ~~ \nVocê tem agora "..(getPlayerReset(cid)+1).." resets. \nVocê será deslogado em "..coNdConf.resetConf.time.." segundos." ;err = doPlayerSendTextMessage
local qrt = db.getResult("SELECT `reset` FROM `players` WHERE `id`= "..coNdConf.pid..";");rss_db = qrt:getDataInt("reset", coNdConf.pid)
local lvl_query = "UPDATE `players` SET `level` = "..(coNdConf.resetConf.backLvl)..", `experience` = 0 WHERE `id`= " .. coNdConf.pid .. ";"
local reset_query = "UPDATE `players` SET `reset` = "..(getPlayerReset(cid)+(1)).." WHERE `id`= " .. coNdConf.pid .. ";"
local nolook_query = "UPDATE `players` SET `description` = '' WHERE `players`.`id`= " .. coNdConf.pid .. ";"
local look_query = "UPDATE `players` SET `description` = ' [Reset "..(getPlayerReset(cid)+(1)).."]' WHERE `players`.`id`= " .. coNdConf.pid .. ";"
--=[Reseta]=--
function addValue(value)
if coNdConf.look == false then
  doRemoveCreature(cid)
db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(nolook_query)
else
  doRemoveCreature(cid)
   db.executeQuery(lvl_query);db.executeQuery(reset_query);db.executeQuery(look_query)
  return LUA_NO_ERROR
end
end
function nowReseting()
if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then
  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -")
  return true
end
if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then
                  doPlayerPopupFYI(cid, success)
                  addEvent(addValue, coNdConf.resetConf.time*1, value)
            else
                  doPlayerPopupFYI(cid, success)
                  addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))
                  addEvent(addValue, coNdConf.resetConf.time*1000, value)
  return true
end
end
--[STAGES Nao mexer em nada.]--
function checkLevelStageReset(cid)
local stages = {
            {resets= stage.stage1.resets, premmy= stage.stage1.premmy, free= stage.stage1.free},
            {resets= stage.stage2.resets, premmy= stage.stage2.premmy, free= stage.stage2.free},
            {resets= stage.stage3.resets, premmy= stage.stage3.premmy, free= stage.stage3.free},
            {resets= stage.stage4.resets, premmy= stage.stage4.premmy, free= stage.stage4.free},
            {resets= stage.stage5.resets, premmy= stage.stage5.premmy, free= stage.stage5.free},
            {resets= stage.stage6.resets, premmy= stage.stage6.premmy, free= stage.stage6.free},
            {resets= stage.stage7.resets, premmy= stage.stage7.premmy, free= stage.stage7.free},
            {resets= stage.stage8.resets, premmy= stage.stage8.premmy, free= stage.stage8.free},
            {resets= stage.stage9.resets, premmy= stage.stage9.premmy, free= stage.stage9.free},
            {resets=stage.stage10.resets, premmy=stage.stage10.premmy, free=stage.stage10.free},
            {resets=stage.stage11.resets, premmy=stage.stage11.premmy, free=stage.stage11.free},
            {resets=stage.stage12.resets, premmy=stage.stage12.premmy, free=stage.stage12.free},
            {resets=stage.stage13.resets, premmy=stage.stage13.premmy, free=stage.stage13.free},
            {resets=stage.stage14.resets, premmy=stage.stage14.premmy, free=stage.stage14.free},
            {resets=stage.stage15.resets, premmy=stage.stage15.premmy, free=stage.stage15.free},
            {resets=stage.stage16.resets, premmy=stage.stage16.premmy, free=stage.stage16.free},
            {resets=stage.stage17.resets, premmy=stage.stage17.premmy, free=stage.stage17.free},
            {resets=stage.stage18.resets, premmy=stage.stage18.premmy, free=stage.stage18.free},
            {resets=stage.stage19.resets, premmy=stage.stage19.premmy, free=stage.stage19.free},
            {resets=stage.stage20.resets, premmy=stage.stage20.premmy, free=stage.stage20.free},
            {resets=stage.stage21.resets, premmy=stage.stage21.premmy, free=stage.stage21.free},
            {resets=stage.stage22.resets, premmy=stage.stage22.premmy, free=stage.stage22.free},
            {resets=stage.stage23.resets, premmy=stage.stage23.premmy, free=stage.stage23.free},
            {resets=stage.stage24.resets, premmy=stage.stage24.premmy, free=stage.stage24.free},
            {resets=stage.stage25.resets, premmy=stage.stage25.premmy, free=stage.stage25.free},
            {resets=stage.stage26.resets, premmy=stage.stage26.premmy, free=stage.stage26.free},
        {resets=stage.stage27.resets, premmy=stage.stage27.premmy, free=stage.stage27.free},

}
            local resets = getPlayerReset(cid)
                            for i, tab in ipairs(stages) do
                                            if resets <= tab.resets then
                                                            coNdConf.resetConf.Level = isPremium(cid) and tab.premmy or tab.free
                                                            break
                                            end
                            end
if (getPlayerLevel(cid) < coNdConf.resetConf.Level) then
err(cid, MESSAGE_STATUS_CONSOLE_BLUE, "- Level Necessário Para o Reset ["..coNdConf.resetConf.Level.."]. Faltam "..coNdConf.resetConf.Level-getPlayerLevel(cid).." level's para você Resetar. -")
return TRUE
end
  if getPlayerLevel(cid) >= coNdConf.resetConf.Level and (coNdConf.teleport == false) then
                 doPlayerPopupFYI(cid, success)
                 addEvent(addValue, coNdConf.resetConf.time*1000, value)
   else
   doPlayerPopupFYI(cid, success)
   addEvent(addValue, coNdConf.resetConf.time*1000, value)
   addEvent(doTeleportThing, coNdConf.resetConf.time*900, cid, getTownTemplePosition(getPlayerTown(cid)))
            return true
  end
end
            function newReset(cid)
            if(coNdConf.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == LUA_ERROR) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar em Protection Zone Para Resetar. -") return TRUE end
            if(coNdConf.needPa == true) and not isPremium(cid) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa ser Premium Account para Resetar. -") return TRUE end
            if(coNdConf.withe == false) and (getCreatureSkullType(cid) == 3) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Withe. -") return TRUE end
            if(coNdConf.red == false) and (getCreatureSkullType(cid) == 4) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você não pode resetar em condições de PK Red. -") return TRUE end
            if(coNdConf.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
                 err(cid,MESSAGE_STATUS_CONSOLE_BLUE,"- Você Precisa estar sem Battle para Resetar. -") return TRUE end
local xy = {true,false}
table.insert(stage.Abilitar, false)
table.insert(stage.Desabilitar, false)
if stage.Abilitar[1] == xy[1] and stage.Desabilitar[1] == xy[2] then
checkLevelStageReset(cid)
elseif stage.Abilitar[1] == xy[2] and stage.Desabilitar[1] == xy[1] then
nowReseting()
else
doPlayerPopupFYI(cid, "LUA_ERROR; Configure corretamente o Sistema de STAGES!")
end
return true
end
            function tableResetInstall()
                 print(not rss_db  and LUA_ERROR or "Tabela de Resets: Instalada ... [success] ")
                 addEvent(newReset, 1000, cid)
                 return false
                 end
            if tableResetInstall() then
  end
end
            --=[Install System]=--
                   function installReset()
                            if db.executeQuery("ALTER TABLE `players` ADD reset INT(11) NOT NULL DEFAULT 0;") then
                                                            print("[MarcelloMkez] -= Advanced Reset System 2.0 por DataBase =- Instalado com sucesso!")
                                                            return TRUE
                            end
                            print('[Advanced Reset System/MarcelloMkez] Não foi possível instalar o Sistema.')
                            return FALSE
                 end
                            local tt = {
                                   "Preparando Instalação...",
                                   "Instalando: TableReset Db...",
                                   "Instalando: getPlayerReset()...",
                                   "Instalando: addValue()...",
                                   "Instalando: checkLevelStageReset()...",
                                   "Instalando: newReset() and nowReseting()...",
                                   "Finalizando Instalação...",
                                   "...",
                                   success = {
                                   "Iniciando...",
                                   "function: TableReset Db...  [success]",
                                   "function: getPlayerReset()...          [success]",
                                   "function: addValue(value)...                   [success]",
                                   "function: checkLevelStageReset()... [success]",
                                   "function: newReset() and nowReseting()...    [success]",
                                   "Fim da Instalação.  ",
                                   "by: ~~ MarcelloMkez ~~                                          \nContato: marcello_dirt@[member='Hotmail'].com",
                                   inst = {"MarcelloMkez","Advanced Reset System 2.0 por DataBase"
                                   },
                                 },
                            }
                 if words == "/installresetguiizeera" and getPlayerAccess(cid) >= 3 then
                                            function install()
                                            if installReset() then
                                                            print(""..tt.success[7].."")
                                                                   doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,""..tt.success[8].."")
                                                            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] -="..tt.success.inst[2].."=- Instalado com sucesso!")
                                   else
                                                            print("["..tt.success.inst[1].."]  FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].")
                                                                  doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "["..tt.success.inst[1].."] FALHA NA INSTALAÇÃO! [O sistema ja foi instalado].")
                                            end
                                            return 1
                            end
                                  function concl(cid)
                                            local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[7].."")
                                                                 print(""..tt[8].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[7].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[8].."")
                                                            addEvent(install, 1000,cid)
                                            end
                                            function finall(cid)
                                                            local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[6].."")
                                                            print(""..tt[7].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[6].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[7].."")
                                                            addEvent(concl, 3000,cid)
                                            end
                                                 function installDd(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[5].."")
                                                            print(""..tt[6].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[5].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[6].."")
                                                            addEvent(finall, 1000,cid)
                                            end
                                            function installCc(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[4].."")
                                                            print(""..tt[5].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[4].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[5].."")
                                                  addEvent(installDd, 1000,cid)
                                            end
                                            function installBb(cid)
                                                   local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[3].."")
                                                            print(""..tt[4].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[3].."")
                                                  doPlayerSendTextMessage(cid, typetx,""..tt[4].."")
                                            addEvent(installCc, 1000,cid)
                                            end
                                            function installAa(cid)
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[2].."")
                                                            print(""..tt[3].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[2].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[3].."")
                                                            addEvent(installBb, 1000,cid)
                                            end
                                            function toInstall()
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                            print(""..tt.success[1].."")
                                                            print(""..tt[2].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt.success[1].."")
                                                            doPlayerSendTextMessage(cid, typetx,""..tt[2].."")
                                                   addEvent(installAa, 1000,cid)
                                                  end
                                            function preparation()
                                                  local typetx = MESSAGE_STATUS_CONSOLE_BLUE
                                                   print(""..tt[1].."")
                                                 doPlayerSendTextMessage(cid, typetx,""..tt[1].."")
                                            addEvent(toInstall, 3000,cid)
                            end
                                            if preparation() then
                                            end
                            end
return 1
end
--=[By: Juniior Cwb ;* ]=--

 

 

 

 

Agradeço, mas quero uma coisa mais simples mesmo.

Link para o comentário
Compartilhar em outros sites

  • 0

 

Então está bem, mas tarde eu vou olhar esse seu, agora vou ir dormir ...

Aquele seria mas recomendado para você só para ressaltar.

 

Vou testar ele. Mas eu não entendi muito bem. É talkaction mesmo ou é um mod?

Link para o comentário
Compartilhar em outros sites

  • 0

 

Vou testar ele. Mas eu não entendi muito bem. É talkaction mesmo ou é um mod?

É uma talk apenas tem estágios para resetar e seus respectivos level.

Você deve alterar está parte:

 

 

stage1= {resets= 1, premmy= 330, free= 330},

stage2= {resets= 5, premmy= 355, free= 355}, -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}])

stage3= {resets= 10, premmy= 360, free= 360}, -- resets = Número de resets para o Stage;

stage4= {resets= 15, premmy= 365, free= 365}, -- premmy = Level necessário para Premium Accounts;

stage5= {resets= 20, premmy= 380, free= 380}, -- free = Level necessário para Free Accounts;

stage6= {resets= 25, premmy= 390, free= 390}, -- Coloque em Ordem...

stage7= {resets= 30, premmy= 410, free= 410}, -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES]

stage8= {resets= 35, premmy= 430, free= 430}, -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x}

stage9= {resets= 40, premmy= 450, free= 450},

stage10={resets= 45, premmy= 480, free= 480},

stage11={resets= 50, premmy= 510, free= 510},

stage12={resets= 55, premmy= 550, free= 550},

stage13={resets= 60, premmy= 610, free= 610},

stage14={resets= 65, premmy= 750, free= 750},

stage15={resets= 70, premmy= 760, free= 760},

stage16={resets= 75, premmy= 900, free= 900},

stage17={resets= 80, premmy= 1000, free= 1000},

stage18={resets= 85, premmy= 1300, free= 1300},

stage19={resets= 90, premmy= 1500, free= 1500},

stage20={resets= 95, premmy= 3000, free= 3000},

stage21={resets= 100, premmy= 2800, free= 2800},

stage22={resets= 105, premmy= 2900, free= 2900},

stage23={resets= 110, premmy= 3200, free= 3200},

stage24={resets= 115, premmy= 3500, free= 3500},

stage25={resets= 120, premmy= 4300, free= 4300},

stage26={resets= 125, premmy= 4500, free= 4500},

stage27={resets= 130, premmy= 99500, free= 99500},

 

 

Editado por julhinhokullitz
Link para o comentário
Compartilhar em outros sites

  • 0

É uma talk apenas tem estágios para resetar e seus respectivos level.

Você deve alterar está parte:

 

 

stage1= {resets= 1, premmy= 330, free= 330},

stage2= {resets= 5, premmy= 355, free= 355}, -- EXPLICANDO e Configurando stages. (Se estiver Abilitado [Abilitar = {x}])

stage3= {resets= 10, premmy= 360, free= 360}, -- resets = Número de resets para o Stage;

stage4= {resets= 15, premmy= 365, free= 365}, -- premmy = Level necessário para Premium Accounts;

stage5= {resets= 20, premmy= 380, free= 380}, -- free = Level necessário para Free Accounts;

stage6= {resets= 25, premmy= 390, free= 390}, -- Coloque em Ordem...

stage7= {resets= 30, premmy= 410, free= 410}, -- [OBS: MARQUE UM "X" PARA ABILITAR OU DESABILITAR OS STAGES]

stage8= {resets= 35, premmy= 430, free= 430}, -- EX: para desabilitar mude: Abilitar = {}, Desabilitar = {x}

stage9= {resets= 40, premmy= 450, free= 450},

stage10={resets= 45, premmy= 480, free= 480},

stage11={resets= 50, premmy= 510, free= 510},

stage12={resets= 55, premmy= 550, free= 550},

stage13={resets= 60, premmy= 610, free= 610},

stage14={resets= 65, premmy= 750, free= 750},

stage15={resets= 70, premmy= 760, free= 760},

stage16={resets= 75, premmy= 900, free= 900},

stage17={resets= 80, premmy= 1000, free= 1000},

stage18={resets= 85, premmy= 1300, free= 1300},

stage19={resets= 90, premmy= 1500, free= 1500},

stage20={resets= 95, premmy= 3000, free= 3000},

stage21={resets= 100, premmy= 2800, free= 2800},

stage22={resets= 105, premmy= 2900, free= 2900},

stage23={resets= 110, premmy= 3200, free= 3200},

stage24={resets= 115, premmy= 3500, free= 3500},

stage25={resets= 120, premmy= 4300, free= 4300},

stage26={resets= 125, premmy= 4500, free= 4500},

stage27={resets= 130, premmy= 99500, free= 99500},

 

 

 

Não funcionou aqui. Mas enfim, depois se você puder me ajudar com esse outro ai do post, já vai ta de bom tamanho.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...