Ir para conteúdo
  • Cadastre-se

Suporte Ajuda com Spell de travar o alvo no local


Posts Recomendados

.Qual servidor ou website você utiliza como base? 

OTX 8.6

Qual o motivo deste tópico? 

Ajuda

Está surgindo algum erro? Se sim coloque-o aqui. 

Citar

Boa noite galera, bom, uso essa spell no meu sv, ela trava o target no local por ' 5 ' segundos como diz ali, porém o alvo anda ficando travado pra sempre, só sai se deslogar, alguem poderia me dar um help ? obrigado.

 

Você tem o código disponível? Se tiver publique-o aqui: 

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

function onCastSpell(cid, var)    
    local target = getCreatureTarget(cid)
    local targetpos = getCreaturePosition(target)
    local efepos = {x=targetpos.x, y=targetpos.y, z=targetpos.z}
    local time = 5 -- tempo paralyzado
    
    if isPlayer(cid) and exhaustion.check(cid, 11560) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, 11560) .. " segundos para usar novamente.")
        return FALSE
    end
    
    exhaustion.set(cid, 11560, 20)
    doCreatureSetNoMove(target, TRUE)
    doSendMagicEffect(efepos, 24)
    addEvent(No_Move_Target, time*1000, cid)
    return TRUE
end

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Editado por Lenilson
informações (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
2 horas atrás, Lenilson disse:

.Qual servidor ou website você utiliza como base? 

OTX 8.6

Qual o motivo deste tópico? 

Ajuda

Está surgindo algum erro? Se sim coloque-o aqui. 

 

Você tem o código disponível? Se tiver publique-o aqui: 

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

function onCastSpell(cid, var)    
    local target = getCreatureTarget(cid)
    local targetpos = getCreaturePosition(target)
    local efepos = {x=targetpos.x, y=targetpos.y, z=targetpos.z}
    local time = 5 -- tempo paralyzado
    
    if isPlayer(cid) and exhaustion.check(cid, 11560) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, 11560) .. " segundos para usar novamente.")
        return FALSE
    end
    
    exhaustion.set(cid, 11560, 20)
    doCreatureSetNoMove(target, TRUE)
    doSendMagicEffect(efepos, 24)
    addEvent(No_Move_Target, time*1000, cid)
    return TRUE
end

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

local function No_Move_Target_2(cid)
    local target = getCreatureTarget(cid)
    if isCreature(target) then
        doCreatureSetNoMove(target, true)
    end
    return TRUE
end
 addEvent(No_Move_Target_2, time*1500, cid)

Se não funcionar, use este outro:

mayNotMove(target, true)
mayNotMove(target, false)

 

Editado por Fabi Marzan (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
8 horas atrás, Fabi Marzan disse:

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

 addEvent(No_Move_Target_2, time*1500, cid)

 

 

nao entendi mto bem amigo, é pra substituir isso por algo do script original que mandei ? se sim, tem como vc ja mandar o script todo ? obrigado e desculpa a burrice 

Link para o post
Compartilhar em outros sites
4 horas atrás, Lenilson disse:

nao entendi mto bem amigo, é pra substituir isso por algo do script original que mandei ? se sim, tem como vc ja mandar o script todo ? obrigado e desculpa a burrice 

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

local function No_Move_Target_2(cid)
    local target = getCreatureTarget(cid)
    if isCreature(target) then
        doCreatureSetNoMove(target, true)
         mayNotMove(target, true)
    end
    return TRUE
end

function onCastSpell(cid, var)    
    local target = getCreatureTarget(cid)
    local targetpos = getCreaturePosition(target)
    local efepos = {x=targetpos.x, y=targetpos.y, z=targetpos.z}
    local time = 5 -- tempo paralyzado
    
    if isPlayer(cid) and exhaustion.check(cid, 11560) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, 11560) .. " segundos para usar novamente.")
        return FALSE
    end
    
    exhaustion.set(cid, 11560, 20)
    doSendMagicEffect(efepos, 24)
    addEvent(No_Move_Target, time*1000, cid)
    addEvent(No_Move_Target_2, time*1500, cid)
    return TRUE
end

 

Link para o post
Compartilhar em outros sites
Em 11/06/2022 em 10:42, Fabi Marzan disse:

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

local function No_Move_Target_2(cid)
    local target = getCreatureTarget(cid)
    if isCreature(target) then
        doCreatureSetNoMove(target, true)
         mayNotMove(target, true)
    end
    return TRUE
end

function onCastSpell(cid, var)    
    local target = getCreatureTarget(cid)
    local targetpos = getCreaturePosition(target)
    local efepos = {x=targetpos.x, y=targetpos.y, z=targetpos.z}
    local time = 5 -- tempo paralyzado
    
    if isPlayer(cid) and exhaustion.check(cid, 11560) then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Aguarde " .. exhaustion.get(cid, 11560) .. " segundos para usar novamente.")
        return FALSE
    end
    
    exhaustion.set(cid, 11560, 20)
    doSendMagicEffect(efepos, 24)
    addEvent(No_Move_Target, time*1000, cid)
    addEvent(No_Move_Target_2, time*1500, cid)
    return TRUE
end

 

opa, muito obrigado amigo, funcionou ! Se não for muito abuso, vc teria uma spell de reflect que pudesse me passar ? para refletir o dano recebido por " x " segundos ? obrigado <3

4 minutos atrás, Lenilson disse:

opa, muito obrigado amigo, funcionou ! Se não for muito abuso, vc teria uma spell de reflect que pudesse me passar ? para refletir o dano recebido por " x " segundos ? obrigado <3

eu estou usando esse script, porém ja coloquei os ids dos items q sao preciso pra usar a spell, mas continua dando a mensagem que preciso ter uma Gunbai equipada pra poder usar, gostaria de que nao precisasse ter uma arma equipada pra poder usar, vou deixar o script abaixo


 

local config = { 
storage = 318210, -- storage que salva o tempo da spell
storagecol = 3482101, -- storage que salva o tempo entre 1 uso e outro
cooldown = 60, -- tempo de um uso e outro
duration = 5, -- tempo que a spell dura
effect1 = 9 --- efeito que sai qnd usa a spell


function onCastSpell(cid, var)
local itemid = 13898, 13941, 13806, 13818, 13975, 13982, 13763, 13607, 13782, 13787
if getPlayerStorageValue(cid, config.storage) - os.time() > 0  then
doPlayerSendCancel(cid, "Você está refletindo todo o dano recebido!")
return false
end

if getPlayerItemCount(cid, itemid) >= 1 then
if os.time() - getPlayerStorageValue(cid, config.storagecol) >= config.cooldown then
    setPlayerStorageValue(cid, config.storagecol, os.time())
    doSendMagicEffect(getCreaturePosition(cid), config.effect1)
    setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
    doPlayerSendTextMessage(cid, 27, "Voce ativou o modo Reflect e nos proximos ".. config.duration.." segundos refletira os danos recebidos.")
else
    doPlayerSendCancel(cid, "Você está cansado, precisa aguardar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, config.storagecol))).." segundos.")
return false
end
else
doPlayerSendCancel(cid, "Voce precisa de uma Gunbai para executar este Jutsu !")
return false
end  
    return true
end

Link para o post
Compartilhar em outros sites
1 hora atrás, Lenilson disse:

opa, muito obrigado amigo, funcionou ! Se não for muito abuso, vc teria uma spell de reflect que pudesse me passar ? para refletir o dano recebido por " x " segundos ? obrigado <3

eu estou usando esse script, porém ja coloquei os ids dos items q sao preciso pra usar a spell, mas continua dando a mensagem que preciso ter uma Gunbai equipada pra poder usar, gostaria de que nao precisasse ter uma arma equipada pra poder usar, vou deixar o script abaixo


 

local config = { 
storage = 318210, -- storage que salva o tempo da spell
storagecol = 3482101, -- storage que salva o tempo entre 1 uso e outro
cooldown = 60, -- tempo de um uso e outro
duration = 5, -- tempo que a spell dura
effect1 = 9 --- efeito que sai qnd usa a spell


function onCastSpell(cid, var)
local itemid = 13898, 13941, 13806, 13818, 13975, 13982, 13763, 13607, 13782, 13787
if getPlayerStorageValue(cid, config.storage) - os.time() > 0  then
doPlayerSendCancel(cid, "Você está refletindo todo o dano recebido!")
return false
end

if getPlayerItemCount(cid, itemid) >= 1 then
if os.time() - getPlayerStorageValue(cid, config.storagecol) >= config.cooldown then
    setPlayerStorageValue(cid, config.storagecol, os.time())
    doSendMagicEffect(getCreaturePosition(cid), config.effect1)
    setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
    doPlayerSendTextMessage(cid, 27, "Voce ativou o modo Reflect e nos proximos ".. config.duration.." segundos refletira os danos recebidos.")
else
    doPlayerSendCancel(cid, "Você está cansado, precisa aguardar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, config.storagecol))).." segundos.")
return false
end
else
doPlayerSendCancel(cid, "Voce precisa de uma Gunbai para executar este Jutsu !")
return false
end  
    return true
end

 

Basta deletar as linhas:

if getPlayerItemCount(cid, itemid) >= 1 then
local itemid = 13898, 13941, 13806, 13818, 13975, 13982, 13763, 13607, 13782, 13787
else
doPlayerSendCancel(cid, "Voce precisa de uma Gunbai para executar este Jutsu !")
return false
end

 

Aqui está pronto para você:

local config = { 
storage = 318210, -- storage que salva o tempo da spell
storagecol = 3482101, -- storage que salva o tempo entre 1 uso e outro
cooldown = 60, -- tempo de um uso e outro
duration = 5, -- tempo que a spell dura
effect1 = 9 --- efeito que sai qnd usa a spell
} 
function onCastSpell(cid, var)
if getPlayerStorageValue(cid, config.storage) - os.time() > 0  then
doPlayerSendCancel(cid, "Você está refletindo todo o dano recebido!")
return true
end

if os.time() - getPlayerStorageValue(cid, config.storagecol) >= config.cooldown then
    setPlayerStorageValue(cid, config.storagecol, os.time())
    doSendMagicEffect(getCreaturePosition(cid), config.effect1)
    setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
    doPlayerSendTextMessage(cid, 27, "Voce ativou o modo Reflect e nos proximos ".. config.duration.." segundos refletira os danos recebidos.")
else
    doPlayerSendCancel(cid, "Você está cansado, precisa aguardar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, config.storagecol))).." segundos.")
return true
end
    return true
end

 

 

 

 

 

 

 

 

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 braianlomas
      Como faço para corrigir esse problema para meu cliente, eu uso o tfs 0.3.6  
      Quero resolver esse problema que tenho no meu cliente, como e onde posso resolver?  
      Eu uso o tfs 0.3.6, não tenho as fontes do cliente, se você puder me dar eu vou amá-las para sempre  
       

       
    • Por A.Mokk
      Ola pessoal, estou tentando compilar o TFS 1.5 Downgrade para 8.60 atraves do MSVC 2022, ao tentar compilar da o seguinte erro:
       
       
      Fiz o download do MSVC, GitDash, TFS-SDK-3.2, e de varios boosts que tentei, ao fazer o seguinte procedimento no GitDash:
       
      Ao chegar em ./bootstrap-vcpkg.bat o GitDash nao consegue realizar o procedimento corretamente, alguem poderia me ajudar ?

      Tentei de diversas formas mas o mesmo erro sempre persiste, atualmente meu servidor utiliza TFS 0.4, consigo compilar sem nenhum problema no MSVC 2010, porem, as limitações do TFS 0.4 estão me fazendo precisar atualizar, se alguem souber como corrigir esses erros eu agradeço !

      Tutoriais utilizados :
      Compiling on Windows (vcpkg) · otland/forgottenserver Wiki · GitHub
      Compiling on Windows · otland/forgottenserver Wiki · GitHub
      Compilando TFS 1.3 com vídeo-aula - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
      Compilar TFS 1.3 Vcpkg - Tutoriais Infraestrutura & Proteção - Tibia King - Tudo sobre Tibia, OTServ e Bots!
       
      O que acontece no Powershell:
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      Canary 2.3.6
      Qual o motivo deste tópico? 
      Queria fazer com que os players não pudessem mexer no aleta sio, pois, agora os mesmos estão conseguindo mexer nos itens
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      canary para o cliente 13.16
      Qual o motivo deste tópico? 
      Não consigo encontrar onde ajusta
      to com o problema no 13.16  o exausted, por exemplo os kinas era pra combar exori, erori gran e exori min, porém não ta indo ta dando exausted o char ta soltando magia ou runa e não consegue usar as potions
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por Andersontatuador
      Olá galera da TK, me chamo Anderson estou procurando alguém profissional em otservs e site.
      Já tenho um servidor o site e o cliente preciso só de uma pessoal competente, que esteja empenhado a trabalhar,
      não quero nada de graça, pois nessa onda fui mais roubado do quer eu pagar um profissional.
      caso alguém se interesse entrar em contato comigo através do whatsapp
      82 9 9304-9462
       
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo