UNPKG

arx-level-generator

Version:
59 lines (58 loc) 1.78 kB
import { Expand } from 'arx-convert/utils'; import { Entity, EntityConstructorProps } from '../../Entity.js'; import { Variable } from '../../scripting/properties/Variable.js'; export type DoorConstructorProps = Expand<EntityConstructorProps & { /** * default value is false */ isOpen?: boolean; /** * default value is false */ isLocked?: boolean; lockpickDifficulty?: number; }>; export type DoorConstructorPropsWithFixSrc = Expand<Omit<DoorConstructorProps, 'src'>>; export declare abstract class Door extends Entity { protected propIsOpen: Variable<boolean>; protected propIsUnlocked: Variable<boolean>; protected propLockpickability: Variable<number>; constructor(props: DoorConstructorProps); get isOpen(): boolean; set isOpen(value: boolean); get isLocked(): boolean; set isLocked(value: boolean); get lockpickDifficulty(): number; set lockpickDifficulty(value: number); } export declare class Portcullis extends Door { constructor(props?: DoorConstructorPropsWithFixSrc); } /** * 150 wide / 220 high */ export declare class LightDoor extends Door { protected propType: Variable<string>; protected propKey: Variable<string>; constructor(props?: DoorConstructorPropsWithFixSrc); setKey(key: Entity): void; removeKey(): void; } /** * 150 wide / 200 high */ export declare class CatacombHeavyDoor extends LightDoor { constructor(props?: DoorConstructorPropsWithFixSrc); } /** * 150 wide / 250 high */ export declare class YlsideDoor extends LightDoor { constructor(props?: DoorConstructorPropsWithFixSrc); } /** * ? wide / ? high */ export declare class GoblinVeryLightDoor extends LightDoor { constructor(props?: DoorConstructorPropsWithFixSrc); }