@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
TypeScript
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 };