UNPKG

@drincs/pixi-vn

Version:

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

100 lines (97 loc) 3.81 kB
import { Texture, TextureSourceLike, TextureSource, PointData, ObservablePoint } from 'pixi.js'; import { ImageSpriteOptions } from '../../interface/canvas/canvas-options.js'; import AdditionalPositionsExtension from './AdditionalPositions.js'; import Sprite from './Sprite.js'; import ImageSpriteMemory from '../../interface/canvas/memory/ImageSpriteMemory.js'; import './AnchorExtension.js'; import '../../types/ContainerChild.js'; import './CanvasBaseItem.js'; import '../../interface/canvas/memory/CanvasBaseItemMemory.js'; import '../../types/CanvasEventNamesType.js'; import '../CanvasEvent.js'; import '../../types/EventIdType.js'; import '../../interface/canvas/memory/SpriteMemory.js'; import '../../interface/canvas/TextureMemory.js'; /** * This class is a extension of the {@link Sprite} class, it has the same properties and methods, * but it has some features that make texture management easier. * You need to use {@link ImageSprite.load()} to show the image in the canvas. * This class is used for functions like {@link addImage} and {@link showWithDissolve}. * @example * ```typescript * let alien = new ImageSprite({ * anchor: { x: 0.5, y: 0.5 }, * x: 100, * y: 100, * }, 'https://pixijs.com/assets/eggHead.png') * await alien.load() * canvas.add("alien", alien) * ``` * @example * ```typescript * let alien = addImage("alien", 'https://pixijs.com/assets/eggHead.png') * alien.anchor.set(0.5); * alien.x = 100 * alien.y = 100 * await alien.load() * ``` */ declare class ImageSprite<Memory extends ImageSpriteMemory = ImageSpriteMemory> extends Sprite<Memory> implements AdditionalPositionsExtension { pixivnId: string; constructor(options?: ImageSpriteOptions | Texture | undefined, textureAlias?: string); get memory(): ImageSpriteMemory; set memory(_value: ImageSpriteMemory); setMemory(value: ImageSpriteMemory): Promise<void>; static from(source: Texture | TextureSourceLike, skipCache?: boolean): ImageSprite<ImageSpriteMemory>; private _loadIsStarted; get loadIsStarted(): boolean; /** * Load the image from the link and set the texture of the sprite. * @returns A promise that resolves when the image is loaded. */ load(): Promise<void>; set texture(value: Texture<TextureSource<any>>); get texture(): Texture<TextureSource<any>>; /** * Check if the texture is empty. * @returns A boolean that is true if the texture is empty. */ get haveEmptyTexture(): boolean; /** AdditionalPositions */ private _align; set align(value: Partial<PointData> | number); get align(): Partial<PointData> | number; set xAlign(value: number); get xAlign(): number; set yAlign(value: number); get yAlign(): number; private _percentagePosition; set percentagePosition(value: Partial<PointData> | number); get percentagePosition(): Partial<PointData> | number; get xPercentagePosition(): number; set xPercentagePosition(_value: number); get yPercentagePosition(): number; set yPercentagePosition(_value: number); get positionType(): "pixel" | "percentage" | "align"; get positionInfo(): { x: number; y: number; type: "pixel" | "percentage" | "align"; }; set positionInfo(value: { x: number; y: number; type?: "pixel" | "percentage" | "align"; }); private reloadPosition; get position(): ObservablePoint; set position(value: ObservablePoint); get x(): number; set x(value: number); get y(): number; set y(value: number); } declare function setMemoryImageSprite(element: ImageSprite, memory: ImageSpriteMemory | {}, options?: { ignoreTexture?: boolean; }): Promise<void>; export { ImageSprite as default, setMemoryImageSprite };