UNPKG

@drincs/pixi-vn

Version:

Pixi'VN is a npm package that provides various features for creating visual novels.

107 lines (104 loc) 3.63 kB
import SaveData from '../interface/SaveData.js'; import '../interface/export/ExportedCanvas.js'; import '../types/PauseTickerType.js'; import '../interface/canvas/memory/CanvasBaseItemMemory.js'; import '../interface/canvas/memory/ContainerMemory.js'; import 'pixi.js'; import '../types/ContainerChild.js'; import '../classes/canvas/CanvasBaseItem.js'; import '../interface/TickerHistory.js'; import '../types/TickerIdType.js'; import '../interface/TickerArgs.js'; import '../interface/TickersSequence.js'; import '../types/PauseType.js'; import '../types/RepeatType.js'; import '../interface/export/ExportedSounds.js'; import '../interface/SoundOptions.js'; import '@pixi/sound'; import '../types/SoundFilterMemory.js'; import '../interface/export/ExportedStep.js'; import '../interface/HistoryStep.js'; import 'deep-diff'; import 'microdiff'; import '../classes/ChoiceMenuOption.js'; import '../types/LabelIdType.js'; import '../types/StorageElementType.js'; import '../classes/Label.js'; import '../classes/LabelAbstract.js'; import '../types/StepLabelType.js'; import '@drincs/pixi-vn'; import '../interface/LabelProps.js'; import '../types/CloseType.js'; import '../types/LabelRunModeType.js'; import '../interface/OpenedLabel.js'; import '../interface/export/ExportedStorage.js'; import '../classes/Dialogue.js'; import '../interface/CharacterInterface.js'; /** * Clear all game data. This function is used to reset the game. */ declare function clearAllGameDatas(): void; /** * Get the save data * @returns The save data */ declare function getSaveData(): SaveData; /** * Get the save data as a JSON string * @returns The save data as a JSON string * @example * ```typescript * export function saveGame() { * const jsonString = getSaveJson() * const blob = new Blob([jsonString], { type: "application/json" }); * const url = URL.createObjectURL(blob); * const a = document.createElement('a'); * a.href = url; * a.download = "save.json"; * a.click(); * } * ``` */ declare function getSaveJson(): string; /** * Load the save data * @param data The save data * @param navigate The function to navigate to a path */ declare function loadSaveData(data: SaveData, navigate: (path: string) => void): Promise<void>; /** * Load the save data from a JSON string * @param dataString The save data as a JSON string * @param navigate The function to navigate to a path * @example * ```typescript * export function loadGameSave(navigate: (path: string) => void, afterLoad?: () => void) { * // load the save data from a JSON file * const input = document.createElement('input'); * input.type = 'file'; * input.accept = 'application/json'; * input.onchange = (e) => { * const file = (e.target as HTMLInputElement).files?.[0]; * if (file) { * const reader = new FileReader(); * reader.onload = (e) => { * const jsonString = e.target?.result as string; * // load the save data from the JSON string * loadSaveJson(jsonString, navigate); * afterLoad && afterLoad(); * }; * reader.readAsText(file); * } * }; * input.click(); * } * ``` */ declare function loadSaveJson(dataString: string, navigate: (path: string) => void): Promise<void>; /** * Convert a JSON string to a save data * @param json The JSON string * @returns The save data */ declare function jsonToSaveData(json: string): SaveData; export { clearAllGameDatas, getSaveData, getSaveJson, jsonToSaveData, loadSaveData, loadSaveJson };