Ir para conteúdo

[Talkaction] Rank Reset


Daianpf2011

Posts Recomendados

Tipo do script: Rank de Reset

Protocolo (versão do Tibia): 8.6

Servidor utilizado: Theforgotten 0.3.6

Nível de experiência: Avançado

Adicionais/Informações: Quero um script que apareça o numero de resets de um player, por exp: eu falo !rank reset, e apareçe os 10 primeiros colocados de reset do server.

 

 

 

O sistema de reset que eu uso é esse:

--[[ <(Advanced Reset System 2.0)>

 

Autor: Juniior Cwb ;*. Contato: (xxxxxxxxxx@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@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]=--

-- "/installreset" -- Só será usado uma vez, para instalar o sistema.

-- "!resetar" -- Para Resetar.

 

function onSay(cid, words, param)

 

if words =="!resetar" then

 

--[ Condições de Reset ] --

local coNdConf = {

 

needPz = false, -- Precisa estar em Pz pra resetar? [true, false]

needPa = false, -- Precisa ser Premium Account Pra resetar? [true, false]

withe = false, -- Players com Pk Withe podem resetar? [true, false]

red = true, -- Players com Pk Red pode resetar? [true, false]

battle = false, -- Players precisão estar sem battle pra resetar? [true, false]

teleport = false, -- Teleportar Player para o templo após resetar? [true, false]

look = true, -- Aparecer Resets no Look do Player? [true, false]

pid = getPlayerGUID(cid), -- Não Mexer.

 

 

--[ Configurações do Reset ] --

resetConf = {

 

Level = 350, -- Level Necessário para Resetar. [Valor]

backLvl = 50, -- Level que voltará após o Reset. [Valor]

time = 2, -- 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= 4, premmy= 350, free= 350},

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

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

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

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

stage6= {resets= 29, premmy= 400, free= 400}, -- Coloque em Ordem...

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

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

stage9= {resets= 44, premmy= 460, free= 460},

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

stage11={resets= 54, premmy= 500, free= 500},

stage12={resets= 59, premmy= 525, free= 525},

stage13={resets= 64, premmy= 550, free= 550},

stage14={resets= 69, premmy= 575, free= 575},

stage15={resets= 74, premmy= 600, free= 600},

stage16={resets= 79, premmy= 650, free= 650},

stage17={resets= 84, premmy= 700, free= 700},

stage18={resets= 89, premmy= 750, free= 750},

stage19={resets= 94, premmy= 800, free= 800},

stage20={resets= 99, premmy= 1000, free= 1000},

 

}

--[[>> 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*1000, 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},

 

}

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@hotmail.com",

inst = {"MarcelloMkez","Advanced Reset System 2.0 por DataBase"

 

},

 

},

 

}

if words == "/installreset" 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

bom cara eu tenhu um mas ele n vai funfa nesse seu pois o seu n tem storage eu recomendo usa oq vou passar ai sim vai funfar o rank

 

 

--[[ SCRIPTING> MarcelloMkez <scriptING ]]

    --[[  [Advanced Reset System]
                  Autor: MarcelloMkez
                  Versão: 1.0
                  TFS: 0.3.6
                  Testado em: 8.50
                  Fórum: www.xtibia.com/forum/topic/138026-talk-action-advanced-reset-system/

    [Características]
           ~ Versão 1.0 ~

          - Resets no Look;  
          - Premium Account ou não;
          - Mudar Vocação;
          - Limite de Resets;
          - Opções para Abilitar e Desabilitar Condições;

        [Em Construção]

      - Stages Free e Premium; 
      - 'Talvez' um novo sistema de mudar Vocação;
          sem data para postagem.   ]]



   function onSay(cid, words, param)

--[Configurações de Condição]__

   config = {                                                                             --[[verdadeiro / Falso]]

     needPa = false,                   -- Precisa de Premium Account?                          [true / false]
     needPz = false,                    -- Precisa estar em Protection Zone?                    [true / false]      
     battle = false,                   -- Precisa estar sem Batlle para Resetar?               [true / false]
     withe = false,                    -- Players PK Withe pode Resetar?                       [true / false]       
     red = false,                      -- Players PK Red pode Resetar?                         [true / false]
     tp = true,                        -- Teleportar para o Templo após o reset?               [true / false]
     look = true,                      -- Mostrar Resets no Look do Player?                    [true / false]
     addLimite = true,                -- Abilitar Limite de Resets?                           [true / false]
     setClasse = false,                 -- Mudar Vocação do player quando resetar?              [true / false]
     storage = 2310,                   -- Storage                                                 [valor]


--[Configurações do Reset]__ 

             resetStatus = {    

             player = getPlayerGUID(cid),        -- Não Mude.
             lvl = 500 ,                         -- Level Necessário para Resetar.                                 [valor]
             lvlreset = 8,                       -- Level que retornará após o Reset.                              [valor]
             limite = 100,                       -- Máximo de resets que um player pode chegar.                    [valor]
             newClasse = 1,                      -- Id da Nova Vocação após o Reset.                               [valor]
             tempo= 5                            -- Tempo para o Player deslogar para Resetar. Em segundos.        [valor]
       },
   }   

--[Funções]__

                  function Reseting(cid)
            resets = getResets(cid)
                 setPlayerStorageValue(cid,config.storage,resets+1)
                  doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
                    doPlayerSetVocation(cid, config.resetStatus.newClasse)
                    doRemoveCreature(cid)
                   db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                         return TRUE
           end

                   function noAll(cid)
                  resets = getResets(cid)
                    setPlayerStorageValue(cid,config.storage,resets+1)
                    doRemoveCreature(cid)
                    db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player)
                return TRUE
               end

                       function noTeleporting(cid)
                      resets = getResets(cid)
                        setPlayerStorageValue(cid,config.storage,resets+1)
                         doPlayerSetVocation(cid, config.resetStatus.newClasse)
                        doRemoveCreature(cid)
                      db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player)
            return TRUE
           end

                       function noLook(cid)
                      resets = getResets(cid)
                        setPlayerStorageValue(cid,config.storage,resets+1)
                        doPlayerSetVocation(cid, config.resetStatus.newClasse)
                        doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
                        doRemoveCreature(cid)
                    db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player)
            return TRUE
           end

                       function noClasse(cid)
                     resets = getResets(cid)
                        setPlayerStorageValue(cid,config.storage,resets+1)
                        doTeleportThing(cid,   getTownTemplePosition(getPlayerTown(cid)))
                        doRemoveCreature(cid)
                       db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                         return TRUE
           end

                       function setClasse(cid)
                        resets = getResets(cid)
                        setPlayerStorageValue(cid,config.storage,resets+1)
                        doPlayerSetVocation(cid, config.resetStatus.newClasse)                  
                        doRemoveCreature(cid)
                       db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                         return TRUE
           end

                       function look(cid)
            resets = getResets(cid)
                        setPlayerStorageValue(cid,config.storage,resets+1)
                        doRemoveCreature(cid)
                      db.executeQuery("UPDATE `players` SET `description` = ' [Reset "..resets.."]' WHERE `players`.`id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                         return TRUE
           end

                       function teleporting(cid)
            resets = getResets(cid)
                        setPlayerStorageValue(cid,config.storage,resets+1)
                        doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)))
                        doRemoveCreature(cid)
            db.executeQuery("UPDATE `players` SET `description` = '' WHERE `players`.`id` = "..config.resetStatus.player)
                        db.executeQuery("UPDATE `players` SET `level` = "..config.resetStatus.lvlreset..", `experience` = 0 WHERE `id` = "..config.resetStatus.player)
                         return TRUE
           end

                 function getResets(cid)
           resets = getPlayerStorageValue(cid,config.storage)

              if resets < 0 then
            resets = 0
          end
           return resets

       end


   local resets = getResets(cid)
   local needLvl ="Você precisa de "..config.resetStatus.lvl-getPlayerLevel(cid).." level's para resetar."
   local msg ="~~[Reset: "..getResets(cid).."]~~ 'Sucesso ao Resetar!  Você será deslogado em "..config.resetStatus.tempo.." Segundos."


 --[Condiçoes]__       

 if(config.needPz == true) and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
  doPlayerSendTextMessage(cid,22,"Você Precisa estar em Protection Zone Para Resetar.")
   return TRUE

   elseif(config.addLimite == true) and (getResets(cid) == config.resetStatus.limite) then
       doPlayerSendTextMessage(cid, 22, "Você ja atingiu o Limite de Resets.")
   return TRUE

       elseif(config.withe == false) and (getCreatureSkullType(cid) == 3) then
    doPlayerSendTextMessage(cid,22,"Você ta PK White, por isso não pode resetar.")
   return TRUE

   elseif(config.red == false) and (getCreatureSkullType(cid) == 4) then
    doPlayerSendTextMessage(cid,22,"Você ta PK Red, por isso não pode resetar.")
    return TRUE

   elseif(config.needPa == true) and not isPremium(cid) then
    doPlayerSendTextMessage(cid,22,"Você Precisa ser Premium Account para Resetar.")
    return TRUE

   elseif(config.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
    doPlayerSendTextMessage(cid,22,"Você Precisa estar sem Battle para Resetar.")      
   return TRUE 

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == true) and (config.setClasse == true) then
         addEvent(Reseting, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == false) and (config.setClasse == false) then 
        addEvent(noAll, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == true) and (config.setClasse == true) then
         addEvent(noTeleporting, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == false) and (config.setClasse == true) then
         addEvent(noLook, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == true) and (config.setClasse == false) then
          addEvent(noClasse, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == false) and (config.setClasse == true) then
          addEvent(setClasse, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == false) and (config.look == true) and (config.setClasse == false) then
          addEvent(look, config.resetStatus.tempo* 1000, cid)

       elseif getPlayerLevel(cid) >= config.resetStatus.lvl and (config.tp == true) and (config.look == false) and (config.setClasse == false) then
          addEvent(teleporting, config.resetStatus.tempo* 1000, cid)

   elseif doPlayerSendCancel(cid, needLvl) then
      doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
          return TRUE
   end

       if doPlayerPopupFYI(cid, msg) then

       end
       return TRUE

end

--[by: MarcelloMkez]__

 

 

Reset do MarcelloMkez aki vai o rank para ele

 

	<talkaction words="!rank reset" script="ranks.lua"/>

 

ai vc vai em ranks do seu ot apague tudo e coloque isto

 

 

function getPlayerNameByGUID2(n)
local c = db.getResult("SELECT `name` FROM `players` WHERE `id` = "..n..";")
if c:getID() == -1 then
return "SQL_ERROR["..n.."]"
end
return c:getDataString("name")
end

function onSay(cid, words, param)
local max = 20
local letters_to_next = 20

local skills = {
['fist'] = 0,
['club'] = 1,
['sword'] = 2,
['axe'] = 3,
['distance'] = 4,
['shielding'] = 5,
['fishing'] = 6,
['dist'] = 4,
['shield'] = 5,
['fish'] = 6,
}
local name_now
local name = "Highscore for level\n"
local rkn = 0
local no_break = 0
param = string.lower(param)
dofile('config.lua')
if param == "" or param == "level" and ( param ~= "magic" and param == "ml") and skills[param] == nil then
name = name.."\n"
name = name.."Rank Level - Nome do Jogador\n"
local v = db.getResult("SELECT `name`, `level`, `experience` FROM `players` WHERE `group_id` <= 2 ORDER BY `experience` DESC LIMIT 0,"..(max)..";")
repeat
no_break = no_break +1
if v:getID() == -1 then
break
end
rkn = rkn+1
name_now, l = v:getDataString("name"), string.len(v:getDataString("name"))
space = ""
for i=1, letters_to_next-l do
space = space.." "
end
name = name..rkn..". "..v:getDataInt("level") .." - "..name_now..space.." ".."\n" 
if no_break >= 20 then
break
end
until v:next() == false

elseif param == "magic" or param == "ml" then
name = name.."\n"
name = name.."Rank Magic - Nome do Jogador\n"
local v = db.getResult("SELECT `name`, `level`, `maglevel` FROM `players` WHERE `group_id` <= 2 ORDER BY `maglevel` DESC LIMIT 0,"..(max)..";")
repeat
if v:getID() == -1 then
break
end
rkn = rkn+1
name_now, l = v:getDataString("name"), string.len(v:getDataString("name"))
space = ""
for i=1, letters_to_next-l do
space = space.." "
end
name = name..rkn..". "..v:getDataInt("maglevel").." - "..name_now..space.." ".." ".."".."\n" 
until v:next() == false

elseif param == "reset" or param == "resets" then
name = name.."\n"
name = name.."Rank Reset - Nome do Jogador\n"
local v = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = 2310 ORDER BY cast(value as INTEGER) DESC;")
local kk = 0

repeat
if kk == max or v:getID() == -1 then
break
end
kk = kk+1
name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("player_id")))
space = ""
for i=1, letters_to_next-l do
space = space.." "
end
if name_now == nil then
name_now = 'sql error['..v:getDataInt("player_id")..']'
end
name = name..kk..". "..v:getDataInt("value").." - "..name_now..space.." \n"
until v:next() == false

elseif skills[param] ~= nil then
name = name.."\n"
name = name.."Rank "..param.." fighting - Nome do Jogador\n"
local v = db.getResult("SELECT `player_id`, `value` FROM `player_skills` WHERE `skillid` = "..skills[param].." ORDER BY `value` DESC;")
local kk = 0

repeat
if kk == max or v:getID() == -1 then
break
end
kk = kk+1
name_now, l = getPlayerNameByGUID2(v:getDataInt("player_id")), string.len(getPlayerNameByGUID2(v:getDataInt("player_id")))
space = ""
for i=1, letters_to_next-l do
space = space.." "
end

if name_now == nil then
name_now = 'sql error['..v:getDataInt("player_id")..']'
end
name = name..kk..". "..v:getDataInt("value").." - "..name_now..space.." \n"
until v:next() == false
end
if name ~= "Highscore\n" then 
doPlayerPopupFYI(cid, name)
end

return TRUE
end

 

 

Esse mostra reset no look ;D

Link para o comentário
Compartilhar em outros sites

Vlw ai, mais não vo colocar esse sistema de reset não, se voçê pudesse colocar uma storage no meu script eu ficaria grato,

pois coloquei esse seu ai, e funciono, mais pessoal reclamo por que, antes, tipo a cada reset ia aumenta o level pra resetar, dai fica meio chato deixar sempre 350, mais vlw ai.

 

Se conseguir colocar storage no meu script. Dou REP+ :D

 

Dias e mais dias sem respostas...

Link para o comentário
Compartilhar em outros sites

  • 3 months later...
  • 1 month later...
×
×
  • Criar Novo...