Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Eai galera do TibiaKing blz? Eu precisava urgente de uma script que o player soh pode pisar no Tile com X resets.

Exemplo: Quero fazer uma quest pra 10 resets, players com menos de 10 resets nao passam pelo Tile.

Vou colocar meu sistema de reset aqui V

Spoiler

--[[ 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 = true,                      -- 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 = 250000 ,                         -- Level Necessário para Resetar.                                 [valor]
              lvlreset = 5000,                       -- Level que retornará após o Reset.                              [valor]
              limite = 25,                       -- Máximo de resets que um player pode chegar.                    [valor]
              newClasse = 5,                      -- 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` = ' [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]__

 

Link para o post
Compartilhar em outros sites
function onStepIn(cid, item, position, fromPosition)

local storage = 2310 -- Storage do reset
local resets = 10 -- quantos resets precisa ter

if getPlayerStorageValue(cid, storage) >= resets then
doPlayerSendTextMessage(cid, 18, "voce passou")

else
doTeleportThing(cid, fromPosition)
doPlayerSendTextMessage(cid, 18, "voce precisa ter no minímo ".. resets .." para passar aqui")
end
end

 

giphy.gif

Link para o post
Compartilhar em outros sites

O code do amigo acima vai resolver, mas da uma olhada nesse meu sistema:


Pode ser útil futuramente para você!

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
  • 3 years later...
Em 23/07/2017 em 12:15, PedroSTT disse:

function onStepIn(cid, item, position, fromPosition)

local storage = 2310 -- Storage do reset
local resets = 10 -- quantos resets precisa ter

if getPlayerStorageValue(cid, storage) >= resets then
doPlayerSendTextMessage(cid, 18, "voce passou")

else
doTeleportThing(cid, fromPosition)
doPlayerSendTextMessage(cid, 18, "voce precisa ter no minímo ".. resets .." para passar aqui")
end
end

 

aonde vai isso?

Link para o post
Compartilhar em outros sites
25 minutos atrás, Mathias Silva disse:

aonde vai isso?

Provavelmente em movements/script

fora a tang que faltou:
<movevent type="StepIn" actionid="7006" event="script" value="nomearq.lua"/>

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por Vitor Bicaleto
      Galera to com o script do addon doll aqui, quando eu digito apenas "!addon" ele aparece assim: Digite novamente, algo está errado!"
      quando digito por exemplo: "!addon citizen" ele não funciona e não da nenhum erro
       
      mesma coisa acontece com o mount doll.. 
    • Por Ayron5
      Substitui uma stone no serve, deu tudo certo fora  esse  erro ajudem  Valendo  Rep+  Grato  

      Erro: data/actions/scripts/boost.lua:557: table index is nil
       [Warning - Event::loadScript] Cannot load script (data/actions/scripts/boost.lua)

      Script:
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo