Ir para conteúdo
  • 0

Como nao perder skill quando morre?


kakuzo12300

Pergunta

Fala ai galerinha do xtibia!!

 

Bom. To aqui pra tirar uma duvida:

 

> Tem como por uma proteçao nos skill? (sword, axe, distance, magic).

 

Explicaçao: Suponhamos que eu tivesse ml 36, e morresse, obviamente meu ml voltaria para o 35.

E se depois eu morresse dnv mais com o ml 35? obviamente voltaria para o 34.

Maiiis, Quero saber se tem algum script que faça o meu magic level (sword, axe etc), nunca chegar a "34", Ou seja nao perder magic level quando ele estiver no 35!

 

DEU PRA ENTENDER +/- ?

Se ainda nao entendeu deixei nos comentarios o porque!

 

> Se tiver como porfavor, poste o script aqui !

> Valende 3 REP+ pra quem me ajudar !

 

OBS: Sou iniciante entao; se estiver postando em area incorreta, sinta-se livre para mover, ou reportar! ^.~'

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

em creaturescripts crie um arquivo e cole isso nele:

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)
	 if getPlayerMagLevel(cid) == 35 then
	  for i = 1, 9 do
		doPlayerSetLossPercent(cid, i, 0)
	  end
	 end
end

 

tag:

 

<event type="death" name="SkillLoss" event="script" value="nome do arquivo.lua">

 

agora vá em login.lua e registre essa tag:

registerCreatureEvent(cid, "SkillLoss")

</event>

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu deu certinho!!

Ja ganho 1 REP+

 

Mais e como faço isso para skill de sword, axe, distance?

 

@TOPIC

 

Aaah... Malz pela demora, é porque a energia caiu aqui em casa :S

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

  • 0

Sword \/

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)
	 if getPlayerSwordLevel(cid) == 35 then
	  for i = 1, 9 do
		doPlayerSetLossPercent(cid, i, 0)
	  end
	 end
end

Axe

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)
	 if getPlayerAxeLevel(cid) == 35 then
	  for i = 1, 9 do
		doPlayerSetLossPercent(cid, i, 0)
	  end
	 end
end

 

Distance

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)
	 if getPlayerDistanceLevel(cid) == 35 then
	  for i = 1, 9 do
		doPlayerSetLossPercent(cid, i, 0)
	  end
	 end
end

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu mesmo!

 

MAIS TIPO...

Tenho uma pequena DUVIDA, tenho que criar 1 script.. registrar no login.lua... creatures.xml...

Para cada skill? (Distance, Sword, Axe)

Nao tem como botar tudo num script :?

Se nao puder tudo bem *só perguntei pra poupar espaço no login.lua* laugh.png

 

@TOPC

 

MANO DO CÊU!!!

 

Os corpos nao tao aparecendo no chao! *Que Isso?*

Algum erro meu?

Tipo, o player morre, aparece a mensagem "You are dead", Ele perde lvl, e tals, Mais o corpo dele nao aparece nao chao!

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

  • 0

se botar só 1 desse:

 

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)

if getPlayerDistanceLevel(cid) == 35 then

for i = 1, 9 do

doPlayerSetLossPercent(cid, i, 0)

end

end

end

ja da certo pois ali no

for i = 1, 9 do

ja ta incluido os skills

 

 

Abraço, Ajudei?? Rep+ Plx

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

  • 0

Opa!, Eu aqui de volta... e.e

 

Bom gente, como todos sabem minha duvida ainda nao foi sanada! ~.~'

Sera que alguem pode me responder, o porque dos CORPOS nao estar aparecendo no chao?

Tipo a gente mata o player, o nao aparece o CORPO para voçê abrir e pegar o loot...

 

+REP Pra quem me ajudar ^^

 

 

@TOPIC

 

Aah, e referente ao nosso amigo Lostzera!

Nao entendi muiito oque voçê falo... rsrs >> MALZ <<

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

  • 0

tenta assim...

 

function onDeath(cid, corpse, lastHitKiller, mostDamageKiller)
for i = 1, 7 do
if i == 7 then
   if getPlayerMagLevel(cid) >= 35 then
	  doPlayerSetLossPercent(cid, i, 0)
   end  
elseif getPlayerSkill(cid, i) >= 35 then
   doPlayerSetLossPercent(cid, i, 0)
end
end
return true
end

 

 

o corpo n tava aparencendo pq faltava return true no final...

 

 

ah e da proxima vez nao crie mais topicos pedindo para lhe ajudar em outros topicos, esse eh o 1* e ultimo aviso, como tu ms flo la tu sabia q era errado e fez ms assim! espere alguem lhe ajudar! lembre-se q ngm aki eh obrigado a lhe ajudar, todos fazem de bom grado!

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

  • 0

Valeu cara, o corpo ta aparecendo certinho, mas só tem 1 problema!

 

O magic level continua descendo!

Nao ta adiantando, eu criei um player pra test, e fui morrendo, o magic level ja esta 30!

 

Meu deus, Jaja vo desistir disso!

Agora, falando serio!

Quem me ajudar prometo que dou 5 REP+

 

 

 

@EDIT

 

Claro pow! Desculpa ter feito aquilo neh brow!confused.gif

Foi sem pensar haha! mdr.gif

Prometo que nao vai se repetir :DD

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

  • 0

hum pelo q tava vendo aki num script do vodkart, nao tem como cancelar a queda de uma skill soh... teria q cancelar de todas as skills e/ou ML... ;x

no caso, ou tu n deixa nunca perde ML e skills ou... sei la.. ;x

ae o script do vodkart..

http://www.xtibia.com/forum/topic/177979-level-protection/

Link para o comentário
Compartilhar em outros sites

  • 0

Huum.. De qualquer jeito valeu pelo esforço,

A todos que me deram ateçao!

 

Minha duvida ja foi SANADA!

Podem fechar o topico!

E mais uma vez, desculpa pelo outro topico :'(

Nao vai se repetir!! ^.~'

 

Assim que desblockear, Irei dar REP+ para voçê

Slicer ----------- NADA CONSTA -----------

 

 

PODEM FECHAR O TOPICO!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...