asciitorium
Version:
an ASCII CLUI framework
32 lines (31 loc) • 867 B
TypeScript
import { type LegendEntry } from '../core/AssetManager.js';
export interface RaycastData {
here: {
left: string | null;
center: string | null;
right: string | null;
};
near: {
left: string | null;
center: string | null;
right: string | null;
};
middle: {
left: string | null;
center: string | null;
right: string | null;
};
far: {
left: string | null;
center: string | null;
right: string | null;
};
}
export declare class FirstPersonCompositor {
constructor();
private getSpriteKey;
private loadMaterial;
compose(raycast: RaycastData, legend: Record<string, LegendEntry>, viewWidth: number, viewHeight: number, transparency?: boolean): Promise<string[][]>;
private calculateSpritePosition;
private renderSprite;
}