1
0
Fork 0
forked from Simnation/Main
This commit is contained in:
Max 2025-06-27 11:39:45 +02:00
parent 8fd0da7d21
commit d620dd2499
2 changed files with 24 additions and 33 deletions

View file

@ -1,20 +1,27 @@
local hasUsedRelog = false
RegisterCommand("relog", function() RegisterCommand("relog", function()
local coords = GetEntityCoords(PlayerPedId()) local coords = GetEntityCoords(PlayerPedId())
TriggerServerEvent("relog:saveCoords", coords) local heading = GetEntityHeading(PlayerPedId())
hasUsedRelog = true
TriggerServerEvent("duckrelog:saveCoords", {
x = coords.x,
y = coords.y,
z = coords.z,
w = heading
})
ShutdownLoadingScreenNui() ShutdownLoadingScreenNui()
TriggerEvent("um-multichar:client:chooseChar") TriggerEvent("um-multichar:client:chooseChar")
end, false) end, false)
-- Wenn Spieler geladen wurde, Position vom Server anfordern
RegisterNetEvent('QBCore:Client:OnPlayerLoaded', function() RegisterNetEvent('QBCore:Client:OnPlayerLoaded', function()
TriggerServerEvent("relog:checkLastPosition") TriggerServerEvent("duckrelog:requestCoords")
end) end)
RegisterNetEvent("relog:teleportPlayer", function(pos) -- Spieler teleportieren
RegisterNetEvent("duckrelog:setCoords", function(pos)
if pos then if pos then
local ped = PlayerPedId() local ped = PlayerPedId()
RequestCollisionAtCoord(pos.x, pos.y, pos.z) RequestCollisionAtCoord(pos.x, pos.y, pos.z)

View file

@ -1,38 +1,22 @@
local QBCore = exports['qb-core']:GetCoreObject() local QBCore = exports['qb-core']:GetCoreObject()
local LastPositions = {}
RegisterServerEvent("relog:saveCoords", function(coords) RegisterServerEvent("duckrelog:saveCoords", function(pos)
local src = source local src = source
local Player = QBCore.Functions.GetPlayer(src) LastPositions[src] = pos
if not Player then return end
local data = { -- Spieler korrekt abmelden
x = coords.x,
y = coords.y,
z = coords.z,
w = GetEntityHeading(GetPlayerPed(src))
}
MySQL.update('UPDATE players SET last_position = ? WHERE citizenid = ?', {
json.encode(data),
Player.PlayerData.citizenid
})
QBCore.Player.Logout(src) QBCore.Player.Logout(src)
-- RoutingBucket auf 0 setzen
SetPlayerRoutingBucket(src, 0) SetPlayerRoutingBucket(src, 0)
end) end)
RegisterServerEvent("relog:checkLastPosition", function() RegisterServerEvent("duckrelog:requestCoords", function()
local src = source local src = source
local Player = QBCore.Functions.GetPlayer(src) local pos = LastPositions[src]
if not Player then return end if pos then
TriggerClientEvent("duckrelog:setCoords", src, pos)
local result = MySQL.single.await('SELECT last_position FROM players WHERE citizenid = ?', { LastPositions[src] = nil -- nach der Verwendung löschen
Player.PlayerData.citizenid
})
if result and result.last_position then
local pos = json.decode(result.last_position)
TriggerClientEvent("relog:teleportPlayer", src, pos)
end end
end) end)