From ebc2cb73000f5191b094279f120a2bb2ebb7e338 Mon Sep 17 00:00:00 2001 From: HebiKotei Date: Sun, 23 Jul 2023 00:57:00 +0100 Subject: [PATCH] tweak(respawnAtHospital): Adding closest bed check --- server/main.lua | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/server/main.lua b/server/main.lua index a0b1b3b..dec772d 100644 --- a/server/main.lua +++ b/server/main.lua @@ -22,7 +22,7 @@ end ---@param player Player ---@param bedsKey "beds"|"jailbeds" ---@param i integer ----@param bed Bed +---@param bed table Bed local function respawnAtBed(player, bedsKey, i, bed) TriggerClientEvent('hospital:client:SendToBed', player.PlayerData.source, i, bed, true) TriggerClientEvent('hospital:client:SetBed', -1, bedsKey, i, true) @@ -36,13 +36,14 @@ end ---@param bedsKey "beds"|"jailbeds" local function respawnAtHospital(player, bedsKey) local beds = Config.Locations[bedsKey] + local closest, bedIndex = nil, 0 for i, bed in pairs(beds) do - if not bed.taken then - respawnAtBed(player, bedsKey, i, bed) - return + if (not closest or closest > #(GetEntityCoords(cache.ped) - bed.coords)) and not bed.taken then + closest = #(GetEntityCoords(cache.ped) - bed.coords) + bedIndex = i end end - respawnAtBed(player, bedsKey) + respawnAtBed(player, bedsKey, bedIndex, beds[bedIndex]) end RegisterNetEvent('hospital:server:RespawnAtHospital', function()