Jump to content

Recommended Posts

  • 2 weeks later...

Em creaturescripts.xml

<event type="statschange" name="invencible" event="script" value="nomedoseuarquivo.lua"/>

Crie um arquivo na pasta creaturescripts/scripts com o mesmo nome do arquivo registrado na tag xml. Dentro do arquivo cole o seguinte:

local config = { 
storage = 3482101, ---- storage utilizada,
effect1 = 2 --- efeito ao ser atacado estando invulneravel

 

Em login.lua:

    ---------- Imortalidade ----------------
    registerCreatureEvent(cid, "invencible")
    if getPlayerStorageValue(cid, 3482101) ~= 0 then
        setPlayerStorageValue(cid, 3482101, 0) 
    end


function onStatsChange(cid, attacker, type, combat, value)
if value >= 1 and (type == STATSCHANGE_HEALTHLOSS or (getCreatureCondition(cid, CONDITION_MANASHIELD) and type == STATSCHANGE_MANALOSS))  then
if getPlayerStorageValue(cid,config.storage) - os.time() > 0 and isCreature(attacker) then
doSendMagicEffect(getCreaturePosition(cid), config.effect1)
doSendAnimatedText(getCreaturePosition(cid), "IMORTAL", 180)
return false
end
end
return true
end

 

Agora em spells.xml, cole a seguinte tag:
<instant name="Nome da magia" words="Nome da magia" lvl="400" mana="4000" maglv="110" prem="0" aggressive="1" exhaustion="100" needlearn="0" script="diretoriodoarquivo.lua"> 

</instant>

crie 1 arquivo.lua para a spell com o seguinte código:

local config = { 
storage = 3482101,
cooldown = 60,  --- tempo entre um uso e outro
duration = 5, --- duracao
effect1 = 279 -- efeito que sai ao falar a spell

function onCastSpell(cid, var)

if os.time() - getPlayerStorageValue(cid, 55695) >= config.cooldown then
setPlayerStorageValue(cid, 55695, os.time())
    for k = 1, 9 do
        addEvent(function()
            if isCreature(cid) then
                local pos1 = {x = getPlayerPosition(cid).x + 1, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z}
                doSendMagicEffect(pos1, 326)
            end
        end, 1 + ((k-1) * 500))
    end
setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
doCreatureSay(cid,"IMORTAL!!!", 15)
doPlayerSendTextMessage(cid, 20, "Voce tem ".. config.duration .." segundos de invulnerabilidade.")
else
doPlayerSendCancel(cid, "Sua habilidade esta em cooldown, voce deve esperar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, 55695))).." segundos.")
return false
end  
    return true
end

 

Link to post
Share on other sites

  • 4 weeks later...
Em 19/11/2019 em 19:35, TottenXD disse:

Em creaturescripts.xml

<event type="statschange" name="invencible" event="script" value="nomedoseuarquivo.lua"/>

Crie um arquivo na pasta creaturescripts/scripts com o mesmo nome do arquivo registrado na tag xml. Dentro do arquivo cole o seguinte:

local config = { 
storage = 3482101, ---- storage utilizada,
effect1 = 2 --- efeito ao ser atacado estando invulneravel

 

Em login.lua:

    ---------- Imortalidade ----------------
    registerCreatureEvent(cid, "invencible")
    if getPlayerStorageValue(cid, 3482101) ~= 0 then
        setPlayerStorageValue(cid, 3482101, 0) 
    end


function onStatsChange(cid, attacker, type, combat, value)
if value >= 1 and (type == STATSCHANGE_HEALTHLOSS or (getCreatureCondition(cid, CONDITION_MANASHIELD) and type == STATSCHANGE_MANALOSS))  then
if getPlayerStorageValue(cid,config.storage) - os.time() > 0 and isCreature(attacker) then
doSendMagicEffect(getCreaturePosition(cid), config.effect1)
doSendAnimatedText(getCreaturePosition(cid), "IMORTAL", 180)
return false
end
end
return true
end

 

Agora em spells.xml, cole a seguinte tag:
<instant name="Nome da magia" words="Nome da magia" lvl="400" mana="4000" maglv="110" prem="0" aggressive="1" exhaustion="100" needlearn="0" script="diretoriodoarquivo.lua"> 

</instant>

crie 1 arquivo.lua para a spell com o seguinte código:

local config = { 
storage = 3482101,
cooldown = 60,  --- tempo entre um uso e outro
duration = 5, --- duracao
effect1 = 279 -- efeito que sai ao falar a spell

function onCastSpell(cid, var)

if os.time() - getPlayerStorageValue(cid, 55695) >= config.cooldown then
setPlayerStorageValue(cid, 55695, os.time())
    for k = 1, 9 do
        addEvent(function()
            if isCreature(cid) then
                local pos1 = {x = getPlayerPosition(cid).x + 1, y = getPlayerPosition(cid).y + 0, z = getPlayerPosition(cid).z}
                doSendMagicEffect(pos1, 326)
            end
        end, 1 + ((k-1) * 500))
    end
setPlayerStorageValue(cid, config.storage, os.time() + config.duration)
doCreatureSay(cid,"IMORTAL!!!", 15)
doPlayerSendTextMessage(cid, 20, "Voce tem ".. config.duration .." segundos de invulnerabilidade.")
else
doPlayerSendCancel(cid, "Sua habilidade esta em cooldown, voce deve esperar "..(config.cooldown - (os.time() - getPlayerStorageValue(cid, 55695))).." segundos.")
return false
end  
    return true
end

 

 

QUando coloca no no login.lua da erro

Edited by XGaduX (see edit history)
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By Lethal M
      .Qual servidor ou website você utiliza como base? 
      TFS 1.3  TibiaGlobal 12.60
       
      Qual o motivo deste tópico? 
      Eu comecei a desenvolver um sistema de mudar de vocaçao mas nao tive muito sucesso, será que alguem pode me ajudar? (deve estar horrivel o script)
       
      Eu gostaria que o player digitasse !vocations e aparecesse em ModalWindow 2 opçoes pra ele escolher depenendo da voc que ele for
      EX:
      Sorc>Elementalista ou Necromancer
      Knight>Templar ou Berserker... etc




      talkactions
       
       
      creaturescripts

       
       
       
    • By daniel.braga989
      Olá, Bom Dia, Boa Tarde, Boa Noite, Como vcs estão ? espero que bem.

      Estou com probleminha chato aqui, se alguém poder ajudar, agradeço de coração.

      Seguinte, tenho um projeto OTX 8.60 e não estou conseguindo utilizar a MAGIC WALL no server, toda vez que tento utilizar  aparece uma mensagem de bloqueio dizendo ''' Você não pode utilizar JUTSU EM AREA enquanto estiver RED/BLACK skull''

      Obs: Todas as contas testada não estava pz,red ou black skull, ate no personagem GOOD não consigo utilizar a Magic Wall.

      Obs: Não sei se ajuda, mas Procurei na source e achei 3 arquivo com essa mensagem '''Você não pode usar jutsus de area enquanto estiver Red/Black Skull''

      Arquivos >> ''OTXtarget''   '''player.cpp''  e  ''''player.o''
       
    • By raphado
      .Qual servidor ou website você utiliza como base? Otserv Global 12.51
       
      Qual o motivo deste tópico? Gostaria de diminuir o tempo que o corpo morto do bicho fica no chão, apodrecendo ele mais rápido! Me indicaram o itens.xml acho, mas tem milhares!! Existe algum jeito mais fácil? Obrigado!!
       
      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. 
       
    • By Felippe Reine014
      --- tfs 1.3--
      Pessoal alguém poderia me ajudar com um script de action 
      O script seria para dar atributo em um item exemplo vc usa uma pedra encantada em um item e o item ganha 10% de defesa contra fire por 20 horas e se der look no item aparece o atributo obrigado desde já pessoal.
       
      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. 
       
    • By Heitorzera13
      Fala Galera Tranquilo?
      Todas as portas de ga of experience abrem , mas não fecha HELP , não sei por onde começar .. VLW

       
       
       
       
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo