Ir para conteúdo
  • Cadastre-se

(Resolvido)Spell de Trap Effect


Ir para solução Resolvido por Crypter,

Posts Recomendados

Agora, Sttorm disse:

@xMateuss Como essa spell funciona ? Não da pra entender N A D A pela imagem.

Tipo eu uso a spell e aparece um efeito em cima do player (configuravel pra editar x e y)

e o player targetado não consegue andar (não seja paralyze pq boots tira isso) durante 5 segundos

e o cooldown de 30 segundos

Link para o post
Compartilhar em outros sites

@xMateuss Não se esqueça de na XML colocar NeddTarget="1" para não dar nenhum erro

local config = {
    
    storage = 34534, -- Storage
    duration = 10, -- Duração da trap em segundos
    time = 30, -- Segundos de exuast
    effect = 155 -- Efeito no target
    
}

local function Deslize(cid)
    if isCreature(cid) then
        doCreatureSetNoMove(cid, false)
        return true
    end
    return true
end

function onCastSpell(cid, var)
    local target = getCreatureTarget(cid)
    local pos = {x = getCreaturePosition(target).x + 0, x = getCreaturePosition(target).y + 0, x = getCreaturePosition(target).z}
    
    if exhaustion.check(cid, config.storage) then
        doPlayerSendCancel(cid, "Exhaustion, wait.")
        return false
    end
    
    if getCreatureNoMove(target) == true then
        doPlayerSendCancel(cid, "O Player já está paralisado, aguarde")
        return false
    end
    
    doCreatureSetNoMove(cid, true)
    addEvent(Deslize, config.duration * 1000, cid)
    exhaustion.set(cid, config.storage, config.time)
    return doSendMagicEffect(pos, config.effect)
end

 

Link para o post
Compartilhar em outros sites
9 minutos atrás, Sttorm disse:

@xMateuss Não se esqueça de na XML colocar NeddTarget="1" para não dar nenhum erro


local config = {
    
    storage = 34534, -- Storage
    duration = 10, -- Duração da trap em segundos
    time = 30, -- Segundos de exuast
    effect = 155 -- Efeito no target
    
}

local function Deslize(cid)
    if isCreature(cid) then
        doCreatureSetNoMove(cid, false)
        return true
    end
    return true
end

function onCastSpell(cid, var)
    local target = getCreatureTarget(cid)
    local pos = {x = getCreaturePosition(target).x + 0, x = getCreaturePosition(target).y + 0, x = getCreaturePosition(target).z}
    
    if exhaustion.check(cid, config.storage) then
        doPlayerSendCancel(cid, "Exhaustion, wait.")
        return false
    end
    
    if getCreatureNoMove(target) == true then
        doPlayerSendCancel(cid, "O Player já está paralisado, aguarde")
        return false
    end
    
    doCreatureSetNoMove(cid, true)
    addEvent(Deslize, config.duration * 1000, cid)
    exhaustion.set(cid, config.storage, config.time)
    return doSendMagicEffect(pos, config.effect)
end

 

Quando eu uso essa spell, quem fica paralizado é eu (quem usou a spell)

Mas quem tem que ser paralizado é o target

<instant name="Foam Voyage" words="foam voyage" lvl="300" mana="7000" prem="0" needtarget="1" range="3" exhaustion="600" blockwalls="1" needlearn="0" script="Utakata/Foam Voyage.lua">
 

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

@xMateuss Foi um erro meu, acho que agora vai

local config = {
    
    storage = 34534, -- Storage
    duration = 10, -- Duração da trap em segundos
    time = 30, -- Segundos de exuast
    effect = 155 -- Efeito no target
    
}
function onCastSpell(cid, var)
    local target = getCreatureTarget(cid)
    local pos = {x = getCreaturePosition(target).x + 0, x = getCreaturePosition(target).y + 0, x = getCreaturePosition(target).z}
    
    if exhaustion.check(cid, config.storage) then
        doPlayerSendCancel(cid, "Exhaustion, wait.")
        return false
    end
    
    if getCreatureNoMove(target) == true then
        doPlayerSendCancel(cid, "O Player já está paralisado, aguarde")
        return false
    end
    
    doCreatureSetNoMove(target, true)
    addEvent(function()
        if isCreature(target) then
            doCreatureSetNoMove(target, false)
            doPlayerSendTextMessage(target, 25, "Desparalizado")
        end
    end, 1000)
    
    exhaustion.set(cid, config.storage, config.time)
    return doSendMagicEffect(pos, config.effect)
end

 

Link para o post
Compartilhar em outros sites

@Sttorm eu uso essa spell mas só trappa por poucos segundos (não é o tempo que ficou configurado na .lua_)

e também não aparece o efeito em cima do target :/

 

Edit:

Quando uso esse efeito em monstro dá o seguinte erro:

[04/06/2018 05:48:42] [Error - Spell Interface] 
[04/06/2018 05:48:42] In a timer event called from: 
[04/06/2018 05:48:42] data/spells/scripts/novos/Utakata/Foam Voyage.lua:onCastSpell
[04/06/2018 05:48:42] Description: 
[04/06/2018 05:48:42] (luaDoPlayerSendTextMessage) Player not found

Editado por xMateuss (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • Solução
local config = {
    storage = 98200,
    trap_time = 10, 
    exhaustion_time = 30,
    effect = 1
}

function onCastSpell(cid, var)

    if exhaustion.check(cid, config.storage) then
        doPlayerSendCancel(cid, "Aguarde "..exhaustion.get(cid, config.storage).." segundos.")
        return false
    end
	
	local position = {x = getCreaturePosition(var.number).x + 0, y = getCreaturePosition(var.number).y + 0, z = getCreaturePosition(var.number).z}
	
    doCreatureSetNoMove(var.number, true)
	addEvent(doCreatureSetNoMove,config.trap_time*1000,var.number, false)
	doSendMagicEffect(position, config.effect)
	
	exhaustion.set(cid, config.storage, config.exhaustion_time)
    return true
end

 

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

 

Te ajudei ?? Que tal fazer uma contribuição ?

Doar

Link para o post
Compartilhar em outros sites
  • 2 years later...

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