Ir para conteúdo
  • Cadastre-se

Posts Recomendados

queria colocar exausting nesse spells, não pelo xml e sim pelo script mesmo..... 10seg.

Rep+ se para quem me ajudar ^^

 

 

 

 
 
local condition = createConditionObject(CONDITION_FREEZING)
setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(condition, 1, 15000, 0)
setCombatCondition(combat, condition)
 
 
local tempo = 10 -- tempo em segundos.
     
local ml = 15 -- quantos ira aumentar o skill de ML
local skillfist = 15 -- quantos ira aumentar o skill de Fist
local skillsword = 15 -- quantos ira aumentar o skill de Sword
local skillaxe = 15 -- quantos ira aumentar o skill de Axe
local skillclub = 15 -- quantos ira aumentar o skill de Club
local skilldistance = 15 -- quantos ira aumentar o skill de Distance
local skillshield = 80 -- quantos ira aumentar o skill de Shield
local health = 50 -- A cada 1 segundo quantos aumentar de vida
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
     
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword)
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe)
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield)
setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit)
setCombatCondition(combat, condition)
 
 
 
 
 
 
 
 
function a1(cid) 
local pos = getPlayerPosition(cid)  
pos.x=pos.x+2
pos.y=pos.y
doSendMagicEffect(pos,117)
end
function a2(cid)     
doCreatureAddHealth(cid,-getCreatureMaxHealth(cid)+getCreatureMaxHealth(cid)/3)
doRemoveCondition(cid,CONDITION_FREEZING)
    end 
function a3(cid)   
if isPlayer(cid) then    
        doPlayerSay(cid, '', TALKTYPE_ORANGE_1)  
    end       
if isCreature(cid) then  
 end      
doSendMagicEffect(getPlayerPosition(cid),109)
doPlayerSay(cid, '', TALKTYPE_ORANGE_1)
doAddCondition(cid,condition)
            addEvent(a1,0,cid)
            addEvent(a1,500,cid)
            addEvent(a1,900,cid)
            addEvent(a1,1300,cid)
            addEvent(a1,1700,cid)
            addEvent(a1,2100,cid)
            addEvent(a1,2500,cid)
            addEvent(a1,2900,cid)
            addEvent(a1,3100,cid)
            addEvent(a1,3500,cid)
            addEvent(a1,3900,cid)
            addEvent(a1,4300,cid)
            addEvent(a1,4700,cid)
            addEvent(a1,5100,cid)
            addEvent(a1,5500,cid)
            addEvent(a1,5900,cid)
            addEvent(a1,6300,cid)
            addEvent(a1,6700,cid)
            addEvent(a1,7100,cid)
            addEvent(a1,7500,cid)
            addEvent(a1,7900,cid)
    addEvent(a1,8300,cid)
    addEvent(a1,8700,cid)
    addEvent(a1,9100,cid)
    addEvent(a1,9500,cid)
    addEvent(a2,9900,cid)
 
 
      end
 
 
 
function onCastSpell(cid, var)
doCombat(cid, combat, var)
a3(cid)
return true
end
 

 

Link para o post
Compartilhar em outros sites

Se vc quinzer cooldown  ta ae é quase msm coisa:

 

Logo após:
 

function onCastSpell(cid, var)

Adicione:
 

if getPlayerStorageValue(cid, cooldownStorage) > os.time() then
doPlayerSendCancel(cid, "You are exhausted.")
return true
else
setPlayerStorageValue(cid, cooldownStorage, (os.time()+cooldownSeconds))
end

E no começo to arquivo, no começo mesmo, de dois enter, e atrás dos dois enter, adicione isso:
 

local cooldownSeconds = 5
local cooldownStorage = 6541

Nisso /\, você configura o tempo de cooldown que a spell irá dar: 5 segundos que está configurado. E a storage do cooldown, caso queira um cooldown diferente para cada magia, mude o cooldownStorage para outro valor sempre para cada magia.

 

Exemplo:

local cooldownSeconds = 5


local cooldownStorage = 6541

local tempo = 30
local effect = {175}

local health = 1000
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

local condition = createConditionObject(CONDITION_REGENERATION)
setConditionParam(condition, CONDITION_PARAM_SUBID, 1)
setConditionParam(condition, CONDITION_PARAM_BUFF, true)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_HEALTHGAIN, health)
setConditionParam(condition, CONDITION_PARAM_HEALTHTICKS, 1000)
setCombatCondition(combat, condition)

function magicEffect10(tempo2,tempo3,cid)
if (isCreature(cid)) then
if getPlayerStorageValue(cid, 102053) > 0 and getCreatureCondition(cid, CONDITION_REGENERATION, 1) then
for i=1, #effect do
local position = {x=getPlayerPosition(cid).x+1, y=getPlayerPosition(cid).y, z=getPlayerPosition(cid).z}
doSendMagicEffect(position, effect)
end
end
end
end

function onCastSpell(cid, var)
if getPlayerStorageValue(cid, cooldownStorage) > os.time() then
doPlayerSendCancel(cid, "You are exhausted.")
return true
else
setPlayerStorageValue(cid, cooldownStorage, (os.time()+cooldownSeconds))
end
if getPlayerStorageValue(cid, 102053) ~= 1 or getCreatureCondition(cid, CONDITION_REGENERATION, 1) == false then
doCombat(cid, combat, var)
tempo2 = 0
while (tempo2 ~= (tempo*1000)) do
addEvent(magicEffect10, tempo2, tempo2, tempo*1000, cid)
tempo2 = tempo2 + 300
end

setPlayerStorageValue(cid, 102053,1)
else
doPlayerSendCancel(cid, "A magia está sendo usada!")
end
end

 

Palavras de Snowsz.

 

creditos: Snowsz

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

Se ti ajudei. Marque como Melhor Resposta e agradeça com um Rep+, clicando em Gostei!. Obrigado!

Link para o post
Compartilhar em outros sites

não funcionou, ainda continua usando spells sem exaust   :(

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

testa:

local condition = createConditionObject(CONDITION_FREEZING)


setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(condition, 1, 15000, 0)
setCombatCondition(combat, condition)

local cooldownSeconds = 100
local cooldownStorage = 6541
local tempo = 10 -- tempo em segundos.

local ml = 15 -- quantos ira aumentar o skill de ML
local skillfist = 15 -- quantos ira aumentar o skill de Fist
local skillsword = 15 -- quantos ira aumentar o skill de Sword
local skillaxe = 15 -- quantos ira aumentar o skill de Axe
local skillclub = 15 -- quantos ira aumentar o skill de Club
local skilldistance = 15 -- quantos ira aumentar o skill de Distance
local skillshield = 80 -- quantos ira aumentar o skill de Shield
local health = 50 -- A cada 1 segundo quantos aumentar de vida
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)

local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword)
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe)
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield)
setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit)
setCombatCondition(combat, condition)








function a1(cid)
local pos = getPlayerPosition(cid)
pos.x=pos.x+2
pos.y=pos.y
doSendMagicEffect(pos,117)
end
function a2(cid)
doCreatureAddHealth(cid,-getCreatureMaxHealth(cid)+getCreatureMaxHealth(cid)/3)
doRemoveCondition(cid,CONDITION_FREEZING)
end
function a3(cid)
if isPlayer(cid) then
doPlayerSay(cid, '', TALKTYPE_ORANGE_1)
end
if isCreature(cid) then
end
doSendMagicEffect(getPlayerPosition(cid),109)
doPlayerSay(cid, '', TALKTYPE_ORANGE_1)
doAddCondition(cid,condition)
addEvent(a1,0,cid)
addEvent(a1,500,cid)
addEvent(a1,900,cid)
addEvent(a1,1300,cid)
addEvent(a1,1700,cid)
addEvent(a1,2100,cid)
addEvent(a1,2500,cid)
addEvent(a1,2900,cid)
addEvent(a1,3100,cid)
addEvent(a1,3500,cid)
addEvent(a1,3900,cid)
addEvent(a1,4300,cid)
addEvent(a1,4700,cid)
addEvent(a1,5100,cid)
addEvent(a1,5500,cid)
addEvent(a1,5900,cid)
addEvent(a1,6300,cid)
addEvent(a1,6700,cid)
addEvent(a1,7100,cid)
addEvent(a1,7500,cid)
addEvent(a1,7900,cid)
addEvent(a1,8300,cid)
addEvent(a1,8700,cid)
addEvent(a1,9100,cid)
addEvent(a1,9500,cid)
addEvent(a2,9900,cid)


end



function onCastSpell(cid, var)
if getPlayerStorageValue(cid, cooldownStorage) > os.time() then
doPlayerSendCancel(cid, "You are exhausted.")
return true
else
setPlayerStorageValue(cid, cooldownStorage, (os.time()+cooldownSeconds))
end
doCombat(cid, combat, var)
a3(cid)
return true
end

 

e dis se da algum erro.

Se ti ajudei. Marque como Melhor Resposta e agradeça com um Rep+, clicando em Gostei!. Obrigado!

Link para o post
Compartilhar em outros sites

não aparece erro porem não dar exaust :/

  

 

meu xml

<instant name="susanou" exhnr="14" exhaustionall="1000" words="susanou" needlearn="0" direction="1"   aggressive="1" lvl="250" maglv="110"     mana="10000" soul="0" exhaustion="1000" prem="1" enabled="1" script="itachi/susanou.lua"><vocation id="71-80"/><vocation id="120"/><vocation id="71-80"/><vocation id="114-119"/><vocation id="105-106"/></instant>

Link para o post
Compartilhar em outros sites

Eu estanho o seu script, quer usa outra n

Se ti ajudei. Marque como Melhor Resposta e agradeça com um Rep+, clicando em Gostei!. Obrigado!

Link para o post
Compartilhar em outros sites
  • Sub-Admin

local condition = createConditionObject(CONDITION_FREEZING)
setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(condition, 1, 15000, 0)
setCombatCondition(combat, condition)

 

local exhausted = 10
local storage = 67867875

 

local ml = 15 -- quantos ira aumentar o skill de ML
local skillfist = 15 -- quantos ira aumentar o skill de Fist
local skillsword = 15 -- quantos ira aumentar o skill de Sword
local skillaxe = 15 -- quantos ira aumentar o skill de Axe
local skillclub = 15 -- quantos ira aumentar o skill de Club
local skilldistance = 15 -- quantos ira aumentar o skill de Distance
local skillshield = 80 -- quantos ira aumentar o skill de Shield
local health = 50 -- A cada 1 segundo quantos aumentar de vida
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
    
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, tempo*1000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword)
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe)
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield)
setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit)
setCombatCondition(combat, condition)


function a1(cid)
local pos = getPlayerPosition(cid) 
pos.x=pos.x+2
pos.y=pos.y
doSendMagicEffect(pos,117)
end
function a2(cid)    
doCreatureAddHealth(cid,-getCreatureMaxHealth(cid)+getCreatureMaxHealth(cid)/3)
doRemoveCondition(cid,CONDITION_FREEZING)
    end
function a3(cid)  
if isPlayer(cid) then   
        doPlayerSay(cid, '', TALKTYPE_ORANGE_1) 
    end      
if isCreature(cid) then 
end     
doSendMagicEffect(getPlayerPosition(cid),109)
doPlayerSay(cid, '', TALKTYPE_ORANGE_1)
doAddCondition(cid,condition)
            addEvent(a1,0,cid)
            addEvent(a1,500,cid)
            addEvent(a1,900,cid)
            addEvent(a1,1300,cid)
            addEvent(a1,1700,cid)
            addEvent(a1,2100,cid)
            addEvent(a1,2500,cid)
            addEvent(a1,2900,cid)
            addEvent(a1,3100,cid)
            addEvent(a1,3500,cid)
            addEvent(a1,3900,cid)
            addEvent(a1,4300,cid)
            addEvent(a1,4700,cid)
            addEvent(a1,5100,cid)
            addEvent(a1,5500,cid)
            addEvent(a1,5900,cid)
            addEvent(a1,6300,cid)
            addEvent(a1,6700,cid)
            addEvent(a1,7100,cid)
            addEvent(a1,7500,cid)
            addEvent(a1,7900,cid)
    addEvent(a1,8300,cid)
    addEvent(a1,8700,cid)
    addEvent(a1,9100,cid)
    addEvent(a1,9500,cid)
    addEvent(a2,9900,cid)


      end


if (getPlayerStorageValue(cid, storage) >= os.time()+exhausted) then
doSendMagicEffect(getThingPos(cid), 2)
return true
end

function onCastSpell(cid, var)

setPlayerStorageValue(cid, storage,os.time()+exhausted)
doCombat(cid, combat, var)
a3(cid)
return true
end

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

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

tente assim.

 

local condition = createConditionObject(CONDITION_FREEZING)
setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(condition, 1, 15000, 0)
setCombatCondition(combat, condition)
 
 
local config = {
tempo = 10, --- tempo que vai durar a spell
}
     
local ml = 15 -- quantos ira aumentar o skill de ML
local skillsword = 15 -- quantos ira aumentar o skill de Sword
local skillfist = 15 -- quantos ira aumentar o skill de Fist
local skillaxe = 15 -- quantos ira aumentar o skill de Axe
local skillclub = 15 -- quantos ira aumentar o skill de Club
local skilldistance = 15 -- quantos ira aumentar o skill de Distance
local skillshield = 80 -- quantos ira aumentar o skill de Shield
local health = 50 -- A cada 1 segundo quantos aumentar de vida
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
     
local condition = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(condition, CONDITION_PARAM_TICKS, config.tempo*1000)
setConditionParam(condition, CONDITION_PARAM_STAT_MAGICLEVEL, ml)
setConditionParam(condition, CONDITION_PARAM_SKILL_FIST, skillfist)
setConditionParam(condition, CONDITION_PARAM_SKILL_SWORD, skillsword)
setConditionParam(condition, CONDITION_PARAM_SKILL_AXE, skillaxe)
setConditionParam(condition, CONDITION_PARAM_SKILL_CLUB, skillclub)
setConditionParam(condition, CONDITION_PARAM_SKILL_DISTANCE, skilldistance)
setConditionParam(condition, CONDITION_PARAM_SKILL_SHIELD, skillshield)
setConditionParam(condition, CONDITION_PARAM_OUTFIT, outfit)
setCombatCondition(combat, condition)
 
 
 
 
 
 
 
 
function a1(cid) 
local pos = getPlayerPosition(cid)  
pos.x=pos.x+2
pos.y=pos.y
doSendMagicEffect(pos,117)
end
function a2(cid)     
doCreatureAddHealth(cid,-getCreatureMaxHealth(cid)+getCreatureMaxHealth(cid)/3)
doRemoveCondition(cid,CONDITION_FREEZING)
    end 
function a3(cid)   
if isPlayer(cid) then    
        doPlayerSay(cid, '', TALKTYPE_ORANGE_1)  
    end       
if isCreature(cid) then  
 end      
doSendMagicEffect(getPlayerPosition(cid),109)
doPlayerSay(cid, '', TALKTYPE_ORANGE_1)
doAddCondition(cid,condition)
            addEvent(a1,0,cid)
            addEvent(a1,500,cid)
            addEvent(a1,900,cid)
            addEvent(a1,1300,cid)
            addEvent(a1,1700,cid)
            addEvent(a1,2100,cid)
            addEvent(a1,2500,cid)
            addEvent(a1,2900,cid)
            addEvent(a1,3100,cid)
            addEvent(a1,3500,cid)
            addEvent(a1,3900,cid)
            addEvent(a1,4300,cid)
            addEvent(a1,4700,cid)
            addEvent(a1,5100,cid)
            addEvent(a1,5500,cid)
            addEvent(a1,5900,cid)
            addEvent(a1,6300,cid)
            addEvent(a1,6700,cid)
            addEvent(a1,7100,cid)
            addEvent(a1,7500,cid)
            addEvent(a1,7900,cid)
    addEvent(a1,8300,cid)
    addEvent(a1,8700,cid)
    addEvent(a1,9100,cid)
    addEvent(a1,9500,cid)
    addEvent(a2,9900,cid)
 
 
      end
 
 
 
function onCastSpell(cid, var)
doCombat(cid, combat, var)
a3(cid)
return true
end

 

xml.

<instant name="susanou buff" words="susanou" lvl="250" mana="10000" maglv="110" prem="1" aggressive="0" needtarget="1" params="1" exhaustion="1500" needlearn="0" event="script" value="itachi/susanou.lua">
</instant>
Editado por Jobs (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

não funcionou alexxxxx,  jobs o seu aparece "A player with this name is not online"

:(

Link para o post
Compartilhar em outros sites

não funcionou alexxxxx,  jobs o seu aparece "A player with this name is not online"

:(

 

no caso a skill seria usada susanou "o nome do player

Link para o post
Compartilhar em outros sites

no caso a skill seria usada susanou "o nome do player

porem o spells fica sem exaust :(

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