Death·Instalacja

Instalacja

DS-Death zastępuje domyślną pętlę śmierci/nokautu/reanimacji w twojej ambulance joba. Instalacja to w większości drag-and-drop, plus kilka drobnych poprawek w esx_ambulancejob albo qb-ambulancejob, żeby dotychczasowy przepływ reanimacji przekazywał sterowanie do DS-Death.

Pobierz

Pobierz skrypt z portal.cfx.re. Upewnij się, że jesteś zalogowany na koncie FiveM, z którego kupiłeś skrypt.

Rozpakuj

Rozpakuj archiwum i wrzuć powstały folder DS-Death w dowolne miejsce w folderze resources swojego serwera.

Zależności
DS-Death wymaga mysql-async. ESX i QBCore są obsługiwane i wykrywane automatycznie w trakcie działania.

Wykonaj SQL

Wykonaj plik SQL odpowiadający twojemu frameworkowi. Dodaje on jedną kolumnę ds_death, w której zapisywany jest stan śmierci między rozłączeniami.

ESX

Wykonaj INSTALLATION_GUIDE/ESX.sql w swojej bazie danych: dodaje ds_death TINYINT(1) do tabeli users.

QBCore

Wykonaj INSTALLATION_GUIDE/QBCore.sql w swojej bazie danych: dodaje ds_death TINYINT(1) do tabeli players.

Zainstaluj item do reanimacji

DS-Death potrzebuje itemu aidkit, żeby reanimować znokautowanych graczy. Dodaj go do inventory, którego używasz.

ESX (domyślne inventory)

Wykonaj INSTALLATION_GUIDE/INSTALL_ITEM/ESX/item.sql w swojej bazie danych, żeby zarejestrować item.

ESX (ox_inventory)

Otwórz INSTALLATION_GUIDE/INSTALL_ITEM/ESX/OX_INVENTORY_ITEM.md, skopiuj fragment i wklej go do ox_inventory/data/items.lua:

ox_inventory/data/items.lua
['aidkit'] = {
    label = 'Aid Kit',
    weight = 100,
    stack = true,
    consume = 0,
    allowArmed = true
},

QBCore

Otwórz INSTALLATION_GUIDE/INSTALL_ITEM/QBCORE/item.md, skopiuj fragment i wklej go do qb-core/shared/items.lua:

qb-core/shared/items.lua
['aidkit'] = {['name'] = 'aidkit', ['label'] = 'Aid Kit', ['weight'] = 0, ['type'] = 'item', ['image'] = 'aidkit.png', ['unique'] = false, ['useable'] = false, ['shouldClose'] = false, ['combinable'] = nil, ['description'] = 'Useful to revive knocked people'},
Użyj innego itemu
Jeśli masz już item medyczny, którego wolisz używać, zamiast instalować aidkit zmień ItemRevive i ItemLabel w config.lua.

Popraw swoją pracę ambulansu

DS-Death przejmuje przepływ śmierci i reanimacji, więc dotychczasowe handlery w esx_ambulancejob / qb-ambulancejob trzeba usunąć albo przekierować. Dokładne bloki do usunięcia i podmiany są dołączone do resource'a:

ESX (esx_ambulancejob)

Postępuj zgodnie z INSTALLATION_GUIDE/ESX.txt, w sumie trzy zmiany:

  • esx_ambulancejob/client/main.lua: usuń (albo zakomentuj) handler esx:onPlayerSpawn, który resetuje isDead.
  • esx_ambulancejob/client/main.lua: podmień handler eventu esx_ambulancejob:revive na jedną linijkę przekazującą sterowanie do DS-Death:
    esx_ambulancejob/client/main.lua
    RegisterNetEvent('esx_ambulancejob:revive')
    AddEventHandler('esx_ambulancejob:revive', function()
        TriggerEvent('DS-Death:revive')
    end)
  • esx_ambulancejob/client/job.lua: w funkcji revivePlayer zmień if IsPedDeadOrDying(closestPlayerPed, 1) then na if closestPlayerPed then, żeby stan znokautowania z DS-Death liczył się jako możliwy do reanimacji.

QBCore (qb-ambulancejob)

Postępuj zgodnie z INSTALLATION_GUIDE/QBCORE.txt, dwie zmiany:

  • qb-ambulancejob/server/main.lua: usuń (albo zakomentuj) istniejący blok QBCore.Commands.Add("revive", ...). DS-Death rejestruje własny.
  • qb-ambulancejob/client/dead.lua: usuń handler gameEventTriggered, który obsługuje laststand / licznik śmierci. DS-Death zastępuje ten przepływ.
Zrób kopię przed poprawkami
Te poprawki modyfikują resource'y frameworka. Zanim zaczniesz edytować, zachowaj kopię oryginalnego folderu esx_ambulancejob / qb-ambulancejob, żeby móc się wycofać, jeśli coś innego w twoim zestawie zależy od starego zachowania.

Nadaj uprawnienia administracyjne

QBCore

Dodaj uprawnienie ace do swojego server.cfg, żeby admini mogli korzystać z komend reanimacji:

server.cfg
add_ace group.admin ds_death allow

ESX

Uprawnieniami zarządza tablica AuthorizedGroup w config.lua. Domyślne {'admin'} pokrywa już większość konfiguracji.

Uruchom resource

Dodaj skrypt do swojego server.cfg:

server.cfg
ensure DS-Death
Kolejność resource'ów
Upewnij się, że twój framework (ESX / QBCore) i poprawiona praca ambulansu startują w kolejności ładowania przed DS-Death.

Skonfiguruj

Otwórz config.lua i dostosuj skrypt do swojego serwera. Najbardziej przydatne ustawienia:

  • KnockoutTime / RespawnTime: jak długo gracze leżą znokautowani i kiedy odblokowuje się respawn.
  • HeadShotDeath: pomiń stan nokautu i zabij od razu przy strzale w głowę.
  • RespawnPosition / RespawnSamePos / RespawnCost: gdzie gracze wracają i czy respawn kosztuje gotówkę albo środki z banku.
  • CombatLogging: albo zostaw gracza martwego po ponownym wejściu (CheckDeath), albo respawnuj go automatycznie (RespawnOnJoin).
  • RemoveItemsAfterRPDeath: wyrzucanie pieniędzy, broni i itemów przy śmierci RP, z whitelistą KeepItems na przykład na dokumenty.
  • Progressbar: NATIVE, RPROGRESS albo CUSTOM (podepnij własny pasek w CustomProgress / StopCustomProgress).
  • EMSCall: wrzuć do tej funkcji trigger połączenia ze swojego telefonu, żeby wezwanie EMS trafiało do telefonu zamiast do domyślnego powiadomienia.
  • EnableLogs: włącz logi na webhooka Discorda i skonfiguruj je w webhooks.lua.
Własne hooki
OnKnocked, OnDeath, OnRevive i OnRespawn w config.lua to puste funkcje gotowe na twoje własne triggery/eksporty. CanDie pozwala warunkowo wyłączyć pętlę śmierci: przydaje się w strefach minigier, na eventach airsoftowych albo arenach PvP.

Nadal nie działa?

Załóż ticket na naszym Discordzie, a pomożemy ci.

Dołącz na Discord →