local STORAGE_BASE = 75500
local records = {
["Dragon"] = {
records = {
{ count = 10, message = "You killed 10 dragons." },
{ count = 50, message = "You killed 50 dragons." },
{ count = 100, message = "You killed 100 dragons." },
{ count = 250, message = "You killed 250 dragons." },
{ count = 500, message = "You killed 500 dragons." },
{ count = 1000, message = "You killed 1000 dragons." },
{ count = 2000, message = "You killed 2000 dragons." },
{ count = 5000, message = "You killed 5000 dragons." },
{ count = 10000, message = "You killed 10000 dragons." },
{ count = 20000, message = "You killed 20000 dragons." },
{ count = 50000, message = "You killed 50000 dragons." },
{ count = 100000, message = "You killed 100000 dragons." },
{ count = 200000, message = "You killed 200000 dragons." },
{ count = 500000, message = "You killed 500000 dragons." },
{ count = 1000000, message = "You killed 1000000 dragons." },
{ count = 2000000, message = "You killed 2000000 dragons." },
{ count = 5000000, message = "You killed 5000000 dragons." },
{ count = 10000000, message = "You killed 10000000 dragons." },
{ count = 20000000, message = "You killed 20000000 dragons." },
{ count = 50000000, message = "You killed 50000000 dragons." }
}
},
["Demon"] = {
records = {
{ count = 10, message = "You killed 10 demons." },
{ count = 50, message = "You killed 50 demons." },
{ count = 100, message = "You killed 100 demons." },
{ count = 250, message = "You killed 250 demons." },
{ count = 500, message = "You killed 500 demons." },
{ count = 1000, message = "You killed 1000 demons." },
{ count = 2000, message = "You killed 2000 demons." },
{ count = 5000, message = "You killed 5000 demons." },
{ count = 10000, message = "You killed 10000 demons." },
{ count = 20000, message = "You killed 20000 demons." },
{ count = 50000, message = "You killed 50000 demons." },
{ count = 100000, message = "You killed 100000 demons." },
{ count = 200000, message = "You killed 200000 demons." },
{ count = 500000, message = "You killed 500000 demons." },
{ count = 1000000, message = "You killed 1000000 demons." },
{ count = 2000000, message = "You killed 2000000 demons." },
{ count = 5000000, message = "You killed 5000000 demons." },
{ count = 10000000, message = "You killed 10000000 demons." },
{ count = 20000000, message = "You killed 20000000 demons." },
{ count = 50000000, message = "You killed 50000000 demons." }
}
}
}
for name, record in pairs(records) do
local storage = 0
for i = 1, #name do
storage = storage + name:byte(i)
end
records[name].storage = STORAGE_BASE + storage
end
local creatureEvent = CreatureEvent("KillMonsterCounter")
function creatureEvent.onKill(player, monster)
local record = records[monster:getName()]
if not record then
return true
end
local storage = record.storage
local count = math.max(0, tonumber(player.storage[storage]) or 0)
for _, record in pairs(record.records) do
if count < record.count then
player.storage[storage] = count + 1
if count + 1 == record.count then
player:sendTextMessage(MESSAGE_EVENT_ADVANCE, record.message)
end
return true
end
end
return true
end
creatureEvent:register()
local creatureEvent = CreatureEvent("LoginMonsterCounter")
function creatureEvent.onLogin(player)
player:registerEvent("KillMonsterCounter")
return true
end
creatureEvent:register()