Ir para conteúdo
  • Cadastre-se

Derivado Error doCretureSetNoMove Tibia 8.60


Posts Recomendados

Estou com um problema aqui esperam que possam me ajudar!

eu utilizo isso no meu script de uma magia de target:

 

doCreatureSetNoMove(cid, true)

addEvent(doCreatureSetNoMove, 2*1000, cid, false)

 

O problema nessa parte do código acima o efeito do NoMove está acontecendo em mim e não no target

 

local target = getCreatureTarget(cid)

doCreatureSetNoMove(target, true)

addEvent(doCreatureSetNoMove, 2*1000, target, false)

 

já esse outro não ocorre nada, estou utilizando um servidor de tibia 8.60

 

Obs: esse é meu primeiro pedido se estiver na área errada por favor movam!

Link para o post
Compartilhar em outros sites

doCreatureSetNoMove(target, true)

addEvent(doCreatureSetNoMove, 2*1000, cid, false)

 

troca por esse. 

 

(cid) é o player que executou, então vai ser você que executou o sistema.

 

ai só por target que é o alvo que está targetado.

 

muda pra isso

Editado por Luan Zero (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
56 minutos atrás, Luan Zero disse:

doCreatureSetNoMove(target, true)

addEvent(doCreatureSetNoMove, 2*1000, cid, false)

 

troca por esse. 

 

(cid) é o player que executou, então vai ser você que executou o sistema.

 

ai só por target que é o alvo que está targetado.

 

muda pra isso

 

meu script:

-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat0_Brush,createCombatArea({{3}}))


-- Areas/Combat for 100ms
local combat1_Brush = createCombatObject()
setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat1_Brush,createCombatArea({{3}}))


-- Areas/Combat for 200ms
local combat2_Brush = createCombatObject()
setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat2_Brush,createCombatArea({{3}}))


-- Areas/Combat for 300ms
local combat3_Brush = createCombatObject()
setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat3_Brush,createCombatArea({{3}}))


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))


-- Areas/Combat for 500ms
local combat5_Brush = createCombatObject()
setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat5_Brush,createCombatArea({{3}}))


-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat6_Brush,createCombatArea({{3}}))


-- Areas/Combat for 700ms
local combat7_Brush = createCombatObject()
setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat7_Brush,createCombatArea({{3}}))


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))


-- Areas/Combat for 900ms
local combat9_Brush = createCombatObject()
setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat9_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat10_Brush,createCombatArea({{3}}))


-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
    if (isCreature(cid)) then
        doCombat(cid, c, var)
        if (dirList ~= nil) then -- Emit distance effects
            local i = 2;
            while (i < #dirList) do
                doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
                i = i + 2
            end        
        end
    end
end

function onCastSpell(cid, var)
    local startPos = getCreaturePosition(cid)
    RunPart(combat0_Brush,cid,var)
    addEvent(RunPart,100,combat1_Brush,cid,var)
    addEvent(RunPart,200,combat2_Brush,cid,var)
    addEvent(RunPart,300,combat3_Brush,cid,var)
    addEvent(RunPart,400,combat4_Brush,cid,var)
    addEvent(RunPart,500,combat5_Brush,cid,var)
    addEvent(RunPart,600,combat6_Brush,cid,var)
    addEvent(RunPart,700,combat7_Brush,cid,var)
    addEvent(RunPart,800,combat8_Brush,cid,var)
    addEvent(RunPart,900,combat9_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush,cid,var)

    doCreatureSetNoMove(target, true)
    addEvent(doCreatureSetNoMove, 2*1000, target, false)
    return true
end

 

deu esse erro:

[22/01/2018 19:07:49] Lua Script Error: [Spell Interface] 
[22/01/2018 19:07:49] in a timer event called from: 
[22/01/2018 19:07:49] data/spells/scripts/Earth/earth trap.lua:onCastSpell

[22/01/2018 19:07:49] luaDoCreatureSetNoMove(). Creature not found

Link para o post
Compartilhar em outros sites

Testa assim. 

Spoiler

-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat0_Brush,createCombatArea({{3}}))


-- Areas/Combat for 100ms
local combat1_Brush = createCombatObject()
setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat1_Brush,createCombatArea({{3}}))


-- Areas/Combat for 200ms
local combat2_Brush = createCombatObject()
setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat2_Brush,createCombatArea({{3}}))


-- Areas/Combat for 300ms
local combat3_Brush = createCombatObject()
setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat3_Brush,createCombatArea({{3}}))


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))


-- Areas/Combat for 500ms
local combat5_Brush = createCombatObject()
setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat5_Brush,createCombatArea({{3}}))


-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat6_Brush,createCombatArea({{3}}))


-- Areas/Combat for 700ms
local combat7_Brush = createCombatObject()
setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat7_Brush,createCombatArea({{3}}))


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))


-- Areas/Combat for 900ms
local combat9_Brush = createCombatObject()
setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat9_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat10_Brush,createCombatArea({{3}}))


-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
    if (isCreature(cid)) then
        doCombat(cid, c, var)
        if (dirList ~= nil) then -- Emit distance effects
            local i = 2;
            while (i < #dirList) do
                doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
                i = i + 2
            end        
        end
    end
end

function onCastSpell(cid, var)

local target = getCreatureTarget(cid)
    
    local function No_Move_Target()
    if isCreature(target) then
    doCreatureSetNoMove(target, 0)
    end
    return TRUE
    end

    
    local startPos = getCreaturePosition(cid)
    RunPart(combat0_Brush,cid,var)
    doCreatureSetNoMove(target, 1)
    addEvent(RunPart,100,combat1_Brush,cid,var)
    addEvent(RunPart,200,combat2_Brush,cid,var)
    addEvent(RunPart,300,combat3_Brush,cid,var)
    addEvent(RunPart,400,combat4_Brush,cid,var)
    addEvent(RunPart,500,combat5_Brush,cid,var)
    addEvent(RunPart,600,combat6_Brush,cid,var)
    addEvent(RunPart,700,combat7_Brush,cid,var)
    addEvent(RunPart,800,combat8_Brush,cid,var)
    addEvent(RunPart,900,combat9_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush,cid,var)
    addEvent(doCreatureSetNoMove, 2*1000, target, false)
    return true
end

 

Link para o post
Compartilhar em outros sites
14 minutos atrás, Luan Zero disse:

Testa assim. 

  Ocultar conteúdo

-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat0_Brush,createCombatArea({{3}}))


-- Areas/Combat for 100ms
local combat1_Brush = createCombatObject()
setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat1_Brush,createCombatArea({{3}}))


-- Areas/Combat for 200ms
local combat2_Brush = createCombatObject()
setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat2_Brush,createCombatArea({{3}}))


-- Areas/Combat for 300ms
local combat3_Brush = createCombatObject()
setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat3_Brush,createCombatArea({{3}}))


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))


-- Areas/Combat for 500ms
local combat5_Brush = createCombatObject()
setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat5_Brush,createCombatArea({{3}}))


-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat6_Brush,createCombatArea({{3}}))


-- Areas/Combat for 700ms
local combat7_Brush = createCombatObject()
setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat7_Brush,createCombatArea({{3}}))


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))


-- Areas/Combat for 900ms
local combat9_Brush = createCombatObject()
setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat9_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat10_Brush,createCombatArea({{3}}))


-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
    if (isCreature(cid)) then
        doCombat(cid, c, var)
        if (dirList ~= nil) then -- Emit distance effects
            local i = 2;
            while (i < #dirList) do
                doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
                i = i + 2
            end        
        end
    end
end

function onCastSpell(cid, var)

local target = getCreatureTarget(cid)
    
    local function No_Move_Target()
    if isCreature(target) then
    doCreatureSetNoMove(target, 0)
    end
    return TRUE
    end

    
    local startPos = getCreaturePosition(cid)
    RunPart(combat0_Brush,cid,var)
    doCreatureSetNoMove(target, 1)
    addEvent(RunPart,100,combat1_Brush,cid,var)
    addEvent(RunPart,200,combat2_Brush,cid,var)
    addEvent(RunPart,300,combat3_Brush,cid,var)
    addEvent(RunPart,400,combat4_Brush,cid,var)
    addEvent(RunPart,500,combat5_Brush,cid,var)
    addEvent(RunPart,600,combat6_Brush,cid,var)
    addEvent(RunPart,700,combat7_Brush,cid,var)
    addEvent(RunPart,800,combat8_Brush,cid,var)
    addEvent(RunPart,900,combat9_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush,cid,var)
    addEvent(doCreatureSetNoMove, 2*1000, target, false)
    return true
end

 

Testei não funcionou :/

 

Link para o post
Compartilhar em outros sites
Spoiler

-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat0_Brush,createCombatArea({{3}}))


-- Areas/Combat for 100ms
local combat1_Brush = createCombatObject()
setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat1_Brush,createCombatArea({{3}}))


-- Areas/Combat for 200ms
local combat2_Brush = createCombatObject()
setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat2_Brush,createCombatArea({{3}}))


-- Areas/Combat for 300ms
local combat3_Brush = createCombatObject()
setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat3_Brush,createCombatArea({{3}}))


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))


-- Areas/Combat for 500ms
local combat5_Brush = createCombatObject()
setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat5_Brush,createCombatArea({{3}}))


-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat6_Brush,createCombatArea({{3}}))


-- Areas/Combat for 700ms
local combat7_Brush = createCombatObject()
setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat7_Brush,createCombatArea({{3}}))


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))


-- Areas/Combat for 900ms
local combat9_Brush = createCombatObject()
setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat9_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat10_Brush,createCombatArea({{3}}))


-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
    if (isCreature(cid)) then
        doCombat(cid, c, var)
        if (dirList ~= nil) then -- Emit distance effects
            local i = 2;
            while (i < #dirList) do
                doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
                i = i + 2
            end        
        end
    end
end

function onCastSpell(cid, var)

local target = getCreatureTarget(cid)
local startPos = getCreaturePosition(cid)
  
    RunPart(combat0_Brush,cid,var)
    doCreatureSetNoMove(target, 1)
    addEvent(RunPart,100,combat1_Brush,cid,var)
    addEvent(RunPart,200,combat2_Brush,cid,var)
    addEvent(RunPart,300,combat3_Brush,cid,var)
    addEvent(RunPart,400,combat4_Brush,cid,var)
    addEvent(RunPart,500,combat5_Brush,cid,var)
    addEvent(RunPart,600,combat6_Brush,cid,var)
    addEvent(RunPart,700,combat7_Brush,cid,var)
    addEvent(RunPart,800,combat8_Brush,cid,var)
    addEvent(RunPart,900,combat9_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush,cid,var)
    addEvent(doCreatureSetNoMove, 2*1000, target, false)
    return true
end

Testa agora, foi um erro meu.

Link para o post
Compartilhar em outros sites
17 minutos atrás, Luan Zero disse:

Testa assim. 

  Ocultar conteúdo

-- SpellCreator generated.

-- =============== COMBAT VARS ===============
-- Areas/Combat for 0ms
local combat0_Brush = createCombatObject()
setCombatParam(combat0_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat0_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat0_Brush,createCombatArea({{3}}))


-- Areas/Combat for 100ms
local combat1_Brush = createCombatObject()
setCombatParam(combat1_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat1_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat1_Brush,createCombatArea({{3}}))


-- Areas/Combat for 200ms
local combat2_Brush = createCombatObject()
setCombatParam(combat2_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat2_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat2_Brush,createCombatArea({{3}}))


-- Areas/Combat for 300ms
local combat3_Brush = createCombatObject()
setCombatParam(combat3_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat3_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat3_Brush,createCombatArea({{3}}))


-- Areas/Combat for 400ms
local combat4_Brush = createCombatObject()
setCombatParam(combat4_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat4_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat4_Brush,createCombatArea({{3}}))


-- Areas/Combat for 500ms
local combat5_Brush = createCombatObject()
setCombatParam(combat5_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat5_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat5_Brush,createCombatArea({{3}}))


-- Areas/Combat for 600ms
local combat6_Brush = createCombatObject()
setCombatParam(combat6_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat6_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat6_Brush,createCombatArea({{3}}))


-- Areas/Combat for 700ms
local combat7_Brush = createCombatObject()
setCombatParam(combat7_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat7_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat7_Brush,createCombatArea({{3}}))


-- Areas/Combat for 800ms
local combat8_Brush = createCombatObject()
setCombatParam(combat8_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat8_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat8_Brush,createCombatArea({{3}}))


-- Areas/Combat for 900ms
local combat9_Brush = createCombatObject()
setCombatParam(combat9_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat9_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat9_Brush,createCombatArea({{3}}))


-- Areas/Combat for 1000ms
local combat10_Brush = createCombatObject()
setCombatParam(combat10_Brush, COMBAT_PARAM_EFFECT, CONST_ME_MIRRORVERTICAL)
setCombatParam(combat10_Brush, COMBAT_PARAM_TYPE, COMBAT_NONE)
setCombatArea(combat10_Brush,createCombatArea({{3}}))


-- =============== CORE FUNCTIONS ===============
local function RunPart(c,cid,var,dirList,dirEmitPos) -- Part
    if (isCreature(cid)) then
        doCombat(cid, c, var)
        if (dirList ~= nil) then -- Emit distance effects
            local i = 2;
            while (i < #dirList) do
                doSendDistanceShoot(dirEmitPos,{x=dirEmitPos.x-dirList,y=dirEmitPos.y-dirList[i+1],z=dirEmitPos.z},dirList[1])
                i = i + 2
            end        
        end
    end
end

function onCastSpell(cid, var)

local target = getCreatureTarget(cid)
    
    local function No_Move_Target()
    if isCreature(target) then
    doCreatureSetNoMove(target, 0)
    end
    return TRUE
    end

    
    local startPos = getCreaturePosition(cid)
    RunPart(combat0_Brush,cid,var)
    doCreatureSetNoMove(target, 1)
    addEvent(RunPart,100,combat1_Brush,cid,var)
    addEvent(RunPart,200,combat2_Brush,cid,var)
    addEvent(RunPart,300,combat3_Brush,cid,var)
    addEvent(RunPart,400,combat4_Brush,cid,var)
    addEvent(RunPart,500,combat5_Brush,cid,var)
    addEvent(RunPart,600,combat6_Brush,cid,var)
    addEvent(RunPart,700,combat7_Brush,cid,var)
    addEvent(RunPart,800,combat8_Brush,cid,var)
    addEvent(RunPart,900,combat9_Brush,cid,var)
    addEvent(RunPart,1000,combat10_Brush,cid,var)
    addEvent(doCreatureSetNoMove, 2*1000, target, false)
    return true
end

 

em vez desse pode me mandar um script que apareça o effect de numero 58 no player e ele fique parado por 2 seg?

seria de grande ajuda!

Link para o post
Compartilhar em outros sites
Spoiler

local tempo = 2 -- tempo do paralyze em segundos
local effect = 58 -- efeito que vai sair ao redor do player
local exausted = 8 -- exhausted em segundos
local storage = 13098 -- storage do exausted

local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -5000)

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

local function Efect()
if not isCreature(target) then return true end
local positions = {
[1] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[2] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[3] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[4] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[5] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[6] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[7] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[8] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}
}
for i=1, #positions do
if isWalkable(positions) then
doSendMagicEffect(positions, effect)
end
end
end

local function No_Move_Target()
if isCreature(target) then
doCreatureSetNoMove(target, 0)
end
return TRUE
end

if isPlayer(cid) and exhaustion.check(cid, storage) == TRUE then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar novamente.")
return false
end

exhaustion.set(cid, storage, exausted)
doCreatureSetNoMove(target, 1)
doAddCondition(target, condition)
addEvent(No_Move_Target, tempo*1000)
local t = 0
while t <= tempo*1000 do
addEvent(Efect, t)
t = t+300
end
return true
end

pronto

Link para o post
Compartilhar em outros sites
3 minutos atrás, Luan Zero disse:
  Ocultar conteúdo

local tempo = 2 -- tempo do paralyze em segundos
local effect = 58 -- efeito que vai sair ao redor do player
local exausted = 8 -- exhausted em segundos
local storage = 13098 -- storage do exausted

local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -5000)

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

local function Efect()
if not isCreature(target) then return true end
local positions = {
[1] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[2] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[3] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[4] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[5] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[6] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[7] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[8] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}
}
for i=1, #positions do
if isWalkable(positions) then
doSendMagicEffect(positions, effect)
end
end
end

local function No_Move_Target()
if isCreature(target) then
doCreatureSetNoMove(target, 0)
end
return TRUE
end

if isPlayer(cid) and exhaustion.check(cid, storage) == TRUE then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar novamente.")
return false
end

exhaustion.set(cid, storage, exausted)
doCreatureSetNoMove(target, 1)
doAddCondition(target, condition)
addEvent(No_Move_Target, tempo*1000)
local t = 0
while t <= tempo*1000 do
addEvent(Efect, t)
t = t+300
end
return true
end

pronto

Funcionou só não está  saindo o effect :/

Link para o post
Compartilhar em outros sites
Spoiler

local tempo = 2 -- tempo do paralyze em segundos
local effect = 58 -- efeito que vai sair ao redor do player
local exausted = 8 -- exhausted em segundos
local storage = 13098 -- storage do exausted

local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -5000)

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

local function Efect()
if not isCreature(target) then return true end
local positions = {
[1] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[2] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[3] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[4] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[5] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[6] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[7] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[8] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}
}
for i=1, #positions do
if isWalkable(positions) then
doSendMagicEffect(positions, effect)
end
end
end

local function No_Move_Target()
if isCreature(target) then
doCreatureSetNoMove(target, 0)
end
return TRUE
end

if isPlayer(cid) and exhaustion.check(cid, storage) == TRUE then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar novamente.")
return false
end

exhaustion.set(cid, storage, exausted)
doCreatureSetNoMove(target, 1)
doAddCondition(target, condition)
addEvent(No_Move_Target, tempo*1000)
local t = 0
while t <= tempo*1000 do
addEvent(Efect, t)
t = t+300
end
return true
end

Esse aqui funcionou perfeitamente, certifique-se que tem o efeito 58 em seu servidor

Link para o post
Compartilhar em outros sites
6 minutos atrás, Luan Zero disse:
  Ocultar conteúdo

local tempo = 2 -- tempo do paralyze em segundos
local effect = 58 -- efeito que vai sair ao redor do player
local exausted = 8 -- exhausted em segundos
local storage = 13098 -- storage do exausted

local condition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_SPEED, -5000)

function onCastSpell(cid, var)
local target = getCreatureTarget(cid)

local function Efect()
if not isCreature(target) then return true end
local positions = {
[1] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[2] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[3] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[4] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[5] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[6] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[7] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z},
[8] = {x=getCreaturePosition(target).x+2, y=getCreaturePosition(target).y+1, z=getCreaturePosition(target).z}
}
for i=1, #positions do
if isWalkable(positions) then
doSendMagicEffect(positions, effect)
end
end
end

local function No_Move_Target()
if isCreature(target) then
doCreatureSetNoMove(target, 0)
end
return TRUE
end

if isPlayer(cid) and exhaustion.check(cid, storage) == TRUE then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, storage) .. " segundos para usar novamente.")
return false
end

exhaustion.set(cid, storage, exausted)
doCreatureSetNoMove(target, 1)
doAddCondition(target, condition)
addEvent(No_Move_Target, tempo*1000)
local t = 0
while t <= tempo*1000 do
addEvent(Efect, t)
t = t+300
end
return true
end

Esse aqui funcionou perfeitamente, certifique-se que tem o efeito 58 em seu servidor

tem o effect sim ele aparece no /z mas não aparece na magia

 

deu esse erro nesse script ae

[22/01/2018 21:24:37] data/spells/scripts/Earth/earth trap.lua:26: attempt to call global 'isWalkable' (a nil value)
[22/01/2018 21:24:37] stack traceback:
[22/01/2018 21:24:37]     data/spells/scripts/Earth/earth trap.lua:26: in function <data/spells/scripts/Earth/earth trap.lua:13>
 

o outro funcionava mas não aparecia o effect

8 minutos atrás, samuelandrade45 disse:

tem o effect sim ele aparece no /z mas não aparece na magia

 

deu esse erro nesse script ae

[22/01/2018 21:24:37] data/spells/scripts/Earth/earth trap.lua:26: attempt to call global 'isWalkable' (a nil value)
[22/01/2018 21:24:37] stack traceback:
[22/01/2018 21:24:37]     data/spells/scripts/Earth/earth trap.lua:26: in function <data/spells/scripts/Earth/earth trap.lua:13>
 

o outro funcionava mas não aparecia o effect

 

nenhum tá funcionando agora só da esse erro ai do isWalkable

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

LOisfc3.png

 

No que mandei primeiro, funcionou o efeito tranquilo aqui, qual tfs você está utilizando? Testei em uma 0.4 e uma 0.3.6 e funcionou nos dois.

 

 

</instant>
    <instant name="Trap" words="trap" lvl="300" maglv="120" mana="1200" prem="0" needtarget="1" range="5" exhaustion="0" blockwalls="1" needlearn="0" script="trap.lua">
        <vocation id="1"/>

 

no seu jogo está assim? no spells.xml?

 

Editado por Luan Zero (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
3 minutos atrás, Luan Zero disse:

LOisfc3.png

 

No que mandei primeiro, funcionou o efeito tranquilo aqui, qual tfs você está utilizando? Testei em uma 0.4 e uma 0.3.6 e funcionou nos dois.

 

 

</instant>
    <instant name="Trap" words="trap" lvl="300" maglv="120" mana="1200" prem="0" needtarget="1" range="5" exhaustion="0" blockwalls="1" needlearn="0" script="trap.lua">
        <vocation id="1"/>

 

no seu jogo está assim? no spells.xml?

 

mudei pra esse mas o effect não aparece é o erro do isWalkable continua :/

 

2 minutos atrás, samuelandrade45 disse:

 

erro.thumb.png.38741acfc6af0ca2797aa6b8639dd862.png

Link para o post
Compartilhar em outros sites
8 minutos atrás, Luan Zero disse:

o fórum estava removendo o [i ] do código coloca isso igual lá e pronto.

 

vav3JKa.png

 

paciencia.thumb.png.a2a15aecc7daf0f1245220aff61bce6f.png

falta mais algo? ainda ta dando o mesmo erro :/

Editado por samuelandrade45 (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 LeoTK
      Salve galera neste tópico irei postar algumas prints do mapa do servidor para quem queira acompanhar e quem sabe até utilizar de inspiração para mapear o seu NTO.
       
      #Att 11/08/2022

       
       
       
       
      Konoha (Em Desenvolvimento)
       
       
       
       
    • Por DiigooMix
      Como o título já diz, será que alguém possui sprite do hitto e se possível as transformações dele?
    • Por OmegaZero
      Olá gostaria que alguém me ajudasse com uma "scripting" não sei se é pela mesma, seria o seguinte uma determinada arma teria a chance de dar double hit e não sei oque fazer alguem poderia ajudar?

      OBS:não sei se é o local correto se não for mova, desculpe
    • Por Madarasenju
      Olá galera do Tibia King, queria por uns npc's no meu server que não tem função de trade nem nada do tipo, queria que eles só andassem como enfeite, Rep+ Pra quem me ajudar... grato desde já.
    • Por SilenceRoot
      A magia é assim o você usa a a magia e ela ficará ativado por 10 segundos, até que o inimigo lance a primeira magia ou todos de uma vez, quando ele lançar a primeira magia, ele não lhe acertará ou seja esquivando dela, e logo em seguida será teletransportado aleatoriamente ao redor do inimigo que usou.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo