Ir para conteúdo

Featured Replies

Postado
  • Autor
  Em 22/08/2021 em 14:36, Saawsss disse:

--///////////////CONFIGURAÇÃO///////////////////////
function onUse(cid, item, frompos, item2, topos)
local Iditem = 7440 --ID DO ITEM
local storage = 1524
local Exp = 3.0
local texto = 'Voce Ganhou 30 Minutos de Exp [3x]'
local days = 1
--///////////////FINAL DA CONF//////////////////////

if getPlayerStorageValue(cid, storage) <= 0 then
    doSendMagicEffect(getPlayerPosition(cid), 10)
    setPlayerStorageValue(cid, storage, os.time()+days*76*24) -- configurar o tempo
    doPlayerSendTextMessage(cid, 22, texto)
    doPlayerSetExperienceRate(cid, Exp)
    doPlayerRemoveItem(cid, Iditem, 1)
else
    horas = math.floor((getPlayerStorageValue(cid, storage) - os.time())/(76))
    minutos = math.floor((getPlayerStorageValue(cid, storage) - os.time())/(60))
             if horas >= 1 then
    return doPlayerSendCancel(cid, "Voce podera usar a pocao em "..(minutos < 0 and 0 or minutos).." minutos")
end
end
end

Fiz esse aqui, testa ai.

as vezes da pra usar, e as vezes da isso ''you cannot use this object''

  Em 22/08/2021 em 21:49, Doidodepeda disse:

as vezes da pra usar, e as vezes da isso ''you cannot use this object''

Outro bug que acabei de ver, caso vc jogue a potion no chao e vc sa user nela, ela n some. fica la no chao pra qlq pessoa usar e sem sumir.

  • Respostas 12
  • Visualizações 924
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • So volto tarde
    So volto tarde

    function onUse(cid, item, frompos, item2, topos) local time = 1800 -- Tempo que durará em segundos local texto = 'Voce Ganhou 30 Minutos de Exp [3x]' -- Texto que irá receber ao usar a potion.

  • @Doidodepeda Boa tarde, tente assim:    OBS: Se o script funcionar os créditos é do @So volto tarde, eu só ajustei mais ele foi quem criou.   function onUse(cid, item, frompos, item

  • @Doidodepeda Boa noite, tente assim:   Altere o xml para: Separe cada itemid da potion por ";", como está abaixo <action itemid="7440;7439" script="expPotions.lua"/>  

Posted Images

Postado
  • Solução

@Doidodepeda Boa noite, tente assim:

 

Altere o xml para:

Separe cada itemid da potion por ";", como está abaixo

<action itemid="7440;7439" script="expPotions.lua"/>

 

Altere o script para esse, está comentado como usar:

local expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal.
local textoPotionUsada =  "em uso"

local potions = {
   -- [ID_POTION] = { tempo = DURAÇÃO, experiencia = EXPERIENCIA, quantidade = QUANTIDADE_DE_POTIONS, texto = 'Voce Ganhou 30 Minutos de Exp [3x]', textofinal = 'Bonus de Exp [3x] Finalizada', storage = STORAGE_UNICO_PARA_CADA_POTION, textoClasse = 22, efeito = 1 },
   [7440] = { tempo = 1800, experiencia = 3.0, quantidade = 1, texto = 'Voce Ganhou 30 Minutos de Exp [3x]', textofinal = 'Bonus de Exp [3x] Finalizada', storage = 33330, textoClasse = 22, efeito = 1 },
   [7439] = { tempo = 2000, experiencia = 5.0, quantidade = 1, texto = 'Voce Ganhou 30 Minutos de Exp [5x]', textofinal = 'Bonus de Exp [5x] Finalizada', storage = 33331, textoClasse = 22, efeito = 1 }
}

function onUse(cid, item, frompos, item2, topos)

   for potionId, potionConfig in pairs(potions) do
      if item.itemid == potionId then

         if (getPlayerStorageValue(cid, potionConfig.storage) > os.time()) then
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, textoPotionUsada)
            return;
         end

         local quantidadePotionPlayer = getPlayerItemCount(cid, potionId)
         if quantidadePotionPlayer < potionConfig.quantidade or quantidadePotionPlayer <= 0 then
            return;
         end
         doRemoveItem(item.uid, potionConfig.quantidade)
         doPlayerSetExperienceRate(cid, potionConfig.experiencia)
         doSendMagicEffect(frompos, potionConfig.efeito)
         doPlayerSendTextMessage(cid, potionConfig.textoClasse, potionConfig.texto)
         addEvent(potion, potionConfig.tempo * 1000, cid, potionConfig)
         setPlayerStorageValue(cid, potionConfig.storage, (os.time() + potionConfig.tempo))
      end   
   end

end

function potion(cid, potionConfig)
   doPlayerSetExperienceRate(cid, expfinal)
   doPlayerSendTextMessage(cid, potionConfig.textoClasse, potionConfig.textofinal)
end

 

Postado
  Em 22/08/2021 em 21:49, Doidodepeda disse:

as vezes da pra usar, e as vezes da isso ''you cannot use this object''

Outro bug que acabei de ver, caso vc jogue a potion no chao e vc sa user nela, ela n some. fica la no chao pra qlq pessoa usar e sem sumir.

Vai no script que te mandei procura a linha >> 

doPlayerRemoveItem(cid, Iditem, 1)

e muda pra

doRemoveItem(IdItem.uid, 1)

ver se funciona e me avisa

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo