Ir para conteúdo
  • Cadastre-se

Runa que heala vida e mana ao mesmo tempo


Posts Recomendados

Olá,

gostaria de pedir a ajuda de vocês para criar uma rune que heala vida e mana

porem que seja diferente das normais.

Para sorcerer e druid ela heala mais mana do que a vida.

Já para knight e paladin ela heala mais vida do que a mana.

 

Tenho um server como exemplo

genium.servegame.com

 

A rune la chama : MultiHeal Rune

 

Fico esperando.

Obrigado

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
local minmanasorc = 400
local maxmanasorc = 1500
local minmanakina = 200
local maxmanakina = 600

if getPlayerVoc(cid) == 1 or getPlayerVoc(cid) == 5 or getPlayerVoc(cid) == 2 or getPlayerVoc(cid) == 6
doPlayeraddMana = math.random (minmanasorc, maxmanasorc)
doPlayeraddHealth = math.random (minmanakina, maxmanakina)
else
if  getPlayerVoc(cid) == 3 or getPlayerVoc(cid) == 7 or getPlayerVoc(cid) == 4 or getPlayerVoc(cid) == 8
doPlayeraddHealth = math.random (minmanasorc, maxmanasorc)
doPlayeraddMana = math.random (minmanakina, maxmanakina)
return true
end

os comandos aí estão errados porque fiz tudo de cabeça.. dps te ajudo melhor mas isso foi só pra vc ter uma noção doque deve fazer. Boa sorte

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
local minmanasorc = 400
local maxmanasorc = 1500
local minmanakina = 200
local maxmanakina = 600

if getPlayerVoc(cid) == 1 or getPlayerVoc(cid) == 5 or getPlayerVoc(cid) == 2 or getPlayerVoc(cid) == 6
doPlayeraddMana = math.random (minmanasorc, maxmanasorc)
doPlayeraddHealth = math.random (minmanakina, maxmanakina)
else
if  getPlayerVoc(cid) == 3 or getPlayerVoc(cid) == 7 or getPlayerVoc(cid) == 4 or getPlayerVoc(cid) == 8
doPlayeraddHealth = math.random (minmanasorc, maxmanasorc)
doPlayeraddMana = math.random (minmanakina, maxmanakina)
return true
end

os comandos aí estão errados porque fiz tudo de cabeça.. dps te ajudo melhor mas isso foi só pra vc ter uma noção doque deve fazer. Boa sorte

 

Valeu, mais eu quero por formula, pois ai quando almenta o level almentaria mais o healing :)

Mais mesmo assim valeu :)

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites

é bem fácil cara, só trocar os locais minmana e maxmana por getPlayerLevel(cid)*X+ getPlayerMagicLevel(cid)*Y e ir brincando. Lembrando q esses comandos são apenas exemplos e não são os comandos certos de verdade.

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

é bem fácil cara, só trocar os locais minmana e maxmana por getPlayerLevel(cid)*X+ getPlayerMagicLevel(cid)*Y e ir brincando. Lembrando q esses comandos são apenas exemplos e não são os comandos certos de verdade.

Cara, vou te fala a verdade... Eu sou mt noob com scripts. Tem como fazer o script pra mim já tudo certo só pra mim colocar depois a formula??

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites

dsclp a demora, taí seu script. A formula atual é um valor random entre level+ml e level+ml*X, edite a vontade

function onUse(cid, item, fromPosition, itemEx, toPosition)
local ml = getPlayerMagLevel(cid)
local lvl = getPlayerLevel(cid)
 
 -------edite a formula aqui---------
 formulafor = math.random(((lvl+ml)*5)-(lvl+ml)) --formula forte, vai ser a mesma pra Vida de Knight e Mana de Sorc/Druid
 formulafra = math.random(((lvl+ml)*2)-(lvl+ml)) --formula fraca, pra mana de knight e vida de sorc/druid
 formulamed = math.random(((lvl+ml)*3)-(lvl+ml)) --formula média para paladins que usam tanto vida quanto mana
 -------------------------------------------- 
 
 
 if itemEx.itemid == 1 and isPlayer(itemEx.uid) == TRUE then
 if isSorcerer(itemEx.uid) or isDruid(itemEx.uid) then
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulafor)
 doCreatureAddHealth(itemEx.uid,formulafra)
 elseif isKnight(itemEx.uid) then 
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulafra)
 doCreatureAddHealth(itemEx.uid,formulafor)
 elseif isPaladin(itemEx.uid) then
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulamed)
 doCreatureAddHealth(itemEx.uid,formulamed)
 end
 
   if item.type > 1 then
 doChangeTypeItem(item.uid,item.type-1)
 else
 doRemoveItem(item.uid,1)
 end
 
 end
 
if isPlayer(itemEx.uid) == FALSE then
doPlayerSendCancel(cid,"You can only use this rune in you or in players.")
doSendMagicEffect(getThingPos(item.uid), 2)
	end 
 return 1
 end
 
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

 

dsclp a demora, taí seu script. A formula atual é um valor random entre level+ml e level+ml*X, edite a vontade

function onUse(cid, item, fromPosition, itemEx, toPosition)
local ml = getPlayerMagLevel(cid)
local lvl = getPlayerLevel(cid)
 
 -------edite a formula aqui---------
 formulafor = math.random(((lvl+ml)*5)-(lvl+ml)) --formula forte, vai ser a mesma pra Vida de Knight e Mana de Sorc/Druid
 formulafra = math.random(((lvl+ml)*2)-(lvl+ml)) --formula fraca, pra mana de knight e vida de sorc/druid
 formulamed = math.random(((lvl+ml)*3)-(lvl+ml)) --formula média para paladins que usam tanto vida quanto mana
 -------------------------------------------- 
 
 
 if itemEx.itemid == 1 and isPlayer(itemEx.uid) == TRUE then
 if isSorcerer(itemEx.uid) or isDruid(itemEx.uid) then
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulafor)
 doCreatureAddHealth(itemEx.uid,formulafra)
 elseif isKnight(itemEx.uid) then 
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulafra)
 doCreatureAddHealth(itemEx.uid,formulafor)
 elseif isPaladin(itemEx.uid) then
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulamed)
 doCreatureAddHealth(itemEx.uid,formulamed)
 end
 
   if item.type > 1 then
 doChangeTypeItem(item.uid,item.type-1)
 else
 doRemoveItem(item.uid,1)
 end
 
 end
 
if isPlayer(itemEx.uid) == FALSE then
doPlayerSendCancel(cid,"You can only use this rune in you or in players.")
doSendMagicEffect(getThingPos(item.uid), 2)
	end 
 return 1
 end
 

Valeu :) Tem como tu fazer só mais um favor pra mim? Coloca ela só pra x resets usar ?? o Id da Storage 85987. Obrigado

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
  • 2 weeks later...

só li hoje isso, perdão. Não sei como funciona o seu sistema de reset, a cada reset ele adiciona +1 no valor do storage? Se for isso é só usar

function onUse(cid, item, fromPosition, itemEx, toPosition)
local ml = getPlayerMagLevel(cid)
local lvl = getPlayerLevel(cid)


 -------edite a formula aqui---------
 formulafor = math.random(((lvl+ml)*5)-(lvl+ml)) --formula forte, vai ser a mesma pra Vida de Knight e Mana de Sorc/Druid
 formulafra = math.random(((lvl+ml)*2)-(lvl+ml)) --formula fraca, pra mana de knight e vida de sorc/druid
 formulamed = math.random(((lvl+ml)*3)-(lvl+ml)) --formula média para paladins que usam tanto vida quanto mana
 -------------------------------------------- 


local storage = getPlayerStorageValue(cid,85987) --- digite o storage aqui


 if itemEx.itemid == 1 and isPlayer(itemEx.uid) == TRUE and storage == 1 then --checa o valor do storage (no caso tem que ser igual a 1 pra usar a pot
 if isSorcerer(itemEx.uid) or isDruid(itemEx.uid) then
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulafor)
 doCreatureAddHealth(itemEx.uid,formulafra)
 elseif isKnight(itemEx.uid) then 
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulafra)
 doCreatureAddHealth(itemEx.uid,formulafor)
 elseif isPaladin(itemEx.uid) then
doSendMagicEffect(getThingPos(itemEx.uid), 1)
 doPlayerAddMana(itemEx.uid,formulamed)
 doCreatureAddHealth(itemEx.uid,formulamed)
 end


   if item.type > 1 then
 doChangeTypeItem(item.uid,item.type-1)
 else
 doRemoveItem(item.uid,1)
 end


 end


 if storage < 1 then --se o storage for menor que 1 ele vai dar essa mensagem de erro
doPlayerSendCancel(cid,"You can only use this potion if you have already reseted.")
doSendMagicEffect(getThingPos(item.uid), 2)
end 


if isPlayer(itemEx.uid) == FALSE then
doPlayerSendCancel(cid,"You can only use this rune in you or in players.")
doSendMagicEffect(getThingPos(item.uid), 2)
end 
 return 1
 end

Perceba que adicionei duas coisas novas no script. Se o seu sistema de reset for daqueles que a cada vez que o player reseta adiciona +1 no valor do storage (EX: Começa 0, dai o player reseta e vira 1, dps reseta dnv e se torna 2 e assim por diante) é só colocar na mensagem de erro caso for menor que a quantidade de resets que você queira e ali em cima no if storage == 1 vc muda pro valor de quantos resets o player deve ter pra usar aquilo. Qualquer dúvida me manda PM ou posta aqui ou ambos. uhauhauh

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

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo