Browse docs

Client Exports

Client-side exports provided by the Sky Ambulancejob resource.

Radial Menu

getRadialActions()

  • Purpose: Provides the current list of radial menu actions along with labels, descriptions, and availability metadata.
  • Returns: RadialAction[] where each entry contains id, label, description, icon, available, and optional badge or helper fields.
local actions = exports["sky_ambulancejob"]:getRadialActions()

getRadialAction(actionId)

  • Purpose: Fetches a single action snapshot by actionId.
  • Arguments:
    • actionId (string)
  • Returns: The action snapshot or nil when missing.
local action = exports["sky_ambulancejob"]:getRadialAction("treat_patient")

getRadialActionReport()

  • Purpose: Bundles the action list with a quick lookup map for availability and reason information.
  • Returns: Object with actions and availability, where each key maps to available, disabledReasonKey, and disabledReason.
local report = exports["sky_ambulancejob"]:getRadialActionReport()

isRadialMenuActionAvailable(actionId)

  • Purpose: Tests if a radial menu action is currently enabled without opening the menu.
  • Arguments:
    • actionId (string)
  • Returns: boolean (true when the action exists and is enabled).
local available = exports["sky_ambulancejob"]:isRadialMenuActionAvailable("treat_patient")

triggerRadialMenuAction(actionId)

  • Purpose: Executes the same handler the radial menu would for the given action, without opening the UI.
  • Arguments:
    • actionId (string)
  • Returns:
    • boolean: true when the action was accepted.
    • table?: When the action fails, returns a map with key/fallback for notification text.
local success, err = exports["sky_ambulancejob"]:triggerRadialMenuAction("treat_patient")

Radial Menu Actions

Each action mirrors the descriptions and availability logic of the in-game radial UI.

Action IDIconLabelDescription
stretcher_deployBedDeploy / Stow stretcherDeploy or stow the stretcher from the assigned vehicle.
stretcher_carryHandPick up / Place stretcherPick up or place the active stretcher nearby.
stretcher_patientBedDoublePlace / Release patientMove patients on or off the active stretcher.
stretcher_vehicleTruckLoad / Unload stretcherMove the stretcher between the ground and the vehicle.
carry_patientHelpingHandCarry / Drop patientCarry the closest person to safety, or drop them.
vehicle_pullCarPull from vehiclePull an unconscious patient out of a nearby vehicle.
treat_patientHeartPulseTreat patientDiagnose and treat the closest patient.
billingReceiptTextIssue billIssue a bill to the nearest patient.

Crutch

EquipCrutch()

  • Purpose: Equips a crutch on the local player.
exports["sky_ambulancejob"]:EquipCrutch()

UnequipCrutch()

  • Purpose: Removes the crutch from the local player.
exports["sky_ambulancejob"]:UnequipCrutch()

ToggleCrutch()

  • Purpose: Toggles the crutch on or off.
exports["sky_ambulancejob"]:ToggleCrutch()

SetWalkStyle(style)

  • Purpose: Sets the crutch walk animation style.
  • Arguments:
    • style (string): The clipset name for the walk animation.
exports["sky_ambulancejob"]:SetWalkStyle("move_m@injured")

Wheelchair

EquipWheelchair()

  • Purpose: Equips a wheelchair for the local player.
exports["sky_ambulancejob"]:EquipWheelchair()

UnequipWheelchair()

  • Purpose: Removes the wheelchair from the local player.
exports["sky_ambulancejob"]:UnequipWheelchair()

ToggleWheelchair()

  • Purpose: Toggles the wheelchair on or off.
exports["sky_ambulancejob"]:ToggleWheelchair()

Death Screen

open()

  • Purpose: Opens the death screen UI.
exports["sky_ambulancejob"]:open()

updateTime(seconds)

  • Purpose: Updates the bleed-out timer to a specific value.
  • Arguments:
    • seconds (number): The new timer value in seconds.
exports["sky_ambulancejob"]:updateTime(120)

addTime(seconds)

  • Purpose: Adds time to the current bleed-out timer.
  • Arguments:
    • seconds (number): Seconds to add.
exports["sky_ambulancejob"]:addTime(30)

Injury & State

GetLocalInjuryProfile()

  • Purpose: Returns the current player's injury profile with all active conditions and wounds.
  • Returns: table — the full injury profile object.
local profile = exports["sky_ambulancejob"]:GetLocalInjuryProfile()

isDead()

  • Purpose: Queries the local player's death state.
  • Returns: boolean (true when dead/downed, false when alive).
local dead = exports["sky_ambulancejob"]:isDead()

Insurance

OpenInsurance()

  • Purpose: Opens the insurance UI for the local player.
exports["sky_ambulancejob"]:OpenInsurance()

Stretcher

openStretcherEditor(payload)

  • Purpose: Opens the interactive stretcher positioning editor for vehicle attachment configuration. Spawns a preview vehicle with an attached stretcher that can be repositioned via keyboard controls.
  • Arguments:
    • payload (table):
      • model (string | number) — Vehicle model name or hash. Required.
      • name (string?) — Optional display name for the vehicle.
  • Returns: table with:
    • success (boolean) — true when the editor opened successfully.
    • error (string?) — Error message when success is false.
local result = exports["sky_ambulancejob"]:openStretcherEditor({
    model = "ambulance",
    name  = "Ambulance"
})

if not result.success then
    print("Error: " .. result.error)
end

Support

Need help? Our support team is always ready to assist

Join Discord