UNPKG

arx-level-generator

Version:
114 lines (113 loc) 4.34 kB
import { ArxTextureContainer } from 'arx-convert/types'; import { Expand } from 'arx-convert/utils'; import { Texture as ThreeJsTextue } from 'three'; import { Settings } from './Settings.js'; export type TextureConstructorProps = { filename: string; /** * whether the texture is from the main game or a custom added file * * default value is true (meaning that the texture is from the game) */ isNative?: boolean; width?: number; height?: number; size?: number; /** * this path is relative to the project's "assets" folder * * default value is "graph/obj3d/texture" */ sourcePath?: string; /** * default value is false */ isInternalAsset?: boolean; }; export declare const SIZE_UNKNOWN = -1; export declare const NO_TEXTURE_CONTAINER = 0; export declare class Texture extends ThreeJsTextue { static targetPath: string; alreadyMadeTileable: boolean; filename: string; isNative: boolean; _width: number; _height: number; sourcePath?: string; isInternalAsset: boolean; constructor(props: TextureConstructorProps); clone(): this; static fromCustomFile(props: Expand<Omit<TextureConstructorProps, 'isNative'>>): Texture; static fromArxTextureContainer(texture: ArxTextureContainer): Texture; private getFilename; getWidth(settings: Settings): Promise<number>; getHeight(settings: Settings): Promise<number>; /** * this also gives value to this._width and this._height * if any of them is SIZE_UNKNOWN */ isTileable(settings: Settings): Promise<boolean>; /** * default value for needsToBeTileable is false */ exportSourceAndTarget(settings: Settings, needsToBeTileable?: boolean, _dontCatchTheError?: boolean): Promise<[string, string]>; private makeCopy; private makeTileable; /** * compares filenames of textures without the extensions * comparision is case insensitive * * For example: * - texture.jpg == TEXTURE.JPG * - texture.bmp == texture.jpg */ equals(texture: Texture | string): boolean; equalsAny(textures: (Texture | string)[]): boolean; static get alpha(): Texture; static get stoneHumanPaving(): Texture; static get stoneHumanPaving1(): Texture; static get aliciaRoomMur01(): Texture; static get aliciaRoomMur02(): Texture; static get waterCavewater(): Texture; static get l1DragonStoneGround01(): Texture; static get l1DragonIceGround08(): Texture; static get l1DragonSpideLime1Nocol(): Texture; static get l1PrisonStoneGridl02(): Texture; static get l1PrisonSandGround01(): Texture; static get l1TempleStoneWall03(): Texture; static get l2CavesRustyItem01(): Texture; static get l2TrollStoneGround04(): Texture; static get l2TrollWoodPillar08(): Texture; static get l2GobelStoneFloor02(): Texture; static get l2GobelStoneCenter(): Texture; static get l3DissidWetGround01(): Texture; static get l3DissidStoneGround09(): Texture; static get l3DissidStoneGround10(): Texture; static get l3DissidIronWall02(): Texture; static get l3DissidStoneWall03(): Texture; static get l3DissidStoneTrans01(): Texture; static get l3DissidWoodFabric03(): Texture; static get l3DissidWoodFabric04(): Texture; static get l4YlsideStoneGround01(): Texture; static get l4DwarfIronBoard02(): Texture; static get l4DwarfWoodBoard02(): Texture; static get l5CavesGravelGround05(): Texture; static get l6RatmenFleshWall03(): Texture; static get l7DwarfMetalPlate10(): Texture; static get stoneHumanStoneWall(): Texture; static get stoneHumanStoneWall1(): Texture; static get stoneHumanStoneWall2(): Texture; static get stoneHumanAkbaa2F(): Texture; static get stoneHumanAkbaa4F(): Texture; static get stoneHumanPriest4(): Texture; static get itemFishingPole2(): Texture; static get itemRope(): Texture; static get fixinterHeavyCatacombDoor(): Texture; static get stoneGroundCavesWet05(): Texture; static get glassGlass01(): Texture; static get itemCheese(): Texture; static get itemRuneAam(): Texture; static get missingTexture(): Texture; static get uvDebugTexture(): Texture; static get missingInventoryIcon(): Texture; }