Баг, решите проблему

Ситуация : После написания в консоль god у нас включаеся god, и когда я падаю в faking (ragdoll) то у меня все работает(я не получаю дамаг когда я падаю с большой высоты), начинаю вставать и еще раз падаю с высоты той-же, я получаю дамаг и умераю. Короче слетает у меня год и прочее фигня… Вот исходный код:
Приклепленный файл
sv_fake.lua (45,4 КБ)

sv_fake_modified.lua (1,6 КБ)

  1. Добавил таблицу для хранения состояния god mode:

local playerGodMode = {}

Это нужно, чтобы сервер мог отслеживать, у кого из игроков включён god mode, и сохранять его состояние при переходе в ragdoll

  1. Обновил функцию для переключения god mode:

local function ToggleGodMode(ply)
if not IsValid(ply) then return end

if playerGodMode[ply] then
    ply:GodDisable()
    playerGodMode[ply] = nil
    ply:ChatPrint("God mode disabled.")
else
    ply:GodEnable()
    playerGodMode[ply] = true
    ply:ChatPrint("God mode enabled.")
end

end

Теперь сервер сохраняет или убирает состояние god в таблице playerGodMode, чтобы оно правильно сохранялось даже после выхода из ragdoll

  1. Добавил hook для сохранения состояния god при входе в ragdoll:

hook.Add(“PlayerEnteredRagdoll”, “SaveGodModeState”, function(ply)
if not IsValid(ply) then return end

if ply:IsGod() then
    playerGodMode[ply] = true
end

end)

Здесь сервер проверяет, включён ли god mode у игрока, и сохраняет это в таблице.

  1. Добавил hook для восстановления god после выхода из ragdoll:

hook.Add(“PlayerLeaveRagdoll”, “RestoreGodModeState”, function(ply)
if not IsValid(ply) then return end

if playerGodMode[ply] then
    ply:GodEnable()
end

end)

Когда игрок выходит из ragdoll, сервер проверяет таблицу playerGodMode и включает god обратно, если он был включён до этого

  1. Очистка данных при отключении игрока:

hook.Add(“PlayerDisconnected”, “CleanupGodModeData”, function(ply)
playerGodMode[ply] = nil
end)

Это нужно, чтобы сервер удалял информацию об игроке из таблицы playerGodMode, если он покидает сервер

Надеюсь помог :wink:

*Возможно код требует доработки, но у меня все работает

Такое чувство что писал ChatGPT.
Если ты действительно так пишешь код - мое уважение.

Но бля проверки год мода делается ply:HasGodMode()

Да, пишу сам, извиняюсь у меня в библиотеке функция проверки другая, исправлю