Ir para conteúdo

[Pedido] Talkactions


churupetinha

Posts Recomendados

qual sistema de reset você usa? poste que eu faço pa vc =d

 

caso for o do Marcello, é isso aqui só =d

 

em talkactions/scripts crie um arquivo chamado meusresets.lua e coloque isso:

function onSay(cid, words, param)
doPlayerSendTextMessage(cid,19,"Você tem ".. getPlayerReset(cid) .." resets.")
return true
end

 

XML:

<talkaction log="yes" words="!meusresets" event="script" value="meusresets.lua"/>

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

e esse aki mano olha!

 

 

--[[ 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 = 500000 ,                         -- Level Necessário para Resetar.                                 [valor]
             lvlreset = 8,                       -- Level que retornará após o Reset.                              [valor]
             limite = 50,                       -- Máximo de resets que um player pode chegar.                    [valor]
             newClasse = 1,                      -- Id da Nova Vocação após o Reset.                               [valor]
             tempo= 2                            -- 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]__

 

mano eu testei aki e da esse erro aki olha

 

10/10/2010 11:25:18] [Error - TalkAction Interface] 
[10/10/2010 11:25:18] data/talkactions/scripts/meusresets.lua:onSay
[10/10/2010 11:25:18] Description: 
[10/10/2010 11:25:18] data/talkactions/scripts/meusresets.lua:2: attempt to call global 'getPlayerReset' (a nil value)
[10/10/2010 11:25:18] stack traceback:
[10/10/2010 11:25:18]     data/talkactions/scripts/meusresets.lua:2: in function <data/talkactions/scripts/meusresets.lua:1>

Link para o comentário
Compartilhar em outros sites

function onSay(cid, words, param)

function getResets(cid)
resets = getPlayerStorageValue(cid,1020)
if resets < 0 then
resets = 0
end
return resets
end

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. getResets(cid) .." reset's no seu character.")
return TRUE
end

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...