arx-level-generator
Version:
A tool for creating Arx Fatalis maps
158 lines (157 loc) • 4.94 kB
TypeScript
declare const lightingCalculatorModes: readonly ["Distance", "Danae", "DistanceAngle", "DistanceAngleShadow", "DistanceAngleShadowNoTransparency", "GI"];
type LightingCalculatorMode = (typeof lightingCalculatorModes)[number];
type Modes = 'development' | 'production';
type SettingsConstructorProps = {
/**
* A folder to load the unpacked DLF, LLF and FTS files of the
* original game
*
* can also be set via `process.env.originalLevelFiles`
*
* default value is "../pkware-test-files" relative to the project root
*/
originalLevelFiles?: string;
/**
* can also be set via `process.env.cacheFolder`
*
* default value is "./cache" relative to the project root
*/
cacheFolder?: string;
/**
* can also be set via `process.env.outputDir`
*
* default value is "./output" relative to the project root
*/
outputDir?: string;
/**
* can also be set via `process.env.levelIdx`
*
* default value is 1
*/
levelIdx?: number;
/**
* can also be set via `process.env.assetsDir`
*
* default value is "./assets" relative to the project root
*/
assetsDir?: string;
/**
* can also be set via `process.env.calculateLighting`
*
* This flag tells whether to run Fredlllll's lighting calculator
* after building the llf files
*
* default value is true
* if there are no lights, then this gets set to false
*/
calculateLighting?: boolean;
/**
* can also be set via `process.env.lightingCalculatorMode`
*
* default value is "DistanceAngleShadowNoTransparency"
*/
lightingCalculatorMode?: LightingCalculatorMode;
/**
* can also be set via `process.env.seed`
*
* default value is a string with a random number
* between 100.000.000 and 999.999.999
*/
seed?: string;
/**
* This field allows branching the code based on what phase the project
* is in. For example a cutscene in the beginning of a map can be turned
* off while developing the map in development mode, but re-enabled in
* production mode
*
* can also be set via `process.env.mode`
*
* default value is "production"
*/
mode?: Modes;
/**
* When this is set to true FTS files will not get compressed with pkware
* after compiling. This is an Arx Libertatis 1.3+ feature!
*/
uncompressedFTS?: boolean;
};
export declare class Settings {
/**
* A folder to load the unpacked DLF, LLF and FTS files of the
* original game
*
* can also be set via `process.env.originalLevelFiles`
*
* default value is "../pkware-test-files" relative to the project root
*/
readonly originalLevelFiles: string;
/**
* can also be set via `process.env.cacheFolder`
*
* default value is "./cache" relative to the project root
*/
readonly cacheFolder: string;
/**
* can also be set via `process.env.outputDir`
*
* default value is "./output" relative to the project root
*/
readonly outputDir: string;
/**
* can also be set via `process.env.levelIdx`
*
* default value is 1
*/
readonly levelIdx: number;
/**
* can also be set via `process.env.assetsDir`
*
* default value is "./assets" relative to the project root
*/
readonly assetsDir: string;
/**
* can also be set via `process.env.calculateLighting`
*
* This flag tells whether to run Fredlllll's lighting calculator
* after building the llf files
*
* default value is true
* if there are no lights, then this gets set to false
*/
readonly calculateLighting: boolean;
/**
* can also be set via `process.env.lightingCalculatorMode`
*
* default value is "DistanceAngleShadowNoTransparency"
*/
readonly lightingCalculatorMode: LightingCalculatorMode;
/**
* can also be set via `process.env.seed`
*
* default value is a string with a random number
* between 100.000.000 and 999.999.999
*/
readonly seed: string;
/**
* This field allows branching the code based on what phase the project
* is in. For example a cutscene in the beginning of a map can be turned
* off while developing the map in development mode, but re-enabled in
* production mode
*
* can also be set via `process.env.mode`
*
* default value is "production"
*/
readonly mode: Modes;
/**
* arx-level-generator comes with its own assets folder
*/
readonly internalAssetsDir: string;
/**
* When this is set to true FTS files will not get compressed with pkware
* after compiling. This is an Arx Libertatis 1.3+ feature!
*/
readonly uncompressedFTS: boolean;
constructor(props?: SettingsConstructorProps);
}
export {};