Ir para conteúdo
  • Cadastre-se

Posts Recomendados

function onCastSpell(cid, var) 
    local tempo = 10
    local time = os.time()
    local storage = 17900
    if getPlayerStorageValue(cid, storage) <= time then
        setPlayerStorageValue(cid, storage, time + tempo)
     doPlayerSendTextMessage(cid, 27, "Usou")
    else
        local segundos = getPlayerStorageValue(cid, storage) - time
        if segundos > 0 then
doPlayerSendCancel(cid, "Ainda restam: " .. segundos .." segundos.")
doSendAnimatedText(getPlayerPosition(cid),'.' ..segundos.. '.',18)
end
end 
end 


 

 

Estou tentando colocar uma contagem regressiva saindo em cima do player, está muito difícil, não estou usando o addEvent direito eu suponho. Alguém pode me ajudar?

Link para o post
Compartilhar em outros sites

Deixa eu tentar entender..

 

function onCastSpell(cid, var) 
    local tempo = 10 // 10 o que ?
    local time = os.time() 
    local storage = 17900
    if getPlayerStorageValue(cid, storage) <= time then // se o player tiver a storage <= 17910 então,  
        setPlayerStorageValue(cid, storage, time + tempo) // adiciona ao player o storage 17900, 14:10:10(exemplo) + 10 (10 o que, não está explicito, pode ser tanto 14+10, ou 14:10+10, ou 14:10:10+10)
     doPlayerSendTextMessage(cid, 27, "Usou")
    else
        local segundos = getPlayerStorageValue(cid, storage) - time // segundos = 17900 - 14:10:10
        if segundos > 0 then // 14:10:10 isso vai ser sempre maior que 0 e vai retornar true
doPlayerSendCancel(cid, "Ainda restam: " .. segundos .." segundos.")
doSendAnimatedText(getPlayerPosition(cid),'.' ..segundos.. '.',18)
end
end 
end 

Você nao usou nenhum addEvent.

 

Tenta isso:

function onCastSpell(cid, var) 
    local tempo = 10 * 60
    local time = os.time()
    local storage = 17900
    if getPlayerStorageValue(cid, storage) <= time then
        setPlayerStorageValue(cid, storage, time + tempo)
     doPlayerSendTextMessage(cid, 27, "Usou")
    else
        local segundos = getPlayerStorageValue(cid, storage) - time
        if segundos > 0 then
doPlayerSendCancel(cid, "Ainda restam: " .. segundos .." segundos.")
doSendAnimatedText(getPlayerPosition(cid),'.' ..segundos.. '.',18)
end
end 
end 

 

Editado por Enzo Caue (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Você entendeu o script tudo errado. O script não funciona dessa forma de você falou. Ele funciona deste modo, preste atenção.

 

function onCastSpell(cid, var) 
    local tempo = 10 // tempo que ira demorar para usar novamente
    local time = os.time() 
    local storage = 17900
    if getPlayerStorageValue(cid, storage) <= time then // se o player tiver a storage <= (17900 == os.time()) então,  
        setPlayerStorageValue(cid, storage, time + tempo) // adiciona ao player o storage (17900 == os.time() + 10), exemplo, o tempo agora que usei é 10:00:00 ele adicionou na storage mais 10 segundos então a storage vai ser 17900 == 10:00:10.
     doPlayerSendTextMessage(cid, 27, "Usou")
    else
        local segundos = getPlayerStorageValue(cid, storage) - time // segundos = 17900 == 10:00:10 - 10:00:(Tempo aumentando por segundo) que o resoltado será 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0.
        if segundos > 0 then // se o resultado não for 0 ele irá dizer
doPlayerSendCancel(cid, "Ainda restam: " .. segundos .." segundos.")
doSendAnimatedText(getPlayerPosition(cid),'.' ..segundos.. '.',18)
end
end 
end 
Editado por koete (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

Ve se é isso que vc quer:

local tempo = 10
local time = os.time()
local storage = 17900

function CountDown(cid, segundos)-- By Vabrindox
    if segundos == 0 then
        return false
    else
        doPlayerSendCancel(cid, "Ainda restam: " .. segundos .." segundos.")
        doSendAnimatedText(getPlayerPosition(cid),'.' ..segundos.. '.',18)
        return addEvent(CountDown, 1000, cid, segundos-1)
    end
end


function onCastSpell(cid, var) 
    local get_stg_value = getPlayerStorageValue(cid, storage)
    local segundos = getPlayerStorageValue(cid, storage) - time
    if get_stg_value <= time then
        setPlayerStorageValue(cid, storage, time + tempo)
        doPlayerSendTextMessage(cid, 27, "Usou")
        CountDown(cid, tempo)
    end 
end 

 

@Edit melhorei o script pq tava meio feio antes

Editado por Vabrindox (veja o histórico de edições)
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