Postado Outubro 14, 2016 8 anos OT: 8.60 Distro: OTX sv 2 Conhecimento em script: médio ~ --- Olá TK! Tenho uma action de double exp potion, funciona normalmente, mas gostaria de modificar.Queria que o jogador só pudesse usar essa Double Exp Potion de 4 em 4 horas (exemplo). Caso ele já esteja sob efeito da Double exp potion ou não tenha passado esse tempo de 4 horas o jogador não poderá usar outra Double exp potion novamente. Minha script: function onUse(cid, item, frompos, item2, topos) local pausa = 60*60*1000 -- (1000 = 1 segundos) Tempo que o script durará local texto = "Sua experience agora está em dobro durante 60 minutos. Perde o efeito se deslogar ou morrer!" -- Texto que irá receber ao usar a potion. local exp = 2 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server. expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal. if item.itemid == 7443 then doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,13) doPlayerSendTextMessage(cid,22,texto) addEvent(potion,pausa,cid) end end function potion(pos, cid) doPlayerSetExperienceRate(pos,expfinal) end Editado Outubro 14, 2016 8 anos por oloku5 (veja o histórico de edições)
Postado Outubro 15, 2016 8 anos function onUse(cid, item, frompos, item2, topos) local tempo = 14400000 -- 4 horas local storage = 24896 local pausa = 60*60*1000 -- (1000 = 1 segundos) Tempo que o script durará local texto = "Sua experience agora está em dobro durante 60 minutos. Perde o efeito se deslogar ou morrer!" -- Texto que irá receber ao usar a potion. local exp = 2 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server. expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal. if getPlayerStorageValue(cid, storage) == 1 then doPlayerSendTextMessage(cid,22,Você ja utilizou o exp boost, espere 4 horas para utilizar novamente) return true end if item.itemid == 7443 then doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,13) doPlayerSendTextMessage(cid,22,texto) setPlayerStorageValue(cid, storage, 1) addEvent(potion,pausa,cid) addEvent(useagain,tempo,storage) end end function potion(pos, cid) doPlayerSetExperienceRate(pos,expfinal) end function useagain(storage) setPlayerStorageValue(cid, storage, 0) end Não testei mas acredito que funcione
Postado Outubro 15, 2016 8 anos Autor Funcionou da seguinte forma; Eu usei a exp potion e ela funcionou normalmente e eu não consegui usar outra exp potion, mas a storage não ta saindo, o tempo não ta funcionando, entende? UP UP UP alguém ajuda por favor? Editado Outubro 15, 2016 8 anos por oloku5 (veja o histórico de edições)
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.