forge/docus/dist/raw/client-addons/notifications.md
Jacob Schmidt 827f3303a2 feat: add initial Docus setup and sync tool for documentation generation
- Created package.json for Docus with necessary scripts and dependencies.
- Implemented sync-docus-docs.mjs to automate the generation of documentation files from source markdown.
- Defined mappings for generated pages and virtual routes to ensure proper linking in documentation.
- Added static content files for the documentation structure, including navigation and index pages.
2026-04-21 16:07:27 -05:00

2.4 KiB

Client Notifications Usage Guide

The client notifications addon owns the notification HUD, notification sound, and local notification service used by Forge client and server modules.

Runtime Behavior

The notification display is created during client initialization. The browser HUD sends:

notifications::ready

When that event is received, NotificationService initializes and sends a startup notification.

Create a Notification

Use the notification service when available:

GVAR(NotificationService) call ["create", [
    "success",
    "Title",
    "Notification text.",
    4000
]];

Arguments:

<th>
  Purpose
</th>
<td>
  Notification type, such as <code>
    success
  </code>
  
  , <code>
    info
  </code>
  
  , <code>
    warning
  </code>
  
  , or <code>
    error
  </code>
  
  .
</td>
<td>
  Notification title.
</td>
<td>
  Notification body text.
</td>
<td>
  Display duration in milliseconds.
</td>
Argument
_type
_title
_content
_duration

The service dispatches a browser forge:notify custom event.

CBA Event Surface

Other addons can use the client notification event:

["forge_client_notifications_recieveNotification", [
    "warning",
    "Garage",
    "Vehicle spawn position is blocked.",
    3000
]] call CBA_fnc_localEvent;

The event payload is:

[_type, _title, _content, _duration]

Usage Rules

  • Use the shared notification service instead of opening separate transient browser UIs.
  • Keep server-driven player feedback short and actionable.
  • Treat notification state as transient client UI state.
  • Do not use notifications as the only record of durable domain changes.