yukinovel
Version:
Yukinovel is a simple web visual novel engine.
62 lines (61 loc) • 1.9 kB
TypeScript
import { Scene, DialogueEntry, Choice } from '../types/index.js';
import { Game } from './Game.js';
export declare class UIRenderer {
private game;
private container;
private backgroundElement;
private backgroundVideo;
private characterContainer;
private dialogueContainer;
private choicesContainer;
private uiContainer;
private originalCharacterSprites;
private controlsContainer;
private logContainer;
private isLogVisible;
private mainMenuContainer;
private gameContainer;
private exitConfirmModal;
private isTyping;
private currentTypewriterTimeout;
private typewriterSpeed;
private currentDialogueText;
private currentCharacterName;
private currentCharacterColor;
private justSkippedTyping;
constructor(game: Game);
private detectBackgroundType;
private setupBackgroundVideo;
private setupMainMenuBackground;
render(container: HTMLElement): void;
private createUIStructure;
showMainMenu(): void;
hideMainMenu(): void;
private createMainMenu;
private createMenuButton;
private addMainMenuAnimations;
showCredits(): void;
private createControlButtons;
private handleNext;
private attachEventListeners;
private toggleLog;
private showLog;
private hideLog;
private showExitConfirm;
private hideExitConfirm;
updateScene(scene: Scene): void;
private updateSceneBackground;
updateDialogue(dialogue: DialogueEntry): void;
private startTypewriter;
private typeText;
private stopTyping;
private skipTyping;
showChoices(choices: Choice[]): void;
private updateCharacters;
private updateCharacterEmotion;
private updateCharacterSprite;
private restoreUnspecifiedCharacterSprites;
private showSettings;
private createSimpleSettingsSection;
private setupSettingsBackground;
}