From 6b5ddc2c61c916c880fd459f7b0cda33f74a5ebe Mon Sep 17 00:00:00 2001 From: Zerio <54480523+Z3rio@users.noreply.github.com> Date: Sat, 27 Aug 2022 16:38:07 +0200 Subject: [PATCH 1/2] Add force deletion of characters --- server/player.lua | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/server/player.lua b/server/player.lua index 823f647..9851076 100644 --- a/server/player.lua +++ b/server/player.lua @@ -561,6 +561,26 @@ function QBCore.Player.DeleteCharacter(source, citizenid) end end +function QBCore.Player.ForceDeleteCharacter(citizenid) + local result = MySQL.scalar.await('SELECT license FROM players where citizenid = ?', { citizenid }) + if result then + local query = "DELETE FROM %s WHERE citizenid = ?" + local tableCount = #playertables + local queries = table.create(tableCount, 0) + + for i = 1, tableCount do + local v = playertables[i] + queries[i] = {query = query:format(v.table), values = { citizenid }} + end + + MySQL.transaction(queries, function(result2) + if result2 then + TriggerEvent('qb-log:server:CreateLog', 'joinleave', 'Character Force Deleted', 'red', 'Character **' .. citizenid .. '** got deleted') + end + end) + end +end + -- Inventory Backwards Compatibility function QBCore.Player.SaveInventory(source) From ad703290fd080e42ec95290056990acddf0a2ebd Mon Sep 17 00:00:00 2001 From: Zerio <54480523+Z3rio@users.noreply.github.com> Date: Mon, 29 Aug 2022 21:05:20 +0200 Subject: [PATCH 2/2] Update server/player.lua Co-authored-by: David Malchin --- server/player.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/server/player.lua b/server/player.lua index 9851076..13336cd 100644 --- a/server/player.lua +++ b/server/player.lua @@ -567,7 +567,11 @@ function QBCore.Player.ForceDeleteCharacter(citizenid) local query = "DELETE FROM %s WHERE citizenid = ?" local tableCount = #playertables local queries = table.create(tableCount, 0) + local Player = QBCore.Functions.GetPlayerByCitizenId(citizenid) + if Player then + DropPlayer(Player.PlayerData.source, "An admin deleted the character which you are currently using") + end for i = 1, tableCount do local v = playertables[i] queries[i] = {query = query:format(v.table), values = { citizenid }}