diff --git a/qbcore.sql b/qbcore.sql index ee0d6d81a..f13934341 100644 --- a/qbcore.sql +++ b/qbcore.sql @@ -3,6 +3,7 @@ CREATE TABLE IF NOT EXISTS `players` ( `citizenid` varchar(50) NOT NULL, `cid` int(11) DEFAULT NULL, `license` varchar(255) NOT NULL, + `discord` varchar(255), `name` varchar(255) NOT NULL, `money` text NOT NULL, `charinfo` text DEFAULT NULL, diff --git a/server/player.lua b/server/player.lua index 4f73c0d30..ad37db70c 100644 --- a/server/player.lua +++ b/server/player.lua @@ -97,6 +97,12 @@ function QBCore.Player.CheckPlayerData(source, PlayerData) if source then PlayerData.source = source PlayerData.license = PlayerData.license or QBCore.Functions.GetIdentifier(source, 'license') + PlayerData.discord = PlayerData.discord + + if not PlayerData.discord and QBCore.Functions.GetIdentifier(source, 'discord') then + PlayerData.discord = QBCore.Functions.GetIdentifier(source, 'discord'):sub(9) + end + PlayerData.name = GetPlayerName(source) end @@ -487,10 +493,11 @@ function QBCore.Player.Save(source) local pcoords = GetEntityCoords(ped) local PlayerData = QBCore.Players[source].PlayerData if PlayerData then - MySQL.insert('INSERT INTO players (citizenid, cid, license, name, money, charinfo, job, gang, position, metadata) VALUES (:citizenid, :cid, :license, :name, :money, :charinfo, :job, :gang, :position, :metadata) ON DUPLICATE KEY UPDATE cid = :cid, name = :name, money = :money, charinfo = :charinfo, job = :job, gang = :gang, position = :position, metadata = :metadata', { + MySQL.insert('INSERT INTO players (citizenid, cid, license, discord, name, money, charinfo, job, gang, position, metadata) VALUES (:citizenid, :cid, :license, :discord, :name, :money, :charinfo, :job, :gang, :position, :metadata) ON DUPLICATE KEY UPDATE cid = :cid, name = :name, money = :money, charinfo = :charinfo, job = :job, gang = :gang, position = :position, metadata = :metadata', { citizenid = PlayerData.citizenid, cid = tonumber(PlayerData.cid), license = PlayerData.license, + discord = PlayerData.discord, name = PlayerData.name, money = json.encode(PlayerData.money), charinfo = json.encode(PlayerData.charinfo), @@ -508,10 +515,11 @@ end function QBCore.Player.SaveOffline(PlayerData) if PlayerData then - MySQL.insert('INSERT INTO players (citizenid, cid, license, name, money, charinfo, job, gang, position, metadata) VALUES (:citizenid, :cid, :license, :name, :money, :charinfo, :job, :gang, :position, :metadata) ON DUPLICATE KEY UPDATE cid = :cid, name = :name, money = :money, charinfo = :charinfo, job = :job, gang = :gang, position = :position, metadata = :metadata', { + MySQL.insert('INSERT INTO players (citizenid, cid, license, discord, name, money, charinfo, job, gang, position, metadata) VALUES (:citizenid, :cid, :license, :discord, :name, :money, :charinfo, :job, :gang, :position, :metadata) ON DUPLICATE KEY UPDATE cid = :cid, name = :name, money = :money, charinfo = :charinfo, job = :job, gang = :gang, position = :position, metadata = :metadata', { citizenid = PlayerData.citizenid, cid = tonumber(PlayerData.cid), license = PlayerData.license, + discord = PlayerData.discord, name = PlayerData.name, money = json.encode(PlayerData.money), charinfo = json.encode(PlayerData.charinfo),