Postado Fevereiro 6, 2017 8 anos 1 hora atrás, mateusmoretti disse: testei aqui e deu isso [Error - Action Interface] data/actions/scripts/expox3.lua:onUse Description: data/actions/scripts/expox3.lua:43: attempt to call global 'creatureEvent' (a nil value) stack traceback: data/actions/scripts/expox3.lua:43: in function Unica coisa que fiz foi mudar a storage, e que voce colocou era "62164" e da potion e "49016" function onUse(cid, item, frompos, item2, topos) local pausa = 30*60*1000 -- (1000 = 1 segundos) Tempo que o script durará local texto = "Você Aumentou 3x sua Experiencia por 30 minutos" -- Texto que irá receber ao usar a potion. textofinal = "Acabou a Exp Potion 3x." -- Texto que irá receber quando o efeito da potion acabar. local exp = 3 -- 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. local limitedeuso = 49016 local textofinal1 = "Você já esta sob efeito da Exp Potion 3x espere o efeito acabar." local seuitem = 9942 -- seu item que dará double exp local efeito2 = 35 -- efeito que acontecera no momento que usar a pot time = 30 --fim da parte configuravel não mecha se nao tiver conhecimento de scripting local timeEffect = 1801 -- tempo em segundos que o efeito vai apareceer no player, 31 = 30 segundos. sempre coloque 1 segundo a mais. function effect() if isPlayer(cid) then local pos = getCreaturePosition(cid) doSendMagicEffect(pos, efeito1) end end if item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() <= 0) then doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,efeito2) setPlayerStorageValue(cid, limitedeuso, os.time() + 1800) doPlayerSendTextMessage(cid,22,texto) addEvent(potion,pausa,cid) elseif item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() > 0) then doPlayerSendTextMessage(cid,22,textofinal1) end for i = (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))), 1, -1 do local a = math.floor(i/60) .. ":" .. i - (60 * math.floor(i/60)) if #a < 4 then a = string.sub(a,1,2) .. "0" .. string.sub(a, 3) end if i == (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))) then creatureEvent(doPlayerSendCancel, (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))*1000, cid, "O Efeito da Exp Potion 3x Termina em.") end creatureEvent(doPlayerSendCancel, ((time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))-i)*1000, cid, "O Efeito da Exp Potion 3x Termina em "..a..".") end return true end function potion(cid) doPlayerSetExperienceRate(cid,expfinal) doPlayerSendTextMessage(cid,22,textofinal) end
Postado Fevereiro 6, 2017 8 anos Autor 2 minutos atrás, Gustavo Ntos disse: function onUse(cid, item, frompos, item2, topos) local pausa = 30*60*1000 -- (1000 = 1 segundos) Tempo que o script durará local texto = "Você Aumentou 3x sua Experiencia por 30 minutos" -- Texto que irá receber ao usar a potion. textofinal = "Acabou a Exp Potion 3x." -- Texto que irá receber quando o efeito da potion acabar. local exp = 3 -- 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. local limitedeuso = 49016 local textofinal1 = "Você já esta sob efeito da Exp Potion 3x espere o efeito acabar." local seuitem = 9942 -- seu item que dará double exp local efeito2 = 35 -- efeito que acontecera no momento que usar a pot time = 30 --fim da parte configuravel não mecha se nao tiver conhecimento de scripting local timeEffect = 1801 -- tempo em segundos que o efeito vai apareceer no player, 31 = 30 segundos. sempre coloque 1 segundo a mais. function effect() if isPlayer(cid) then local pos = getCreaturePosition(cid) doSendMagicEffect(pos, efeito1) end end if item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() <= 0) then doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,efeito2) setPlayerStorageValue(cid, limitedeuso, os.time() + 1800) doPlayerSendTextMessage(cid,22,texto) addEvent(potion,pausa,cid) elseif item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() > 0) then doPlayerSendTextMessage(cid,22,textofinal1) end for i = (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))), 1, -1 do local a = math.floor(i/60) .. ":" .. i - (60 * math.floor(i/60)) if #a < 4 then a = string.sub(a,1,2) .. "0" .. string.sub(a, 3) end if i == (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))) then creatureEvent(doPlayerSendCancel, (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))*1000, cid, "O Efeito da Exp Potion 3x Termina em.") end creatureEvent(doPlayerSendCancel, ((time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))-i)*1000, cid, "O Efeito da Exp Potion 3x Termina em "..a..".") end return true end function potion(cid) doPlayerSetExperienceRate(cid,expfinal) doPlayerSendTextMessage(cid,22,textofinal) end adicionei seu scripts, e dei reload e deu isso [Error - LuaInterface::loadFile] data/actions/scripts/expox3.lua:1: '=' expected near 'onUse' [Error - Event::checkScript] Cannot load script (data/actions/scripts/expox3.lua) data/actions/scripts/expox3.lua:1: '=' expected near 'onUse'
Postado Fevereiro 6, 2017 8 anos 3 minutos atrás, mateusmoretti disse: adicionei seu scripts, e dei reload e deu isso [Error - LuaInterface::loadFile] data/actions/scripts/expox3.lua:1: '=' expected near 'onUse' [Error - Event::checkScript] Cannot load script (data/actions/scripts/expox3.lua) data/actions/scripts/expox3.lua:1: '=' expected near 'onUse' function onUse(cid, item, frompos, item2, topos) local pausa = 30*60*1000 -- (1000 = 1 segundos) Tempo que o script durará local texto = "Você Aumentou 3x sua Experiencia por 30 minutos" -- Texto que irá receber ao usar a potion. local textofinal = "Acabou a Exp Potion 3x." -- Texto que irá receber quando o efeito da potion acabar. local exp = 3 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server. local expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal. local limitedeuso = 49016 local textofinal1 = "Você já esta sob efeito da Exp Potion 3x espere o efeito acabar." local seuitem = 9942 -- seu item que dará double exp local efeito2 = 35 -- efeito que acontecera no momento que usar a pot local time = 30 --fim da parte configuravel não mecha se nao tiver conhecimento de scripting local timeEffect = 1801 -- tempo em segundos que o efeito vai apareceer no player, 31 = 30 segundos. sempre coloque 1 segundo a mais. function effect() if isPlayer(cid) then local pos = getCreaturePosition(cid) doSendMagicEffect(pos, efeito1) end end if item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() <= 0) then doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,efeito2) setPlayerStorageValue(cid, limitedeuso, os.time() + 1800) doPlayerSendTextMessage(cid,22,texto) addEvent(potion,pausa,cid) elseif item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() > 0) then doPlayerSendTextMessage(cid,22,textofinal1) end for i = (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))), 1, -1 do local a = math.floor(i/60) .. ":" .. i - (60 * math.floor(i/60)) if #a < 4 then a = string.sub(a,1,2) .. "0" .. string.sub(a, 3) end if i == (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))) then creatureEvent(doPlayerSendCancel, (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))*1000, cid, "O Efeito da Exp Potion 3x Termina em.") end creatureEvent(doPlayerSendCancel, ((time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))-i)*1000, cid, "O Efeito da Exp Potion 3x Termina em "..a..".") end return true end function potion(cid) doPlayerSetExperienceRate(cid,expfinal) doPlayerSendTextMessage(cid,22,textofinal) end
Postado Fevereiro 6, 2017 8 anos Autor 2 horas atrás, Gustavo Ntos disse: function onUse(cid, item, frompos, item2, topos) local pausa = 30*60*1000 -- (1000 = 1 segundos) Tempo que o script durará local texto = "Você Aumentou 3x sua Experiencia por 30 minutos" -- Texto que irá receber ao usar a potion. local textofinal = "Acabou a Exp Potion 3x." -- Texto que irá receber quando o efeito da potion acabar. local exp = 3 -- O quanto que você quer que dobre sua experiencia, por exemplo 2 é 2x as rates do seu server. local expfinal = 1 --Não mude, isso é para a experiencia voltar ao normal. local limitedeuso = 49016 local textofinal1 = "Você já esta sob efeito da Exp Potion 3x espere o efeito acabar." local seuitem = 9942 -- seu item que dará double exp local efeito2 = 35 -- efeito que acontecera no momento que usar a pot local time = 30 --fim da parte configuravel não mecha se nao tiver conhecimento de scripting local timeEffect = 1801 -- tempo em segundos que o efeito vai apareceer no player, 31 = 30 segundos. sempre coloque 1 segundo a mais. function effect() if isPlayer(cid) then local pos = getCreaturePosition(cid) doSendMagicEffect(pos, efeito1) end end if item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() <= 0) then doRemoveItem(item.uid,1) doPlayerSetExperienceRate(cid,exp) doSendMagicEffect(frompos,efeito2) setPlayerStorageValue(cid, limitedeuso, os.time() + 1800) doPlayerSendTextMessage(cid,22,texto) addEvent(potion,pausa,cid) elseif item.itemid == seuitem and (getPlayerStorageValue(cid, limitedeuso) - os.time() > 0) then doPlayerSendTextMessage(cid,22,textofinal1) end for i = (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))), 1, -1 do local a = math.floor(i/60) .. ":" .. i - (60 * math.floor(i/60)) if #a < 4 then a = string.sub(a,1,2) .. "0" .. string.sub(a, 3) end if i == (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso))) then creatureEvent(doPlayerSendCancel, (time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))*1000, cid, "O Efeito da Exp Potion 3x Termina em.") end creatureEvent(doPlayerSendCancel, ((time*60-(os.time()-getPlayerStorageValue(cid, limitedeuso)))-i)*1000, cid, "O Efeito da Exp Potion 3x Termina em "..a..".") end return true end function potion(cid) doPlayerSetExperienceRate(cid,expfinal) doPlayerSendTextMessage(cid,22,textofinal) end Consegui fazer do jeito que eu queria! Quando o player relogar, ou morrer ele poder usar a Exp Potion novamente, e aparecendo os minutos, e os segundos do tempo da Exp Potion... Como eu resolvi, simples criei um scripts no Creaturescripts com a storage, e registrei ele no login.lua a storage que eu editei no Creaturescripts usei a mesma na mods, Ai funcionou perfeitamente! Editado Fevereiro 6, 2017 8 anos por mateusmoretti (veja o histórico de edições)
Postado Julho 16, 2017 8 anos Em 05/02/2017 ás 23:56, mateusmoretti disse: Consegui fazer do jeito que eu queria! Quando o player relogar, ou morrer ele poder usar a Exp Potion novamente, e aparecendo os minutos, e os segundos do tempo da Exp Potion... Como eu resolvi, simples criei um scripts no Creaturescripts com a storage, e registrei ele no login.lua a storage que eu editei no Creaturescripts usei a mesma na mods, Ai funcionou perfeitamente! cara teria como você mostrar como fez ? queria faze isso tbm com minhas exps Mesmo desacreditado e ignorado por todos, não posso desistir, pois para mim, vencer é nunca desistir ! By: Thenebrozo
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.