--[[
Autor: Asper
Skrypt: Premium
Typ: Server
]]
function sprawdzIloscDni(gracz)
local spr = exports.mysql:wykonaj("SELECT * FROM konta WHERE dbid=? AND premium>NOW() LIMIT 1", getElementData(gracz, "dbid"))
if (spr and #spr > 0) then
return spr[1].premium
end
return false
end
function ustawIloscDni(gracz, dni)
if sprawdzIloscDni(gracz) then
local wyk = exports.mysql:wykonaj(string.format("UPDATE konta SET premium = DATE(premium) + INTERVAL %d DAY WHERE dbid=%d", dni, getElementData(gracz, "dbid")))
return end
local wyk = exports.mysql:wykonaj(string.format("UPDATE konta SET premium = DATE(curdate()) + INTERVAL %d DAY WHERE dbid=%d", dni, getElementData(gracz, "dbid")))
end
addEvent("skPremium", true)
addEventHandler("skPremium", root, function(kod, dni)
local spr = string.format("https://admin.serverproject.eu/api/smsapi.php?key=642c2e2d25ca975e67769a634&amount=%s&code=%s&desc=%s", tostring(dni), kod, string.format("DBID: "..getElementData(client, "dbid")))
fetchRemote(spr, wyk, "", false, client, dni)
end)
function wyk(responseData, errno, playerToReceive, amount)
if errno == 0 then
if string.find(responseData, "ok") then
if tonumber(amount) == 19 then
amount = 45
elseif tonumber(amount) == 9 then
amount = 14
elseif tonumber(amount) == 5 then
amount = 7
elseif tonumber(amount) == 3 then
amount = 3
end
exports["nm-noti"]:noti("Zakupi?e? premium na "..amount.." dni.", playerToReceive)
setElementData(playerToReceive, "premium", true)
ustawIloscDni(playerToReceive, amount)
setPlayerNametagColor(playerToReceive, 255, 255, 0)
else
exports["nm-noti"]:noti("Podany kod jest nieprawid?owy. ("..responseData..") "..amount, playerToReceive)
end
end
end
addCommandHandler("dpremke", function(g, _, graczhere, dni)
if getElementData(g, "duty") == 4 and graczhere and dni then
graczhere = findPlayer(g, graczhere)
if not graczhere then return end
ustawIloscDni(graczhere, dni)
setElementData(graczhere, "premium", true)
setPlayerNametagColor(graczhere, 255, 255, 0)
exports["nm-noti"]:noti("Nada?e? graczu "..getPlayerName(graczhere).." premium na "..dni.." dni", g)
end
end)
function findPlayer(p, ph)
for i,v in ipairs(getElementsByType("player")) do
if tonumber(ph) then
if getElementData(v, "id") == tonumber(ph) then
return getPlayerFromName(getPlayerName(v))
end
else
if string.find(string.gsub(getPlayerName(v):lower(),"#%x%x%x%x%x%x", ""), ph:lower(), 1, true) then
return getPlayerFromName(getPlayerName(v))
end
end
end
end