Ir para conteúdo
  • 0

Reset System Com Stagios


Subwat

Pergunta

Bom galera, eu to com um script aqui de reset que foi feito por um membro aqui do xtibia, pois bem... estou com uma séria dificuldade nesse script um sistema de estágios estilo RadBr (radbr.com) por exemplo o player resetou no level 350 da primeira vez, na proxima ele vai ter que estár lvl 360 pra upar,

é isso, se alguém puder me ajudar eu agradeço e serei grato por isso.

 

 

Segue abaixo o Script:

 

--[[ 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     
     removeitem = true,                   -- precisa remover ITEM                                [true/false] 


--[Configurações do Reset]__  

             resetStatus = {     

             player = getPlayerGUID(cid),        -- Não Mude. 
             lvl = 3500 ,                         -- Level Necessário para Resetar.                                 [valor] 
             lvlreset = 10,                       -- Level que retornará após o Reset.                              [valor] 
             limite = 1000,                       -- Máximo de resets que um player pode chegar.                    [valor] 
             newClasse = 1,                      -- Id da Nova Vocação após o Reset.                               [valor] 
             tempo= 1                            -- 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` = ' [Resets: ".. getPlayerStorageValue(cid,2310) .."]' 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 ser level 3500 para resetar!" 
   local msg ="~~[Reset: ".. getPlayerStorageValue(cid,2310) .."]~~ 'Sucesso ao Resetar!  Você será deslogado em "..config.resetStatus.tempo.." Segundos." 


 --[Condiçoes]__  

   if doPlayerRemoveItem(cid,10309,1) then 
    doPlayerSendTextMessage(cid,18,"Você Precisa da pedra RESETER que pode ser comprada no site.")       
   return TRUE       

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

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

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

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

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

   elseif(config.battle == true) and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then 
    doPlayerSendTextMessage(cid,18,"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 doPlayerSendTextMessage(cid,18, needLvl) then 
      doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) 
          return TRUE 
   end 

       if doPlayerSendTextMessage(cid,18, msg) then 

       end 
       return TRUE 

end 

--[by: MarcelloMkez]__

 

 

 

se puderem editar apartir do script eu agradeceria, ou se não pode fazer um próprio não tem problema com tanto que tenha a mesma finalidade.

 

 

abraços

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

×
×
  • Criar Novo...