Files
OpenFrontIO/src/client/graphics/layers/Layer.ts
T
scamiv 28bae2d7eb Await name layer initialization before ticks
Make layer initialization awaitable and have GameRenderer wait for each layer init before input and worker ticks start. This prevents the Pixi NameLayer from seeing players before its async font, atlas, and renderer setup has completed.

Also store the AlternateViewEvent handler on NameLayer so destroy() can unsubscribe it, matching the existing resize listener cleanup and preventing torn-down instances from mutating state.
2026-05-09 15:30:10 +02:00

12 lines
396 B
TypeScript

export interface Layer {
init?: () => void | Promise<void>;
tick?: () => void;
// Optional hint to throttle expensive ticks by wall-clock.
// If omitted or <= 0, the layer ticks whenever GameRenderer ticks.
getTickIntervalMs?: () => number;
renderLayer?: (context: CanvasRenderingContext2D) => void;
shouldTransform?: () => boolean;
redraw?: () => void;
destroy?: () => void;
}