Death·Instalace

Instalace

DS-Death nahrazuje výchozí smyčku smrti/knockoutu/oživení ve tvém ambulance jobu. Instalace je z většiny drag-and-drop, plus pár drobných úprav v esx_ambulancejob nebo qb-ambulancejob, aby stávající tok oživení předal řízení DS-Death.

Stažení

Stáhni skript z portal.cfx.re. Ujisti se, že jsi přihlášený FiveM účtem, kterým jsi skript koupil.

Rozbalení

Rozbal archiv a vzniklou složku DS-Death vlož kamkoli do složky resources svého serveru.

Závislosti
DS-Death vyžaduje mysql-async. ESX i QBCore jsou podporované a detekují se automaticky za běhu.

Spusť SQL

Spusť SQL soubor odpovídající tvému frameworku. Přidá jediný sloupec ds_death, ve kterém se stav smrti udrží i přes odpojení.

ESX

Spusť INSTALLATION_GUIDE/ESX.sql ve své databázi: přidá ds_death TINYINT(1) do tabulky users.

QBCore

Spusť INSTALLATION_GUIDE/QBCore.sql ve své databázi: přidá ds_death TINYINT(1) do tabulky players.

Nainstaluj item na oživení

DS-Death potřebuje item aidkit, aby šlo oživovat knocknuté hráče. Přidej ho do inventory, které používáš.

ESX (výchozí inventory)

Spusť INSTALLATION_GUIDE/INSTALL_ITEM/ESX/item.sql ve své databázi a item tím zaregistruj.

ESX (ox_inventory)

Otevři INSTALLATION_GUIDE/INSTALL_ITEM/ESX/OX_INVENTORY_ITEM.md, zkopíruj úryvek a vlož ho do ox_inventory/data/items.lua:

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

QBCore

Otevři INSTALLATION_GUIDE/INSTALL_ITEM/QBCORE/item.md, zkopíruj úryvek a vlož ho 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'},
Použít jiný item
Pokud už máš zdravotnický item, který chceš použít radši, změň místo instalace aidkit hodnoty ItemRevive a ItemLabel v config.lua.

Uprav svůj ambulance job

DS-Death přebírá tok smrti a oživení, takže stávající handlery v esx_ambulancejob / qb-ambulancejob je potřeba odstranit nebo přesměrovat. Konkrétní bloky ke smazání a nahrazení jsou přibalené v resource:

ESX (esx_ambulancejob)

Postupuj podle INSTALLATION_GUIDE/ESX.txt, celkem tři úpravy:

  • esx_ambulancejob/client/main.lua: odstraň (nebo zakomentuj) handler esx:onPlayerSpawn, který resetuje isDead.
  • esx_ambulancejob/client/main.lua: nahraď handler eventu esx_ambulancejob:revive jedním řádkem, který předá řízení 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: ve funkci revivePlayer změň if IsPedDeadOrDying(closestPlayerPed, 1) then na if closestPlayerPed then, aby se knocknutý stav z DS-Death počítal jako oživitelný.

QBCore (qb-ambulancejob)

Postupuj podle INSTALLATION_GUIDE/QBCORE.txt, dvě úpravy:

  • qb-ambulancejob/server/main.lua: odstraň (nebo zakomentuj) stávající blok QBCore.Commands.Add("revive", ...). DS-Death registruje vlastní.
  • qb-ambulancejob/client/dead.lua: odstraň handler gameEventTriggered, který řeší laststand / časovač smrti. DS-Death tenhle tok nahrazuje.
Před úpravami si udělej zálohu
Tyhle úpravy zasahují do resourců frameworku. Než začneš editovat, ulož si kopii původní složky esx_ambulancejob / qb-ambulancejob, ať se můžeš vrátit zpátky, kdyby na starém chování záviselo něco jiného ve tvém stacku.

Přiděl admin oprávnění

QBCore

Přidej ace oprávnění do svého server.cfg, aby admini mohli používat příkazy na oživení:

server.cfg
add_ace group.admin ds_death allow

ESX

Oprávnění se řeší přes pole AuthorizedGroup v config.lua. Výchozí {'admin'} pokrývá většinu nastavení.

Spuštění resource

Přidej skript do svého server.cfg:

server.cfg
ensure DS-Death
Pořadí resourců
Ujisti se, že tvůj framework (ESX / QBCore) a upravený ambulance job startují v pořadí načítání dřív než DS-Death.

Konfigurace

Otevři config.lua a vylaď skript pro svůj server. Nejužitečnější volby:

  • KnockoutTime / RespawnTime: jak dlouho hráči zůstávají knocknutí a odkdy je možný respawn.
  • HeadShotDeath: přeskoč stav knockoutu a při headshotu zabij okamžitě.
  • RespawnPosition / RespawnSamePos / RespawnCost: kde se hráči objeví a jestli respawn stojí hotovost nebo peníze v bance.
  • CombatLogging: buď hráče po připojení nech mrtvého (CheckDeath), nebo ho automaticky respawni (RespawnOnJoin).
  • RemoveItemsAfterRPDeath: při RP smrti vysypat peníze, zbraně a itemy, s whitelistem KeepItems třeba na doklady.
  • Progressbar: NATIVE, RPROGRESS nebo CUSTOM (vlastní si zapoj do CustomProgress / StopCustomProgress).
  • EMSCall: vlož do téhle funkce trigger hovoru ze svého telefonu, ať volání EMS ve světě jde do telefonu místo výchozí notifikace.
  • EnableLogs: zapni logy přes Discord webhook a nastav je v webhooks.lua.
Vlastní hooky
OnKnocked, OnDeath, OnRevive a OnRespawn v config.lua jsou prázdné funkce připravené na tvoje vlastní triggery/exporty. CanDie umožňuje smyčku smrti podmíněně vypnout: hodí se pro zóny s minihrami, airsoftové akce nebo PvP arény.

Pořád to nejde?

Založ ticket na našem Discordu a my ti pomůžeme.

Přidat se na Discord →