Ir para conteúdo
  • Cadastre-se

(Resolvido)[PEDIDO] Adaptação de script


Ir para solução Resolvido por L3K0T,

Posts Recomendados

Boa tarde galera, estou usando um script de combos pro meu narutibia, o que ele faz é acrescentar cooldown nas skills de forma que eu consiga combar ela com outra, o script é esse:

 

local waittime = 1 --tempo em segundos
local storage = 2524 --storage do exaust, em cada magia uma storage diferente.

if exhaustion.check(cid, storage) then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em " .. exhaustion.get(cid, storage) .. " segundos.")
return false 
end

exhaustion.set(cid, storage, waittime)

 

Bom, o que eu queria alterar o local waittime de segundos para ms, alguém poderia por favor fazer isso pra mim?

Link para o post
Compartilhar em outros sites
31 minutos atrás, KotZletY disse:

Ms ? Milissegundos ?

Basta colocar eles, 0.5 que funcionará perfeitamente.

 

Eu já tinha tentado, mas não funcionou de forma alguma, quando eu coloco 0.5 ele detecta que é 0

E sim é pra milisegundos, acredito que se essa alteração for feita eu posso colocar qualquer cooldown

Link para o post
Compartilhar em outros sites
  • Moderador

Não sei se vai dar certo n teste mais ve ai montei aqui!

 

local mg = {
    storage = 2524,
    tempo = 0.5
}


if getPlayerStorageValue(cid, mg.storage) > os.time() then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em "..getPlayerStorageValue(cid, mg.storage) - os.time().. " segundos.")
return false 
end

setPlayerStorageValue(cid, mg.storage, os.time() + mg.tempo)

 

 

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
7 minutos atrás, L3K0T disse:

Não sei se vai dar certo n teste mais ve ai montei aqui!

 


local mg = {
    storage = 2524,
    tempo = 0.5
}


if getPlayerStorageValue(cid, mg.storage) > os.time() then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em "..getPlayerStorageValue(cid, mg.storage) - os.time().. " segundos.")
return false 
end

setPlayerStorageValue(cid, mg.storage, os.time() + mg.tempo)

 

 

A spell não funcionou, acho que eu fiz algo errado, era pra ficar assim?

 

local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)



arr1 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}
}


arr2 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}

}


local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)
 

local function onCastSpell1(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)

end
 

local function onCastSpell2(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)

end
 

function onCastSpell(cid, var)

local mg = {
    storage = 2524,
    tempo = 0.5
}


if getPlayerStorageValue(cid, mg.storage) > os.time() then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em "..getPlayerStorageValue(cid, mg.storage) - os.time().. " segundos.")
return false 
end

setPlayerStorageValue(cid, mg.storage, os.time() + mg.tempo)

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position3 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y+2, z=getCreaturePosition(cid).z}

local position4 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position5 = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 300, parameters)

doSendMagicEffect(position2, 327)

doSendMagicEffect(position3, 290)

doSendMagicEffect(position4, -1)

doSendMagicEffect(position5, -1)

return TRUE

end 

 

Link para o post
Compartilhar em outros sites
  • Moderador
4 minutos atrás, ZeeroBR disse:

 

A spell não funcionou, acho que eu fiz algo errado, era pra ficar assim?

 


local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)



arr1 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}
}


arr2 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}

}


local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)
 

local function onCastSpell1(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)

end
 

local function onCastSpell2(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)

end
 

function onCastSpell(cid, var)

local mg = {
    storage = 2524,
    tempo = 0.5
}


if getPlayerStorageValue(cid, mg.storage) > os.time() then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em "..getPlayerStorageValue(cid, mg.storage) - os.time().. " segundos.")
return false 
end

setPlayerStorageValue(cid, mg.storage, os.time() + mg.tempo)

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position3 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y+2, z=getCreaturePosition(cid).z}

local position4 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position5 = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 300, parameters)

doSendMagicEffect(position2, 327)

doSendMagicEffect(position3, 290)

doSendMagicEffect(position4, -1)

doSendMagicEffect(position5, -1)

return TRUE

end 

 

 

tenta assim na magia 

 

local storage = 2524
local tempo = 0.5

if getPlayerStorageValue(cid, storage) > os.time() then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em "..getPlayerStorageValue(cid, storage) - os.time().. " segundos.")
return true 
end

setPlayerStorageValue(cid, storage, os.time() + tempo)

 

 

Editado por L3K0T (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
5 minutos atrás, L3K0T disse:

 

tenta assim na magia 

 


local storage = 2524
local tempo = 0.5

if getPlayerStorageValue(cid, storage) > os.time() then
   doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em "..getPlayerStorageValue(cid, storage) - os.time().. " segundos.")
return true 
end

setPlayerStorageValue(cid, storage, os.time() + tempo)

 

 

 

Continua não funcionando, q

Link para o post
Compartilhar em outros sites
  • Moderador
3 minutos atrás, ZeeroBR disse:

 

Continua não funcionando, q

tá ja edito!!! manda os scripts pra mim da magia pq to com meu server ligado ai ja testo

Editado por L3K0T (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

Aqui está

 

local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)



arr1 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}
}


arr2 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}

}


local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)
 

local function onCastSpell1(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)

end
 

local function onCastSpell2(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)

end
 

function onCastSpell(cid, var)

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position3 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y+2, z=getCreaturePosition(cid).z}

local position4 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position5 = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 300, parameters)

doSendMagicEffect(position2, 327)

doSendMagicEffect(position3, 290)

doSendMagicEffect(position4, -1)

doSendMagicEffect(position5, -1)

return TRUE

end 

 

Link para o post
Compartilhar em outros sites
  • Moderador
2 minutos atrás, ZeeroBR disse:

Aqui está

 


local combat1 = createCombatObject()

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat1, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)


local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)

setCombatParam(combat2, COMBAT_PARAM_EFFECT, -1)

setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)



arr1 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}
}


arr2 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}

}


local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)
 

local function onCastSpell1(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)

end
 

local function onCastSpell2(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)

end
 

function onCastSpell(cid, var)

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position3 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y+2, z=getCreaturePosition(cid).z}

local position4 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position5 = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 300, parameters)

doSendMagicEffect(position2, 327)

doSendMagicEffect(position3, 290)

doSendMagicEffect(position4, -1)

doSendMagicEffect(position5, -1)

return TRUE

end 

 

certo vo mexer jaja eu volto

 

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
  • Moderador
  • Solução
39 minutos atrás, ZeeroBR disse:

Muito obrigado!

local combat1 = createCombatObject()

local exhausto = createConditionObject(CONDITION_EXHAUSTED)
setConditionParam(exhausto, CONDITION_PARAM_TICKS, 500)

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, -1)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)
local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, -1)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)


arr1 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}
}


arr2 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}

}


local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)
 

local function onCastSpell1(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)

end
 

local function onCastSpell2(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)

end
 
function onCastSpell(cid, var)

doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em 0:0:500 segundos.")

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position3 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y+2, z=getCreaturePosition(cid).z}

local position4 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position5 = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 300, parameters)

doSendMagicEffect(position2, 327)

doSendMagicEffect(position3, 290)

doSendMagicEffect(position4, -1)

doSendMagicEffect(position5, -1)

return TRUE

end 

foi que eu consegui, espero ter ajudado... o exausted de 500 milésimos de segundos foi colocado dentro do script

 

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
14 minutos atrás, L3K0T disse:

local combat1 = createCombatObject()

local exhausto = createConditionObject(CONDITION_EXHAUSTED)
setConditionParam(exhausto, CONDITION_PARAM_TICKS, 500)

setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat1, COMBAT_PARAM_EFFECT, -1)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)
local combat2 = createCombatObject()

setCombatParam(combat2, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat2, COMBAT_PARAM_EFFECT, -1)
setCombatFormula(combat2, COMBAT_FORMULA_LEVELMAGIC, -100.2, 1, -100.2, 1)


arr1 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}
}


arr2 = {
	
{0, 0, 0, 0, 0},
	
{0, 1, 1, 1, 0},
	
{0, 1, 3, 1, 0},
	
{0, 1, 1, 1, 0},
	
{0, 0, 0, 0, 0}

}


local area1 = createCombatArea(arr1)

local area2 = createCombatArea(arr2)

setCombatArea(combat1, area1)

setCombatArea(combat2, area2)
 

local function onCastSpell1(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat1, parameters.var)

end
 

local function onCastSpell2(parameters)
    
return isPlayer(parameters.cid) and doCombat(parameters.cid, combat2, parameters.var)

end
 
function onCastSpell(cid, var)

doPlayerSendTextMessage(cid, 23, "Essa magia saira do cooldown em 0:0:500 segundos.")

local position2 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position3 = {x=getCreaturePosition(cid).x+2, y=getCreaturePosition(cid).y+2, z=getCreaturePosition(cid).z}

local position4 = {x=getCreaturePosition(cid).x+1, y=getCreaturePosition(cid).y+1, z=getCreaturePosition(cid).z}

local position5 = {x=getCreaturePosition(cid).x, y=getCreaturePosition(cid).y, z=getCreaturePosition(cid).z}

local parameters = { cid = cid, var = var}

addEvent(onCastSpell1, 100, parameters)

addEvent(onCastSpell2, 300, parameters)

doSendMagicEffect(position2, 327)

doSendMagicEffect(position3, 290)

doSendMagicEffect(position4, -1)

doSendMagicEffect(position5, -1)

return TRUE

end 

foi que eu consegui, espero ter ajudado... o exausted de 500 milésimos de segundos foi colocado dentro do script

 

Muito obrigado, consegui!

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo