Ir para conteúdo
  • Cadastre-se

(Resolvido)como colocar uma magia pra healar por magic level?


Ir para solução Resolvido por Jamison Collins,

Posts Recomendados

bom , eu so queria que as magias exana mort,exura san, exura vita e exura sio fossem por magic level

exemplo: exura san, healar +100 de vida por cada 1 de magic level 

mas eu nao sei calcular isto

COMBAT_FORMULA_LEVELMAGIC, ?, ?, ?, ?)

Link para o post
Compartilhar em outros sites
  • Respostas 8
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Só você fazer o seguinte: Nas spells que você gostaria de modificar, você apaga essa linha de COMBAT_FORMULA_LEVELMAGIC, ?, ?, ?, ?) E embaixo, você cola isso:  function onGetFormulaValues(cid, level, maglevel) min = (maglevel * 100) max = (maglevel * 100) return min, max end setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") É só você alterar o valor acima representado como "100" para o valor desejado. Isso serve para todas as magias.   Ficará assim: lo

Seria algo tipo isso: setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, mina, minb, maxa, maxb) minDamage = (Level + Magic Level * 4) * mina + minb maxDamage = (Level + Magic Level * 4) * maxa + maxb Eu não recomendo isso para você que queira fazer um formula mais exata, pois há indícios que essa formula que eu apresentei agora, ela vem se alterando nos TFSs. Você pode usar a SD assim:  local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true) s

tem várias maneiras, uma delas é fazer por função (e não por comando de spell normal)

function onCastSpell (cid, var)
local life = ((getPlayerMagLevel(cid)) * 100)
doCreatureAddHealth(cid, life)
local pos = getCreaturePosition(cid)
doSendMagicEffect(pos, 12)
return true
end

outra maneira é setar um combat callback pra fazer as fórmulas e acho que se fizer a fórmula certinha dá pra fazer do jeito que vc citou também, só que não vou conseguir te ajudar.

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

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites
  • Solução

Só você fazer o seguinte:

Nas spells que você gostaria de modificar, você apaga essa linha de COMBAT_FORMULA_LEVELMAGIC, ?, ?, ?, ?)

E embaixo, você cola isso: 

function onGetFormulaValues(cid, level, maglevel)
	min = (maglevel * 100)
	max = (maglevel * 100)
	return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

É só você alterar o valor acima representado como "100" para o valor desejado. Isso serve para todas as magias.

 

Ficará assim:

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_HEALING)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, 0)
setCombatParam(combat, COMBAT_PARAM_DISPEL, CONDITION_PARALYZE)

function onGetFormulaValues(cid, level, maglevel)
	min = ((level / 5) + (maglevel * 1.4) + 8)
	max = ((level / 5) + (maglevel * 1.8) + 11)
	return min, max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

"A alma permanece em suas criações" V89E5aN.png


142c9d3439.jpg
(Não dou suporte por mensagem privada.)

Link para o post
Compartilhar em outros sites

obrigado de novo, tenho mais uma duvida, se eu puder mudar o dano da sd com essas formulas como ficaria?
 
 
SD
 
 
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TARGETCASTERORTOPMOST, true)
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_DEATHDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MORTAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SUDDENDEATH)
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -50, -1, -80, 5, 35, 33, 7)


local condition = createConditionObject(CONDITION_CURSED)
setConditionParam(condition, CONDITION_PARAM_DELAYED, 1)
addDamageCondition(condition, 5, 1000, -250)
setCombatCondition(combat, condition)

function onCastSpell(cid, var)
    return doCombat(cid, combat, var)
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.

  • Estatísticas dos Fóruns

    96844
    Tópicos
    519599
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo