Ir para conteúdo
  • Cadastre-se

(Resolvido)Magia de área que muda a storage.


Ir para solução Resolvido por Adriano SwaTT,

Posts Recomendados

Ja tem tempo que eu não crio script e não tava conseguindo cria essa então eu vi aqui perdi a ajuda de vocês.

 

São duas scripts

1º-

È o seguinte eu preciso de uma script que seja tipo um exura gran mas res só que no lugar de heala mude a storage do player que foi afetado por 10 segundo e essa magia só possa solta a cada 20 segundos.

 

2º-

Quase a mesma coisa da primeira só que muda a storage de quem ta na party a 3~~4 sqm de quem solto a magia durando 10 segundo depois voltando para storage original (-1) e que o player só possa solta a cada 20 segundos também.

 

Preciso de pelo menos a primeira urgente.

Quem poder min ajuda, agradeço.

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

Estou criando o 1º script, mas tive que sair.

Depois termino e lhe passo..

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites
  • Solução

Boa tarde.

Desculpe-me a demora, pois tive que fazer uns ajustes e meio que umas apelações brasileiras para funcionar, pois sou iniciante também.

 

Enfim..

Testei e funcionou perfeitamente.

 

Na pasta "Talkactions / Scripts" crie o arquivo "nome.lua" e adicione este código dentro.

------- INíCIO DAS CONFIGURAÇÕES ----------
local exh = 20910 -- Não precisa mexer
local strg = 19196 -- Storage que será adicionada ao player
local exhaust_time = 20 -- em segundos (exhaust para usar magia novamente)
local tempo = 10 -- em segundos (duração da storage)
local eff = 12 -- Efeito
local premmy = 'true' -- Precisa ser premium? (true/false)
------- FIM DAS CONFIGURAÇÕES -------------

local condition_infight = createConditionObject(CONDITION_INFIGHT)
setConditionParam(condition_infight, CONDITION_PARAM_TICKS, tempo * 1000)

            function onSay(cid, words, param, channel)
local get = getPlayerPosition(cid)
local from, to = {x=get.x-3, y=get.y-3, z=get.z}, {x=get.x+3, y=get.y+3, z=get.z}

    if exhaustion.get(cid, exh) == false then
        if premmy == 'true' and isPremium(cid) then
                for xx = from.x, to.x do
                for yy = from.y, to.y do
                local get_top = getTopCreature({x=xx, y=yy, z=get.z, stackpos=253}).uid
            if get_top > 0 then
                setPlayerStorageValue(get_top, strg, 1)
                doAddCondition(get_top, condition_infight)
                addEvent(ReResetSto, tempo * 1000, get_top)
            end
                end
                end
                exhaustion.set(cid, exh, exhaust_time)
                for xx1 = from.x, to.x do
                for yy1 = from.y, to.y do
                local eff_area = {x=xx1, y=yy1, z=get.z}
                doSendMagicEffect(eff_area, eff)
                end
                end
        else
            doPlayerSendCancel(cid, "Você precisa ser Premium Account para usar deste recurso.")
        end
    else
        doPlayerSendCancel(cid, "Você precisa esperar "..exhaustion.get(cid, exh).." segundos para usar novamente.")
    end

    return true
end

            function ReResetSto(get_top)            
        setPlayerStorageValue(get_top, strg, -1)
        doPlayerSendTextMessage(get_top, 4, "Resetada.")
    end

Agora registre em talkactions.xml a tag abaixo:

<talkaction words="!strg" event="script" value="nome.lua" />

Lembre-se de mudar a "palavra mágica" que adicionará o script e o nome do arquivo do script.

 

Testado e funcionou perfeitamente.

 

Boa sorte.

Editado por Adriano SwaTT (veja o histórico de edições)

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

Link para o post
Compartilhar em outros sites

Vlw cara eu só tava querendo para tirar uma base, por que eu não tava lembrado como e que adicionava storage em outros player.

Transformei em spells e fiz algumas mudação

local mana = 20 -- Quanto gasta
local t = 20 -- Quanto tempo pode usa a magia
local tempo = 10 -- Em segundos (duração da storage)
local storage = 10004 
local strg = 10000 -- Storage que os players vai ganha
local eff = 12 -- Effect
local condition_infight = createConditionObject(CONDITION_INFIGHT)
setConditionParam(condition_infight, CONDITION_PARAM_TICKS, tempo * 1000)
 
function onCastSpell(cid, var)
local get = getPlayerPosition(cid)
local from, to = {x=get.x-3, y=get.y-3, z=get.z}, {x=get.x+3, y=get.y+3, z=get.z}
if getPlayerStorageValue(cid, storage) < os.time() then
if getCreatureMana(cid) >= mana then
for xx = from.x, to.x do
for yy = from.y, to.y do
local get_top = getTopCreature({x=xx, y=yy, z=get.z, stackpos=253}).uid
if get_top > 0 then
setPlayerStorageValue(get_top, strg, 1)
setPlayerStorageValue(cid, storage, os.time() + t)
doAddCondition(get_top, condition_infight)
doPlayerSendTextMessage(get_top, 4, "O jogador "..getCreatureName(cid).." ativo o Clear Mind em você..")
addEvent(ReResetSto, tempo * 1000, get_top)
end
end
end
setPlayerStorageValue(cid, storage, os.time() + tempo)
for xx1 = from.x, to.x do
            for yy1 = from.y, to.y do
local eff_area = {x=xx1, y=yy1, z=get.z}
doSendMagicEffect(eff_area, eff)
end
end
else
doPlayerSendCancel(cid,  "Você tem que esperar "..getPlayerStorageValue(cid, storage) - os.time().." segundos para usar a magia novamente.")
return false
end
else
doPlayerSendCancel(cid,  "É preciso de "..mana.." para usar a magia.")
return false
end
return true
end
 
function ReResetSto(get_top)            
    setPlayerStorageValue(get_top, strg, -1)
    doPlayerSendTextMessage(get_top, 4, "O Clear Mind acabo.")
end

não vou precisar mas da outra spells. :D

 
Esse e meu projeto:
Se quiser curti la. :D
Link para o post
Compartilhar em outros sites

Que bom cara, fiz meio que correndo.

Boa sorte aí, faça bom aproveito.

Gosta do meu trabalho?

Curta e siga a página do meu projeto de 2016 e 2017 (Lab Z Games) que trará vários servidores OTServs.

 

Atenciosamente,
Adriano Swatt'

 

Para ver meus tutoriais acesse meu perfil.

 

cbCyOSZ.png

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo