Ir para conteúdo

Error Script Reset


gorz

Posts Recomendados

Gente,quando eu uso o script fica dando esse erro:

 

[23/02/2011 20:55:20] Lua Script Error: [TalkAction Interface]

[23/02/2011 20:55:20] data/talkactions/scripts/reset.lua:onSay

[23/02/2011 20:55:20] data/talkactions/scripts/reset.lua:51: attempt to index global 'db' (a nil value)

[23/02/2011 20:55:20] stack traceback:

[23/02/2011 20:55:20] [C]: in function '__index'

[23/02/2011 20:55:20] data/talkactions/scripts/reset.lua:51: in function <data/talkactions/scripts/reset.lua:1>

 

ou seja,tudo q era pra acontece acontece,menos as coisas que estao na linha : db.executeQuery("UPDATE `players` SET `level` = "..config.RemainingLvl..", `experience` = "..config.exper.." WHERE `id` = "..config.pid)

 

Alguem me ajuda ae

 

function onSay(cid, words, param)

config = {

level= 10000, -- level para resetar

RemainingLvl=8, -- level que ficara depois do reset

exper=4200, -- Experiência que ficara depois do Reset

pid=getPlayerGUID(cid), -- Não Mecha

skull="yes", -- Players com Skull podem resetar "yes" para sim e "no" para não

redskull="yes",-- Players com Red Skull podem resetar "yes" para sim e "no" para não

prot="yes", -- precisa estar em area pz para resetar "yes" para sim e "no" para não

bat="yes", -- player com fight pode resetar "yes para sim e "no" para não

voc = getPlayerVocation(cid), -- Não mecha

mana = 35, -- mana que ficara após o reset

health = 185 -- Health que ficara após o reset

}

 

function getResets(cid)

reset = getPlayerStorageValue(cid,1020)

if reset < 0 then

reset = 0

end

return reset

end

 

if(config.skull == "no") and (getCreatureSkullType(cid) == 3) then

doPlayerSendTextMessage(cid, 24, "apenas players sem white skull podem resetar.")

return TRUE

end

 

if(config.redskull == "no") and (getCreatureSkullType(cid) == 4) then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"apenas player sem red skull podem resetar.")

return TRUE

end

 

if(config.prot == "no") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder resetar.")

return TRUE

end

 

if(config.bat == "no") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder resetar.")

return TRUE

end

 

if getPlayerLevel(cid) >= config.level then

setPlayerStorageValue(cid,1020,getResets(cid)+1)

doPlayerPopupFYI(cid,"you now was reset, you have "..getResets(cid)+(1).." reset\'s.")

doTeleportThing(cid, {x = 160, y = 54, z = 7}) -- pos do seu templo

if getPlayerVocation(cid) == 2 then -- Vocação que o player precisa ter

doPlayerSetVocation(cid, 6) -- Vocação que o player ficara após o reset

doRemoveCreature(cid)

db.executeQuery("UPDATE `players` SET `level` = "..config.RemainingLvl..", `experience` = "..config.exper.." WHERE `id` = "..config.pid)

else

doPlayerSendCancel(cid, "Você precisa do level "..config.level.." ou mais para resetar.")

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

end

return TRUE

end

end

Link para o comentário
Compartilhar em outros sites

USA ESSE

 

--[[ 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 = true,                   -- Precisa de Premium Account?                          [true / false] 
     needPz = true,                    -- 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 = false,                -- 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 = 300 ,                         -- Level Necessário para Resetar.                                 [valor] 
             lvlreset = 10,                       -- Level que retornará após o Reset.                              [valor] 
             limite = 3,                       -- 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 mais "..config.resetStatus.lvl-getPlayerLevel(cid).." leveis para resetar." 
   local msg ="~~[Reset: "..getResets(cid).."]~~ 'Sucesso ao Resetar!  Você será deslogado em "..config.resetStatus.tempo.." Segundos." 


 --[Condiçoes]__  

   if doPlayerRemoveItem(cid,10309,1) then 
    doPlayerSendTextMessage(cid,22,"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,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]__

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...