Anunciador De Quem Morre E Quem Matou

951357
Por 951357
em Lixeira Pública

951357

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 25/05/07Posts: 53

Olá XTibianos,

 

Basicamente é isso: Eu vi em um OT um script muito legal.

 

Se o player morrer automaticamente é enviada uma mensagem no BROADCAST para todos os jogadores dizendo quem tinha morrido e quem matou.

O sistema funciona tanto para mortes PvM(Player versus Monster) quanto para PvP (Player versus Player).

 

Vou dar dois exemplos:

 

Juanez tacou uma SD em Pedro e Pedro morreu.

A seguinte mensagem é exibida:

Juanez matou Pedro.

 

Outro exemplo:

 

Laurindo estava caçando Dragons quando de repente ele morre.

A seguinte mensagem é exibida.

Dragon matou Laurindo.

 

 

Me ajudem por favor. =D

Agradeço desde já.





Atenciosamente,
Aman Kartholic.

Kydrai

"Keep Your Mind Wide Open"
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 21/08/06Posts: 250

Poderia falar seu server neh.

 

Testei com monster, falto com player.

No TFS 0.3.4(Crying Damson) faz assim, vai em data\creaturescripts\scripts\playerdeath.lua

 

Depois de:

	if(lastHitKiller ~= FALSE) then
	if(isPlayer(lastHitKiller) == TRUE) then
		hitKillerName = getPlayerGUID(lastHitKiller)
	else
		hitKillerName = getCreatureName(lastHitKiller)
	end

 

Adiciona:

		doBroadcastMessage(" "..getPlayerName(cid).." has been killed by "..hitKillerName..".")

 

Fica assim:

	if(lastHitKiller ~= FALSE) then
	if(isPlayer(lastHitKiller) == TRUE) then
		hitKillerName = getPlayerGUID(lastHitKiller)
	else
		hitKillerName = getCreatureName(lastHitKiller)
	end

	doBroadcastMessage(" "..getPlayerName(cid).." has been killed by "..hitKillerName..".")

 

Qualquer coisa, se seu OT for outro ve se tem a playerdeath.lua ou uma função parecida e avisa aqui.

~ Kydrai
Programador / Scripter

 

sign.png

Xibata

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/11/07Posts: 38

Eu tbm estava doido procurando este script

 

Ele é mto legal..


951357

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 25/05/07Posts: 53

@kydrai

 

Muito obrigado pelo script.

Desculpe-me por não ter postado a versão do meu servidor, porém, minha versão é justamente a do TFS 3.4 (Crying Damson).

 

O script funcionou corretamente em relação à PvM, porém, para que o funcionamento do script seja 100% devemos alterar a seguinte linha:

 

if(lastHitKiller ~= FALSE) then

if(isPlayer(lastHitKiller) == TRUE) then

hitKillerName = getPlayerGUID(lastHitKiller)

else

hitKillerName = getCreatureName(lastHitKiller)

end

 

doBroadcastMessage(""..getPlayerName(cid).." has been killed by "..hitKillerName..".")

 

Para:

 

if(lastHitKiller ~= FALSE) then

if(isPlayer(lastHitKiller) == TRUE) then

hitKillerName = getCreatureName(lastHitKiller)

end

 

doBroadcastMessage(""..getPlayerName(cid).." has been killed by "..hitKillerName..".")

 

Motivo da alteração

 

Da primeira maneira a linha que exibe hitKillerName = getPlayerGUID(lastHitKiller) faz com que ao envés de aparecer o nome do matador, apareça a ID do matador.

 

Altere que o sistema fica perfeito.

 

Obrigado kydrai por disponibilizá-lo para nós, da comunidade XTibiana.

 

Cya ~





Atenciosamente,
Aman Kartholic.

Merchant

ex-moderador :)
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/01/09Posts: 252

Pedido atendido, por tanto o tópico será fechado.

 

Abraços

E-mail: luizcavalcanti@live.com