opx_infinitydowned
Server
Last updated on
The downed contract on the server — who is down, and reviving them.
local downed = OPX.Api.Get('downed')From server code inside opx_infinity. Each function answers { ok = true, value } or { ok = false, error = code }.
IsDown
downed.IsDown(playerId)Parameters
- playerId:
integer
Returns
Result{ down, waiting, downForMs? }—downForMsonly when down. Errorbad_player.
List
Every downed player: those waiting for help first, then longest down. For a dispatch screen.
downed.List()Returns
Result{ players = { { id, name, waiting, downForMs, position } } }position:{ x, y, z, bucket }
Revive
Revives where the body lies, at REVIVE.HEALTH. The Revive server export calls this with the calling resource's name.
downed.Revive(playerId, caller, why)Parameters
- playerId:
integer - caller:
string— your module name; audited and checked againstREVIVERS. - why?:
string— reason, audited after the caller (cut to 64 characters).
Returns
Resulttrue— errorsinvalid_caller,caller_denied,bad_player,not_down,not_incarnated,gate_unreadable,gate_closed, or the host's refusal reason
local up = downed.Revive(target, 'ems', 'defib')
if not up.ok then print(up.error) end