[Pedido] Potion

Jefferson14789
em Scripts

Jefferson14789

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/02/11Posts: 30

Pessoal, to querendo uma potion que regenere em porcentagem da vida maxima, 30% no caso eu quero, no caso se tenho 2000 de hp, 30% de 2000 = 600 , no caso ia gerenerar 30% de hp e mp em 30%.

REP+

Antharaz

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 05/01/08Posts: 153Char no Tibia: nenhum

Ta ae o lua do action:

local perc = 30

function onUse(cid, item, fromPosition, itemEx, toPosition)
	local vida = getCreatureHealth(cid)
	local vmax = getCreatureMaxHealth(cid) - (vida*((perc+1)/100))
	doCreatureAddHealth(cid, vmax >= 0 and (vida*(perc/100)) or 0)
	return true
end

E agora a tag:

<action itemid="2229" script="potion.lua"/>

Atenciosamente,

Antharaz

HwmBLEb.jpg

luizmachado1

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 08/10/15Posts: 103

Removido

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

@@Antharaz

 

Ele queria que regenerasse 30% da vida maxima e não da vida atual... E também não tem necessidade de checar se ele esta com a vida cheia, então vc poderia fazer só assim:

 

doCreatureAddHealth(cid, getCreatureMaxHealth(cid) * 0.3)

 

Se por acaso a vida atual + 30% da vida maxima ultrapasse a vida maxima, somente a diferença (maxima - atual) sera adicionada.

 

E vc tbm esqueceu de adicionar a mana q ele pediu :)

luizmachado1

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 08/10/15Posts: 103

DoCreatureAddMAna(cid, getcreatureMaxMana(cid) *3.0)

 

 

Assim quer você quiz dizer?

Antharaz

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 05/01/08Posts: 153Char no Tibia: nenhum

@@Antharaz

 

Ele queria que regenerasse 30% da vida maxima e não da vida atual... E também não tem necessidade de checar se ele esta com a vida cheia, então vc poderia fazer só assim:

 

doCreatureAddHealth(cid, getCreatureMaxHealth(cid) * 0.3)

 

Além disso, perc+1/100 é 0.31 e não 1.30 rs

 

Se por acaso a vida atual + 30% da vida maxima ultrapasse a vida maxima, somente a diferença (maxima - atual) sera adicionada.

 

E vc tbm esqueceu de adicionar a mana q ele pediu :)

 

@@Killua

 

Não precisava dessa risada ironica ae na minha conta né... eu deixei ((perc+1)/100), logo ele somaria 1 para depois dividir por 100, o que daria 1.3...

 

Em relação a vida máxima e a mana eu realmente não vi :x faz anos que não mecho com script e programação, então achei também que deveria verificar a vida máxima também...

 

Claro, sempre respeitarei o pai dos scripters, grande Killua u.u lembro de ti anos atras quando comecei no forum *-* só não gostei da sua risada "rs" mesmo u.u mas te amo msm assim

 

 

 

 

@@Jefferson14789

 

Novo script considerando a vida max e a mana max:

local perc = 30

function onUse(cid, item, fromPosition, itemEx, toPosition)
	doCreatureAddHealth(cid, getCreatureMaxHealth(cid)*(perc/100))
	doPlayerAddMana(cid, getPlayerMaxMana(cid)*(perc/100))
	return true
end

Atenciosamente,

Antharaz

HwmBLEb.jpg

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

De jeito nenhum cara, nao foi risada ironica... Eu sempre procuro ajudar quem escreve scripts :)

 

Mas ele executa primeiro oq esta no parenteses, então fica assim:

 

(30+1)/100 = 31/100 = 0.31

 

Pra chegar em 1.30 tinha que ser (perc/100)+1

Antharaz

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 05/01/08Posts: 153Char no Tibia: nenhum

De jeito nenhum cara, nao foi risada ironica... Eu sempre procuro ajudar quem escreve scripts :)

 

Mas ele executa primeiro oq esta no parenteses, então fica assim:

 

(30+1)/100 = 31/100 = 0.31

 

Pra chegar em 1.30 tinha que ser (perc/100)+1

 

 

Caralhooooo.... me senti um jumento e concordo com sua risada agora... .-. ashuhuashuas se não foi deveria ter sido porque esse erro foi banal, não acredito que errei isto... :x mil perdões mestre u.u não está mais aqui quem postou aquela atrocidade <3 te amo

Atenciosamente,

Antharaz

HwmBLEb.jpg

SkyLigh

User X
avatar
Lorde
Lorde

INFOS

Grupo: LordeRegistrado: 23/07/12Posts: 2183Char no Tibia: Kissy

Tópico movido para dúvidas / pedidos resolvidos.

Att,
Kissy