Events
Grassworks exposes nine public events. Each event has its own stable anchor and payload description.
const callback = (payload) => console.log(payload);
grassworks.on("ready", callback);
grassworks.off("ready", callback);on
on(event, callback)Subscribes to a public Grassworks event.
Parameters
- event — string; public event name.
- callback — function; called with the event payload.
Behavior
The event name must be a string and the callback must be a function. The same callback is stored once per event.
Returns
this — the Grassworks instance for chaining.
Example
grassworks.on("ready", (instance) => {
console.log(instance);
});off
off(event, callback)Removes one event callback, or all callbacks for an event when callback is omitted.
Parameters
- event — string; public event name.
- callback — function; optional callback to remove.
Behavior
If callback is omitted, all callbacks for the named event are removed.
Returns
this — the Grassworks instance for chaining.
Example
const callback = (payload) => console.log(payload);
grassworks.on("ready", callback);
grassworks.off("ready", callback);ready event
"ready"Grassworks initialization has completed.
Behavior
Initialization completes before the event is emitted; subscribing after readiness invokes the callback immediately.
Returns
void.
Example
grassworks.on("ready", (instance) => {
console.log(instance);
});grassmapchange event
"grassmapchange"The grass-map state changes through Grassworks-supported grass-map workflows.
Returns
void.
Example
grassworks.on("grassmapchange", (payload) => { ... });tileupdate event
"tileupdate"A tile has been repositioned/updated during tile management.
Returns
void.
Example
grassworks.on("tileupdate", (payload) => { ... });terrainrefresh event
"terrainrefresh"Terrain re-capture has completed.
Returns
void.
Example
grassworks.on("terrainrefresh", (payload) => { ... });rebuild event
"rebuild"The grass tile grid has been rebuilt.
Returns
void.
Example
grassworks.on("rebuild", (instance) => { ... });lodchange event
"lodchange"An LOD configuration change has been applied.
Behavior
The payload shape depends on whether one LOD or a full LOD configuration was changed.
Returns
void.
Example
grassworks.on("lodchange", (payload) => { ... });grasstypechange event
"grasstypechange"The grass representation changes between Blade and Billboard.
Returns
void.
Example
grassworks.on("grasstypechange", (payload) => { ... });presetchange event
"presetchange"A named Blade preset changes.
Returns
void.
Example
grassworks.on("presetchange", (payload) => { ... });dispose event
"dispose"The system is beginning disposal.
Returns
void.
Example
grassworks.on("dispose", (instance) => { ... });