Death·Exports

Exports

DS-Death expose quelques net events que tu peux déclencher depuis n’importe quel script, trois exports côté client pour interroger l’état ou réanimer à proximité, et un ensemble de hooks au niveau de la config pour brancher tes propres triggers à la mort, au revive, au respawn, etc.

Events

Les events sont le point d’intégration le plus simple : déclenche-les depuis ton ambulance job, ton téléphone, un minijeu ou un outil admin.

DS-Death:revive

Réanime le joueur local (ou le joueur ciblé lorsqu’il est déclenché depuis le serveur). Utilise-le pour brancher DS-Death sur des flux de revive existants, comme le handler esx_ambulancejob:revive du ambulance job ESX.

Lua
-- Client side
TriggerEvent('DS-Death:revive')

-- Server side (revives the player whose source is passed in)
TriggerClientEvent('DS-Death:revive', source)

DS-Death:lockAnim

Verrouille ou déverrouille l’animation de mort de DS-Death. Utile quand un autre système (ambulance job, minijeu de revive personnalisé) veut jouer sa propre animation tout en gardant le joueur dans l’état knockout de DS-Death. Passe true pour verrouiller, false pour libérer.

Lua
-- Client side
TriggerEvent('DS-Death:lockAnim', true)   -- lock the death animation
TriggerEvent('DS-Death:lockAnim', false)  -- release it

-- Server side (target a specific player)
TriggerClientEvent('DS-Death:lockAnim', source, true)

Exports

Les trois exports s’exécutent côté client. Les requêtes d’état acceptent un server ID facultatif : ne passe rien pour interroger le joueur local.

ReviveNear

client

Cherche les joueurs en knockout autour du joueur local et tente de réanimer le plus proche. Le script gère la vérification de l’item, la barre de progression et l’event de revive : il ne te reste qu’à brancher cet export sur le déclencheur d’interaction de ton choix (utilisation d’item, option de target, raccourci clavier).

Signature

Lua
exports['DS-Death']:ReviveNear()

Exemple

Lua
-- e.g. from a usable-item handler or a target option
exports['DS-Death']:ReviveNear()

isPlayerDead

client

Indique si le joueur donné est complètement mort (en attente de respawn). Passe un server ID pour interroger un autre joueur ; ne passe rien pour vérifier le joueur local.

Signature

Lua
exports['DS-Death']:isPlayerDead(serverId)

Paramètres

NomTypeDescription
serverId?numberServer ID du joueur à interroger. Par défaut, le joueur local.

Retourne

boolean

true tant que le joueur est complètement mort, false sinon.

Exemple

Lua
if exports['DS-Death']:isPlayerDead() then
  -- block phone, inventory, etc.
end

isPlayerKnocked

client

Indique si le joueur donné est actuellement en knockout (au sol mais encore réanimable). Même forme que isPlayerDead : le server ID est facultatif et vaut le joueur local par défaut.

Signature

Lua
exports['DS-Death']:isPlayerKnocked(serverId)

Paramètres

NomTypeDescription
serverId?numberServer ID du joueur à interroger. Par défaut, le joueur local.

Retourne

boolean

true tant que le joueur est en knockout et attend un revive.

Exemple

Lua
local target = GetClosestPlayer()
if exports['DS-Death']:isPlayerKnocked(GetPlayerServerId(target)) then
  -- show "Revive" prompt
end

Hooks de config

Au-delà des events et des exports, config.lua fournit une poignée de fonctions vides que tu peux étendre sans toucher au cœur protégé par l’escrow. Place tes propres triggers/exports dans n’importe laquelle d’entre elles.

  • OnKnocked, OnDeath, OnRevive, OnRespawn : déclenchés au changement d’état correspondant du joueur.
  • CanDie : renvoie false pour supprimer entièrement la boucle de mort (par ex. dans un minijeu, une partie d’airsoft ou une arène PvP).
  • EMSCall : reçoit les coordonnées du joueur mourant ; redirige-les vers le trigger d’appel d’urgence de ton téléphone.
  • Notification : remplace-la par ton propre système de notification ; reçoit un message sous forme de chaîne.
  • CustomProgress / StopCustomProgress : branche n’importe quelle barre de progression (ox_lib, UI personnalisée, etc.) quand Progressbar = 'CUSTOM' dans la config.
  • DisabledKeys : les contrôles désactivés tant que le joueur est complètement mort. Redéfinis-les pour garder tes propres contrôles utilisables.
Combiner les hooks
Hooks et exports se combinent bien : appelle exports['DS-Death']:isPlayerKnocked() depuis OnKnocked pour conditionner d’autres systèmes (téléphone, inventaire, radio) sans polling.

Toujours bloqué ?

Ouvre un ticket sur notre Discord et on te dépanne.

Rejoindre le Discord →