Heart System
Para quem não sabe, ele funciona assim:
Se (e somente se) um player matar outro ele ganhará um coração (usei como exemplo aquele coração de um Morgaroth que é geralmente usado) e nele virá escrito o seguinte:
Ex: Matei o player Rusherzin :c
Receberei o item assim:
You see the Rusherzin Heart's.
It weighs 35.00 oz.
Killed at Level 694 by Eu. (Unjustified)
Ok, agora que sabemos como funciona vamos ao script.
data/creaturescripts/
creaturescripts.xml
<event type="kill" name="Reward" event="script" value="reward.lua"/>
data/creaturescripts/scripts/
reward.lua
function onKill(cid, target)
if isPlayer(cid) and isPlayer(target) then
if getPlayerIp(cid) ~= getPlayerIp(target) then
local config = {
Kname = getPlayerName(cid),
Tname = getPlayerName(target),
Tlevel = getPlayerLevel(target),
}
local heart = doPlayerAddItem(cid, 5943, 1)
doItemSetAttribute(heart, "name", "" ..config.Tname.. " Heart's")
doItemSetAttribute(heart, "description", "Killed at Level "..config.Tlevel.." by "..config.Kname..". " .. (getCreatureSkullType(cid) <= SKULL_GREEN and "(Unjustified)" or "(Justified)"))
elseif getPlayerIp(cid) == getPlayerIp(target) then
doPlayerAddExp(cid, -10000)
end
end
return true
end
OBS: Se o player matar algum char dele (com mesmo ip), ele não receberá o coração e será punido com perda de Experience. Configurável nessa parte:
CRÉDITOS: RUSHERZIN
http://www.tibiaking.com/forum/user/17814-rusherzin/