Skip to content

Instantly share code, notes, and snippets.

@Tofame
Forked from Codinablack/killDeathRatio.lua
Last active September 20, 2022 10:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Tofame/5acde4e6fae3f39285e05e4ad9876aba to your computer and use it in GitHub Desktop.
Save Tofame/5acde4e6fae3f39285e05e4ad9876aba to your computer and use it in GitHub Desktop.
-- made by Codinablack, edited by Tofame.
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")
return true
end
login:register()
local kill = CreatureEvent("KDR_KILL_EVENT")
function kill.onKill(player, target)
if not player:isPlayer() then
return true
end
if not target:isPlayer() then
return true
end
db.query("UPDATE `players` SET `frags` = `frags` + 1 WHERE id = " .. player:getGuid() .. ";")
db.query("UPDATE `players` SET `deaths` = `deaths` + 1 WHERE id = " .. target:getGuid() .. ";")
player:say('+1 Kill Point!', TALKTYPE_ORANGE_1)
target:say('+1 Death Point!', TALKTYPE_ORANGE_1)
target:unregisterEvent("KDR_REGISTER_EVENT")
target:unregisterEvent("KDR_KILL_EVENT")
return true
end
kill: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