Skip to main content

Class: EventService<TPlayer>

Service for emitting events through the underlying platform driver.

Supports:

  • Global events (emit)
  • Targeted client events (emitClient)
  • WebView events multiplexed via a dispatch channel (emitWebview)

Type Parameters​

TPlayer​

TPlayer = any

The platform’s player type (e.g. alt.Player, PlayerMp, etc.)

Constructors​

Constructor​

new EventService<TPlayer>(platformDriver): EventService<TPlayer>

Parameters​

platformDriver​

IPlatformDriver<TPlayer>

The platform-specific driver implementation, injected via the PLATFORM_DRIVER token.

Returns​

EventService<TPlayer>

Methods​

emit()​

emit(eventName, ...args): void

Emit a global event on the server or client (depending on driver).

Parameters​

eventName​

string

The name of the event to emit.

args​

...any[]

Additional arguments to pass to event listeners.

Returns​

void


emitClient()​

emitClient(player, eventName, ...args): void

Emit an event to a specific client/player.

Parameters​

player​

TPlayer

The target player instance.

eventName​

string

The name of the event to emit to that player.

args​

...any[]

Additional arguments to pass to the player's event listener.

Returns​

void


emitWebview()​

emitWebview(player, webviewId, eventName, ...args): void

Emit an event into a WebView owned by a player.

This method uses a single multiplex channel (WebViewEvents.DISPATCH) to route calls from the game server through the client into the CEF context.

Parameters​

player​

TPlayer

The player who owns the WebView.

webviewId​

The identifier of the target WebView.

string | number

eventName​

string

The name of the WebView event.

args​

...any[]

Arguments to pass into the WebView handler.

Returns​

void