Ir para conteúdo

Script Com Tempo


narrog

Posts Recomendados

Bom a pergunta é simples.

Só quero saber como faz pra botar uma magia ou qualquer outra coisa com tempo (já que deve ser tudo o mesmo comando).

 

e como funcionam essas funções :

 

 

doPlayerAddMana(cid, mana)

doPlayerAddSkillTry(cid, skillid, n)

doPlayerAddOutfit(cid,looktype,addons)

setConditionFormula(combat, mina, minb, maxa, maxb)

setCombatFormula(combat, type, mina, minb, maxa, maxb)

 

 

E qual o comando que remove hp ao usar uma spell...

 

Agradeço desde já ;D

Link para o comentário
Compartilhar em outros sites

Coloca exhaustion, para magias você deve configurar na pasta "data/spells/spells.xml", procure pela seguinte tag:

exhaustion="1500"

So modifique o 1500, que no caso e 1 segundo e meio... algo assim,

 

O Comando que adiciona/remove vida e:

Adiciona:

doPlayerAddHealth(cid, health)

Remove:

doPlayerRemoveHealth(cid, health)

 

Eu acho que e assim,

 

Ajudei, +REP

Editado por TonyHanks
Link para o comentário
Compartilhar em outros sites

Coloca exhaustion, para magias você deve configurar na pasta "data/spells/spells.xml", procure pela seguinte tag:

exhaustion="1500"

So modifique o 1500, que no caso e 1 segundo e meio... algo assim,

 

O Comando que adiciona/remove vida e:

Adiciona:

doPlayerAddHealth(cid, health)

Remove:

doPlayerRemoveHealth(cid, health)

 

Eu acho que e assim,

 

Ajudei, +REP

doplayerremovehealth daonde voce tirou essa?? isso non existee! p tirar vida do player vc usa doplayeraddhealth só q add vida negativa , tipo -10, ai vai tirar 10 de hp

Link para o comentário
Compartilhar em outros sites

Cara presta atenção, nenhum momento disse que isso estaria certo,

Outra só tentei dar uma ajuda, infelizmente tem ignorantes que não sabe reconhecer...

 

vo tentou ganhar rep, e explicou uma função q ele nem pediu... n adianta ajudar com o q n precisa...

 

doPlayerAddMana(cid, mana) -- adiciona mana ao player cid. exemplo doPlayerAddMana(cid, 10) add 10 de mana ao player, tipo potion...

doPlayerAddSkillTry(cid, skillid, n) -- skill id é a id do skill, obvio... cada skill com sua id, n seria a quantidade de adicionar, n a quantidade de skill, mas tipo, p vc pegar skill 20 de sword, vc precisa dar X hits certo, entao tipo p vc deixar o player com skill 20 de sword vc add X skill try...

doPlayerAddOutfit(cid,looktype,addons) -- adiciona o outifit ao player, depois de executar o player vai poder usar tal outfit... looktype é tipo o id do outfit e addons é se vai add addons, vc pode usar p add só addons tb. p add addons 1 -> só addon 1, se colocar 2 -> só addon 2, 3 -> ambos

Link para o comentário
Compartilhar em outros sites

@narrog

cara especifica essa questão de tempo

é pra quanto tempo depois de usa fais a funçao tal

ou quanto tempo pra usa dinovo

 

e setCombatFormula(combat, type, mina, minb, maxa, maxb) ---é pra defini o maximo e minimo de dano ou cura de um spell,action,ect

ela soma uma A+B pra da o dano,sendo minA o minimo de dano de A, e maxA o maximo de dano de A(ela vai randomizar algo entre o max e minimo)e maxB e minB a mesma coisa

e A é definido pelo numero que se pois, veses o lv ou skill ou ml

e B é numero veses o lv ou ml ou skill

obs:n sei se é o A ou o B que é do lv,só um se refere ao lv(na ora de multiplica)A ou B, o outro e ao skil ou ml(dependedo do type se for levelmagic e o ml se for skill é o skill da arma usada)

 

bom é +- isso

Editado por lordbug99
Link para o comentário
Compartilhar em outros sites

Essa parada de tempo é tipo :

 

Você usa utani hur e dura +- 30 segundos (efeito com tempo de duração mas pode usar depois)

 

e também um no estilo de você usa aquela magia e só pode usar ela de novo depois de 30 segundos (Você usa a magia agora e depois só usará ela novamente depois de 30 segundos, mas SOMENTE ela e não todas (no caso exhausted não funciona pois bloqueia todas magias )) me corrijam se eu estiver errado

Editado por narrog
Link para o comentário
Compartilhar em outros sites

pra codition(tipo utani hur) se seta pelo "setConditionParam(condition, CONDITION_PARAM_TICKS, 200000)" o tempo é em milisegundos (1segundo = 1000milisegundos)

nocaso de cima seria 200 segundos

 

para exhaustion especifica para cada spell se usa coloque isso, logo antes do return docombat

if exhaustion.check(cid, x) == false then
			exhaustion.set(cid, x, y)

troque x é o storage de cada magia(escolha um que esteja livre e um para cada magia) e y o tempo a ser esperado em segundos,

n se esqueça de por um end para esse if

exemplo:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_EXPLOSIONAREA)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_EXPLOSION)

setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1480, 0, -1420, 0)

local condition = createConditionObject(CONDITION_CURSED)

setConditionParam(condition, CONDITION_PARAM_TICKS, 20000)

--setConditionParam(condition, CONDITION_PARAM_SPEED, -750)

setConditionFormula(condition, -0.8, 0, -0.8, 0)

setCombatCondition(combat, condition)

 

function onCastSpell(cid, var)

local spellname = "ABSOLUTE"

 

if exhaustion.check(cid, 23014) == false then

exhaustion.set(cid, 23014, 30)

return doCombat(cid, combat, var)

else

doPlayerSendCancel(cid, "You are exhausted in " .. spellname .. " for: " ..exhaustion.get(cid, storage).." segundos.")

end

end

 

em verde é o tempo do efeito de codition

em vermelho é o exhaust do spell

em azul é a mensagem de cancelamento(caso temte usa antes do tempo) e o end do if

Editado por lordbug99
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...