Ir para conteúdo

Matar Player Tirar Coração, Anunciar No Default


Killua

Posts Recomendados

Eu vejo muitas pessoas pedindo esses dois scripts, então eu fiz eles e vou postar para facilitar a vida de todo mundo =)

 

Creditos: Killua, antigo amoeba13

 

Matar player e arrancar o coração:

 

 

 

No creaturescripts/scripts cria o arquivo playerheart.lua e e coloca:

function onDeath(cid, corpse, killer)
    if isPlayer(cid) and isPlayer(killer[1]) then
        local aditi = doPlayerAddItem(killer[1], 5943, 1)
        doSetItemSpecialDescription(aditi, "Este coracao pertencia a "..getCreatureName(cid).." que morreu no level "..getPlayerLevel(cid).." e foi arrancado por "..getCreatureName(killer[1]).."")
    end
    return true
end

No creaturescripts.xlm vc coloca essa tag:

<event type="death" name="PlayerHeart" event="script" value="playerheart.lua"/>

 

 

 

Matar o player e avisar para todo mundo no Default:

 

No creaturescripts/scripts vc cria deathcast.lua e coloca


function onKill(cid, target, lastHit)

if isPlayer(target) then
    doBroadcastMessage("O jogador ".. getCreatureName(cid) .." [".. getPlayerLevel(cid) .."]  acabou de matar o noob " .. getCreatureName(target) .. " [".. getPlayerLevel(target) .."]!", MESSAGE_STATUS_CONSOLE_ORANGE) 
end
return TRUE
end

No creaturescripts.xml vc coloca essa tag:

<event type="kill" name="BroadDeath" event="script" value="deathcast.lua"/>

 

 

Espero que seja util, ate a proxima

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

Ótimo script, usarei em meu servidor. Mas teria como você colocar pra ter uma determinada chance de dropar o coração? Tipo 10%. E não toda vez que matar o player? De qualquer modo REP+.

Link para o comentário
Compartilhar em outros sites

Ótimo script, usarei em meu servidor. Mas teria como você colocar pra ter uma determinada chance de dropar o coração? Tipo 10%. E não toda vez que matar o player? De qualquer modo REP+.

 

Para ter uma chance usa assim:

 

 

@@EDIT -- script funcionando se encontra no post de baixo.

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

Usei da forma que falou, porém não funcionou. Coloquei chance 100% e mesmo assim não dropou. E não dá erro algum na distro.

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

Usei da forma que falou, porém não funcionou. Coloquei chance 100% e mesmo assim não dropou. E não dá erro algum na distro.

 

 

Amigo desculpa a demora.

 

Usa desse jeito aqui. eu testei e funcionou.


function onDeath(cid, corpse, killer)
    local chance = 60 -- chance em %
    if isPlayer(cid) and isPlayer(killer[1]) then
        local op = math.random(1, 100)
        if op <= chance and op > 1 then
        local aditi = doPlayerAddItem(killer[1], 5943, 1)
        doSetItemSpecialDescription(aditi, "Este coracao pertencia a "..getCreatureName(cid).." que morreu no level "..getPlayerLevel(cid).." e foi arrancado por "..getCreatureName(killer[1]).."")
    end
end
return true
end
Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Teria como ele só anunciar no Default caso o player arranca-se o coração?

Por exemplo, eu uso o script com a porcentagem, daí caso algum jogador arranque o coração do outro, apareça no default (Mas apenas se arrancar!)

 

O jogador ... matou ... e arrancou seu coração!

Link para o comentário
Compartilhar em outros sites

Teria como ele só anunciar no Default caso o player arranca-se o coração?

Por exemplo, eu uso o script com a porcentagem, daí caso algum jogador arranque o coração do outro, apareça no default (Mas apenas se arrancar!)

 

O jogador ... matou ... e arrancou seu coração!

 

Aparecer para o server inteiro? Se for:

function onDeath(cid, corpse, killer)
local chance = 60 -- chance em %
if isPlayer(cid) and isPlayer(killer[1]) then
local op = math.random(1, 100)
if op <= chance and op > 1 then
local aditi = doPlayerAddItem(killer[1], 5943, 1)
doSetItemSpecialDescription(aditi, "Este coracao pertencia a "..getCreatureName(cid).." que morreu no level "..getPlayerLevel(cid).." e foi arrancado por "..getCreatureName(killer[1]).."")
doBroadcastMessage("O jogador ".. getCreatureName(cid) .." [".. getPlayerLevel(cid) .."] matou o " .. getCreatureName(target) .. " [".. getPlayerLevel(target) .."] e arrancou seu coracao!", MESSAGE_STATUS_CONSOLE_ORANGE)
end
end
return true
end
Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

@amoeba13 Não Funcionou, eu use aquele que esta no Inicio, mas não tinha funcionado e agora tenho este que vc "Modificou" mas mesmo assim eu deixo 100% para dropar Heart, não dropa, e Script

Script:

 

function onDeath(cid, corpse, killer)
local chance = 60 -- chance em %
if isPlayer(cid) and isPlayer(killer[1]) then
local op = math.random(1, 100)
if op <= chance and op > 1 then
local aditi = doPlayerAddItem(killer[1], 5943, 1)
doSetItemSpecialDescription(aditi, "Este coracao pertencia a "..getCreatureName(cid).." que morreu no level "..getPlayerLevel(cid).." e foi arrancado por "..getCreatureName(killer[1]).."")
doBroadcastMessage("O jogador ".. getCreatureName(cid) .." [".. getPlayerLevel(cid) ..] matou o " .. getCreatureName(target) .. " [".. getPlayerLevel(target) ..] e arrancou seu coracao!", MESSAGE_STATUS_CONSOLE_ORANGE)
end
end
return true
end

 

Da Erro na Distro, entao eu usei o 1º mas mesmo assim não dropa.. Pode me Ajudar ?

Link para o comentário
Compartilhar em outros sites

Os scripts sao feitos pra tfs 0.3.6 e 0.4 e funcionam perfeitamente. Se seu server nao for um desses, nao vai funcionar mesmo.

 

Como eu vou saber se eles são isso /\

o meu é Narutibia 8.54 (é oq eu sei) por me ajudar ? :c

Link para o comentário
Compartilhar em outros sites

 

Os scripts sao feitos pra tfs 0.3.6 e 0.4 e funcionam perfeitamente. Se seu server nao for um desses, nao vai funcionar mesmo.

 

Como eu vou saber se eles são isso /\

o meu é Narutibia 8.54 (é oq eu sei) por me ajudar ? :c

 

 

 

Eu nunca mexi com servidores derivados, entao nao sei se tem alguma diferenca. Esses scripts foram feitos pra tibia normal, se vc quer adaptar pra um servidor derivado, eh melhor pedir pra alguem que saiba mexer com eles.

 

Abracos.

Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...