Ir para conteúdo
  • Cadastre-se

(Resolvido)[SPELL] Trap


Ir para solução Resolvido por Caronte,

Posts Recomendados

Bom é uma spell target, que quando usada trapa os 8 SQM'S do target fazendo que fique parado.

 

3cKU0KM.png

 

E eu queria também que essa spell tivesse 30 % de falhar, o Coldown da spell seria 30 segundos se falhasse diminuiria pra 15 segundos, será que alguém pode fazer isso pra min ?

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

Sem o script da spell, fica impossível pra quem não tem...

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Essa uma spell que eu achei aqui , sem a porcentagem de falhar , e tinha esquecido após tantos segundos eu quero que saia o efeito das magic walls.

local remove_time = 5 -- tempo em segundos para remover as magic wall
local item_id = 5750 -- id da magic wall

function onCastSpell(cid, var)

local pos = getThingPosition(getCreatureTarget(cid))
posTile1 = {x=pos.x+1,y=pos.y+1,z=pos.z,stackpos=1}
posTile2 = {x=pos.x+1,y=pos.y,z=pos.z,stackpos=1}
posTile3 = {x=pos.x+1,y=pos.y-1,z=pos.z,stackpos=1}
posTile4 = {x=pos.x,y=pos.y-1,z=pos.z,stackpos=1}
posTile5 = {x=pos.x-1,y=pos.y-1,z=pos.z,stackpos=1}
posTile6 = {x=pos.x-1,y=pos.y,z=pos.z,stackpos=1}
posTile7 = {x=pos.x-1,y=pos.y+1,z=pos.z,stackpos=1}
posTile8 = {x=pos.x,y=pos.y+1,z=pos.z,stackpos=1}
posAll = {posTile1,posTile2,posTile3,posTile4,posTile5,posTile6,posTile7,posTile8}

for i=1, #posAll do
	if isWalkable(posAll[i]) then
		doCreateItem(item_id, 1, posAll[i])
	end
end 
addEvent(removeItem, remove_time*1000, posAll)

return true
end

function isWalkable(pos, creature, pz, proj)
    if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
	local creature = getTopCreature(pos)
    if creature.type > 0 then	return false end
	if getTilePzInfo(pos) and not pz then return false end
	local n = not proj and 3 or 2
	for i = 0, 255 do
        pos.stackpos = i
        local tile = getTileThingByPos(pos)
        if tile.itemid ~= 0 and not isCreature(tile.uid) then
            if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
                return false
            end
        end
	end
return true
end

function removeItem(posAll)
	for i=1, #posAll do
		for j=0, 255 do
			pos_stack = {x=posAll[i].x,y=posAll[i].y,z=posAll[i].z,stackpos=j}
			removeTile = getThingfromPos(pos_stack)
			if removeTile.itemid == item_id then
				doRemoveItem(removeTile.uid)
			end
		end
	end
end
Link para o post
Compartilhar em outros sites
local remove_time = 5 -- tempo em segundos para remover as magic wall
local item_id = 5750 -- id da magic wall

function onCastSpell(cid, var)

if math.random(0, 100) <= 30 then 
return doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) and setPlayerStorageValue(cid, 2343, (os.time() + 15))
end


if (getPlayerStorageValue(cid, 2343) - os.time()) > 0 then 
return doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) and doPlayerSendCancel(cid, "You are exhausted")
end
 

setPlayerStorageValue(cid, 2343, (os.time() + 30))

local pos = getThingPosition(getCreatureTarget(cid))
posTile1 = {x=pos.x+1,y=pos.y+1,z=pos.z,stackpos=1}
posTile2 = {x=pos.x+1,y=pos.y,z=pos.z,stackpos=1}
posTile3 = {x=pos.x+1,y=pos.y-1,z=pos.z,stackpos=1}
posTile4 = {x=pos.x,y=pos.y-1,z=pos.z,stackpos=1}
posTile5 = {x=pos.x-1,y=pos.y-1,z=pos.z,stackpos=1}
posTile6 = {x=pos.x-1,y=pos.y,z=pos.z,stackpos=1}
posTile7 = {x=pos.x-1,y=pos.y+1,z=pos.z,stackpos=1}
posTile8 = {x=pos.x,y=pos.y+1,z=pos.z,stackpos=1}
posAll = {posTile1,posTile2,posTile3,posTile4,posTile5,posTile6,posTile7,posTile8}

for i=1, #posAll do
	if isWalkable(posAll[i]) then
		doCreateItem(item_id, 1, posAll[i])
	end
end 
addEvent(removeItem, remove_time*1000, posAll)

return true
end

function isWalkable(pos, creature, pz, proj)
    if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
	local creature = getTopCreature(pos)
    if creature.type > 0 then	return false end
	if getTilePzInfo(pos) and not pz then return false end
	local n = not proj and 3 or 2
	for i = 0, 255 do
        pos.stackpos = i
        local tile = getTileThingByPos(pos)
        if tile.itemid ~= 0 and not isCreature(tile.uid) then
            if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
                return false
            end
        end
	end
return true
end

function removeItem(posAll)
	for i=1, #posAll do
		for j=0, 255 do
			pos_stack = {x=posAll[i].x,y=posAll[i].y,z=posAll[i].z,stackpos=j}
			removeTile = getThingfromPos(pos_stack)
			if removeTile.itemid == item_id then
				doRemoveItem(removeTile.uid)
			end
		end
	end
end

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Opa, esqueci de um negócio, testa novamente.

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Cara agora soltou a magia sem error mais não ta tendo coldown a magia está sem exhausted nenhum tem alguma coisa bugada ta osso '-'.

 

não sei quando da fail ou não e não ta tendo exhausted a magia.

 

bLm2uZF.png

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

Cara agora soltou a magia sem error mais não ta tendo coldown a magia está sem exhausted nenhum tem alguma coisa bugada ta osso '-'.

 

não sei quando da fail ou não e não ta tendo exhausted a magia.

local remove_time = 5 -- tempo em segundos para remover as magic wall
local item_id = 5750 -- id da magic wall

function onCastSpell(cid, var)

if math.random(0, 100) <= 30 then
if (getPlayerStorageValue(cid, 2343) - os.time()) < 0 then 
setPlayerStorageValue(cid, 2343, (os.time() + 15)) 
end
return doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) and doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(getPlayerStorageValue(cid, 2343) - os.time() ).." seconds.") and false
end


if (getPlayerStorageValue(cid, 2343) - os.time()) > 0 then 
return doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) and doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(getPlayerStorageValue(cid, 2343) - os.time() ).." seconds.") and false
end
 

setPlayerStorageValue(cid, 2343, (os.time() + 30))

local pos = getThingPosition(getCreatureTarget(cid))
posTile1 = {x=pos.x+1,y=pos.y+1,z=pos.z,stackpos=1}
posTile2 = {x=pos.x+1,y=pos.y,z=pos.z,stackpos=1}
posTile3 = {x=pos.x+1,y=pos.y-1,z=pos.z,stackpos=1}
posTile4 = {x=pos.x,y=pos.y-1,z=pos.z,stackpos=1}
posTile5 = {x=pos.x-1,y=pos.y-1,z=pos.z,stackpos=1}
posTile6 = {x=pos.x-1,y=pos.y,z=pos.z,stackpos=1}
posTile7 = {x=pos.x-1,y=pos.y+1,z=pos.z,stackpos=1}
posTile8 = {x=pos.x,y=pos.y+1,z=pos.z,stackpos=1}
posAll = {posTile1,posTile2,posTile3,posTile4,posTile5,posTile6,posTile7,posTile8}

for i=1, #posAll do
	if isWalkable(posAll[i]) then
		doCreateItem(item_id, 1, posAll[i])
	end
end 
addEvent(removeItem, remove_time*1000, posAll)

return true
end

function isWalkable(pos, creature, pz, proj)
    if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
	local creature = getTopCreature(pos)
    if creature.type > 0 then	return false end
	if getTilePzInfo(pos) and not pz then return false end
	local n = not proj and 3 or 2
	for i = 0, 255 do
        pos.stackpos = i
        local tile = getTileThingByPos(pos)
        if tile.itemid ~= 0 and not isCreature(tile.uid) then
            if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
                return false
            end
        end
	end
return true
end

function removeItem(posAll)
	for i=1, #posAll do
		for j=0, 255 do
			pos_stack = {x=posAll[i].x,y=posAll[i].y,z=posAll[i].z,stackpos=j}
			removeTile = getThingfromPos(pos_stack)
			if removeTile.itemid == item_id then
				doRemoveItem(removeTile.uid)
			end
		end
	end
end 

Aqui ta pegando direito, 

você quer que não fale as words ? 

coloquei para não falar a magia.

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

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Tipo assim cara to confundindo kkk tipo eu fiz um negocio aqui olha

doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(30 - (os.time() - getPlayerStorageValue(cid, 2343))).." seconds.")

So que ta bugado ta reiniciando a contagem vou te explicar certim olha.

 

 

Usei a magia funcionou , exhausted de 30 segundos e não funcione a função de fail quando isso ocorrer, quando a função de fail ocorrer eu quero q fique a contagem 15 segundos.

 

cada vez q o player usar a magia vai ver quantos segundos falta entendeu ?

Link para o post
Compartilhar em outros sites
doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(getPlayerStorageValue(cid, 2343) - os.time() ).." seconds.")

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Mano o FAIL CONTINUA FUNCIONANDO APÓS O SCRIPT ENTRAR EM EXHAUSTED QUERO ARRUMAR ISSO SE VC INSITIR O FAIL FUNCIONA MSM COM O COOLDOWN APOS TER FUNCIONADO A SPELL... E QUERO Q O COOLDOWN SEJA 30 SEGUNDOS QND FUNCIONE E 15 PRA USAR DENOVO QUANDO DER FAIL

Link para o post
Compartilhar em outros sites

Mano o FAIL CONTINUA FUNCIONANDO APÓS O SCRIPT ENTRAR EM EXHAUSTED QUERO ARRUMAR ISSO SE VC INSITIR O FAIL FUNCIONA MSM COM O COOLDOWN APOS TER FUNCIONADO A SPELL... E QUERO Q O COOLDOWN SEJA 30 SEGUNDOS QND FUNCIONE E 15 PRA USAR DENOVO QUANDO DER FAIL

 

Desculpa eu não entendi...

eu coloquei o tempo menor para testar aqui, vou editar o post para colocar 15 e 30

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Vou explicar tim tim por tim tim olha ta acontecendo a seguinte coisa:

 

Se eu usei a magia Doton Doryu Heki Uma vez e ela funcionou , o cooldown dela foi pra 30 né ? mais no meio desse cooldown eu tento usar ela novamente e da fail ela pula pra 15 segundos entendeu eu quero QUE ESSA PARTE AQUI:

if math.random(0, 100) <= 30 then 
return doSendMagicEffect(getThingPos(cid), 23) and setPlayerStorageValue(cid, 2343, (os.time() + 15)) and false
end

NÃO FUNCIONE ENQUANTO ESSA AQUI FUNCIONAR:

if (getPlayerStorageValue(cid, 2343) - os.time()) > 0 then 
doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(getPlayerStorageValue(cid, 2343) - os.time() ).." seconds.")
return false
end

Por que se eu uso doton doryu heki no meio do cooldown e ela da fail muda a contagem pra 15.. acho q entendeu agora.

Link para o post
Compartilhar em outros sites
*Spoiler ta bugado (Alguém corrige isso)
local remove_time = 5 -- tempo em segundos para remover as magic wall
local item_id = 5750 -- id da magic wall
local chance = 30
local rtime = 15
local time = 30
function onCastSpell(cid, var)
local pos = getThingPosition(getCreatureTarget(cid))
posTile1 = {x=pos.x+1,y=pos.y+1,z=pos.z,stackpos=1}
posTile2 = {x=pos.x+1,y=pos.y,z=pos.z,stackpos=1}
posTile3 = {x=pos.x+1,y=pos.y-1,z=pos.z,stackpos=1}
posTile4 = {x=pos.x,y=pos.y-1,z=pos.z,stackpos=1}
posTile5 = {x=pos.x-1,y=pos.y-1,z=pos.z,stackpos=1}
posTile6 = {x=pos.x-1,y=pos.y,z=pos.z,stackpos=1}
posTile7 = {x=pos.x-1,y=pos.y+1,z=pos.z,stackpos=1}
posTile8 = {x=pos.x,y=pos.y+1,z=pos.z,stackpos=1}
posAll = {posTile1,posTile2,posTile3,posTile4,posTile5,posTile6,posTile7,posTile8}
if getPlayerStorageValue(cid, 23221)-os.clock() then
doPlayerSendCancel(cid,"Voce tem que esperar para usar a spell novamente.")
return true
end
if math.random(1, 100) <= chance then
for i=1, #posAll do
if isWalkable(posAll[i]) then
doCreateItem(item_id, 1, posAll[i])
setPlayerStorageValue(cid, 23221, os.clock()+time)
end
  end
addEvent(removeItem, remove_time*1000, posAll)
else
doPlayerSendCancel(cid,"Desculpe a spell falhou.")
setPlayerStorageValue(cid, 23221, os.clock()+rtime)
end
return true
end


function isWalkable(pos, creature, pz, proj)
    if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
local creature = getTopCreature(pos)
    if creature.type > 0 then return false end
if getTilePzInfo(pos) and not pz then return false end
local n = not proj and 3 or 2
for i = 0, 255 do
        pos.stackpos = i
        local tile = getTileThingByPos(pos)
        if tile.itemid ~= 0 and not isCreature(tile.uid) then
            if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
                return false
            end
        end
end
return true
end


function removeItem(posAll)
for i=1, #posAll do
for j=0, 255 do
pos_stack = {x=posAll[i].x,y=posAll[i].y,z=posAll[i].z,stackpos=j}
removeTile = getThingfromPos(pos_stack)
if removeTile.itemid == item_id then
doRemoveItem(removeTile.uid)
end
end
end
end
Editado por Vinicius Xxgamexx (veja o histórico de edições)

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

@leonardobo, editei, vê lá se continua... 


F5

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Resolvi ja eu mesmo mechi qui alterei a ordem das funções e mechi em outras coisinhas basicas e consegui do meu jeito bjs e obrigado ! rep +.

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

Faz o seguinte mano não ta dando certo do jeito que eu quero voce poderia por favor fazer isso.

 

Quando usar a magia e funcionar ter um cooldown de 15 segundos.

 

Quando usar a magia e falhar ter um cooldown de 15 segundos tambem

 

e quando falhar aparecer isso.

addEvent(doSendAnimatedText, 500, getCreaturePosition(cid), "FAIL", 180)

não aguento mais ficar comentando aqui toda hora so preciso disso 

 

Cara você não explica direito...

local remove_time = 5 -- tempo em segundos para remover as magic wall
local item_id = 5750 -- id da magic wall

function onCastSpell(cid, var)

if math.random(0, 100) <= 30 then
if (getPlayerStorageValue(cid, 2343) - os.time()) < 0 then 
setPlayerStorageValue(cid, 2343, (os.time() + 15))
addEvent(doSendAnimatedText, 500, getCreaturePosition(cid), "FAIL", 180) 
end
return doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) and doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(getPlayerStorageValue(cid, 2343) - os.time() ).." seconds.") and false
end


if (getPlayerStorageValue(cid, 2343) - os.time()) > 0 then 
return doSendMagicEffect(getThingPos(cid), CONST_ME_POFF) and doPlayerSendCancel(cid, "You are exhausted in Doton Doryu Heki for: "..(getPlayerStorageValue(cid, 2343) - os.time() ).." seconds.") and false
end
 

setPlayerStorageValue(cid, 2343, (os.time() + 30))

local pos = getThingPosition(getCreatureTarget(cid))
posTile1 = {x=pos.x+1,y=pos.y+1,z=pos.z,stackpos=1}
posTile2 = {x=pos.x+1,y=pos.y,z=pos.z,stackpos=1}
posTile3 = {x=pos.x+1,y=pos.y-1,z=pos.z,stackpos=1}
posTile4 = {x=pos.x,y=pos.y-1,z=pos.z,stackpos=1}
posTile5 = {x=pos.x-1,y=pos.y-1,z=pos.z,stackpos=1}
posTile6 = {x=pos.x-1,y=pos.y,z=pos.z,stackpos=1}
posTile7 = {x=pos.x-1,y=pos.y+1,z=pos.z,stackpos=1}
posTile8 = {x=pos.x,y=pos.y+1,z=pos.z,stackpos=1}
posAll = {posTile1,posTile2,posTile3,posTile4,posTile5,posTile6,posTile7,posTile8}

for i=1, #posAll do
	if isWalkable(posAll[i]) then
		doCreateItem(item_id, 1, posAll[i])
	end
end 
addEvent(removeItem, remove_time*1000, posAll)

return true
end

function isWalkable(pos, creature, pz, proj)
    if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0 then return false end
	local creature = getTopCreature(pos)
    if creature.type > 0 then	return false end
	if getTilePzInfo(pos) and not pz then return false end
	local n = not proj and 3 or 2
	for i = 0, 255 do
        pos.stackpos = i
        local tile = getTileThingByPos(pos)
        if tile.itemid ~= 0 and not isCreature(tile.uid) then
            if hasProperty(tile.uid, n) or hasProperty(tile.uid, 7) then
                return false
            end
        end
	end
return true
end

function removeItem(posAll)
	for i=1, #posAll do
		for j=0, 255 do
			pos_stack = {x=posAll[i].x,y=posAll[i].y,z=posAll[i].z,stackpos=j}
			removeTile = getThingfromPos(pos_stack)
			if removeTile.itemid == item_id then
				doRemoveItem(removeTile.uid)
			end
		end
	end
end

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Você testou oque eu postei ?? leonardobo

 

Cara você não explica direito...

Ele quer que a magia seja usada com exaust de 30 segundos com 30% de chance de falha caso ela venha a falhar fique com CD de 15 segundos

só foi isso que eu entendi  :hum:

Ando devagar, porque já tive pressa. E levo esse sorriso, porque já chorei demais...

________________________________________________________________________________

Minhas Sprites:

Mega Metagross

Mega Abomasnow

Pack de Shinys

[Posso atualizá-lo com novos shinys a qualquer momento]

Tutoriais:

[Completo] Criando e adicionando um novo Pokémon

[Actions] Criando quest no RME

Editores Lua/Xml/Sync Entre outros:

Editores Win/Mac/Linux

Link para o post
Compartilhar em outros sites

Você testou oque eu postei ?? leonardobo

 

Ele quer que a magia seja usada com exaust de 30 segundos com 30% de chance de falha caso ela venha a falhar fique com CD de 15 segundos

só foi isso que eu entendi  :hum:

 

Eu já fiz isso, só que ele ta reclamando agora que falta o FAIL, que ele não explicou direito como era...

já testei o script até no tibia...

mo4emM1.png

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

ISSO AI FUNFO CERTIM VLW JA DEI 2 REP+ E MELHOR RESPOSTA ESSE ULTIMO AI RESOLVEU BJS SAINDO AQUI FLW


O Ultimo ai deu certo resolvido vlw ja dei seu rep= e melhor resposta


O Ultimo ai deu certo resolvido vlw ja dei seu rep= e melhor resposta

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