Skip to content

Instantly share code, notes, and snippets.

@Codinablack
Last active September 20, 2022 10:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save Codinablack/76e4de6025ef7d181b066a043bc2e60c to your computer and use it in GitHub Desktop.
Save Codinablack/76e4de6025ef7d181b066a043bc2e60c to your computer and use it in GitHub Desktop.
function Player.getTotalSavedKills(self)
local Info = db.storeQuery("SELECT `frags` FROM `players` WHERE `id` = " .. self:getGuid())
local frags = result.getDataInt(Info, 'frags')
result.free(Info)
return frags
end
function Player.getTotalSavedDeaths(self)
local Info = db.storeQuery("SELECT `deaths` FROM `players` WHERE `id` = " .. self:getGuid())
local deaths = result.getDataInt(Info, 'deaths')
result.free(Info)
return deaths
end
local login = CreatureEvent("KDR_REGISTER_EVENT")
function login.onLogin(player)
player:registerEvent("KDR_KILL_EVENT")
player:registerEvent("KDR_DEATH_EVENT")
return true
end
login:register()
local kill = CreatureEvent("KDR_KILL_EVENT")
function kill.onKill(player)
--if not target:isPlayer() then
if not player:isPlayer() then
return true
end
db.query("UPDATE `players` SET `frags` = `frags` + 1 WHERE id = " .. player:getGuid() .. ";")
player:say('+1 Kill Point!', TALKTYPE_ORANGE_1)
return true
end
kill:register()
local death = CreatureEvent("KDR_DEATH_EVENT")
function death.onDeath(player)
if not player:isPlayer() then
return true
end
db.query("UPDATE `players` SET `deaths` = `deaths` + 1 WHERE id = " .. player:getGuid() .. ";")
player:say('+1 Death Point!', TALKTYPE_ORANGE_1)
player:unregisterEvent("KDR_REGISTER_EVENT")
player:unregisterEvent("KDR_KILL_EVENT")
player:unregisterEvent("KDR_DEATH_EVENT")
return true
end
death:register()
local look = EventCallback
look.onLook = function(self, player, position, distance, description)
if not player:isPlayer() then
return description
end
local kills = player:getTotalSavedKills()
local deaths = player:getTotalSavedDeaths()
local kdr
if deaths == 0 then
kdr = kills
description = string.format("%s\nThis player killed %s and died %s times. Their KDR is %s", description, kills, deaths, kdr)
return description
end
kdr = kills/deaths
description = string.format("%s\nThis player killed %s and died %s times. Their KDR is %s", description, kills, deaths, kdr)
return description
end
look:register(5)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment