@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
41 lines • 1.27 kB
TypeScript
/**
* Turret - Child entity class for defensive turret systems
* Turrets are child entities that attach to buildings/units for defense
*/
import { Child } from "./child.js";
/**
* Turret class for defensive systems that attach to entities
* Extends Child since turrets are child entities, not abilities
*/
export declare class Turret extends Child {
get type(): string;
readonly description: string;
unlocked: boolean;
readonly subtype: string;
hexiteCost?: number;
fluxCost?: number;
buildTime?: number;
hp?: number;
internalId?: string;
internalPath?: string;
internalTags?: string[];
internalSecondaryTags?: string[];
apply?: () => void;
unlocks?: string[];
constructor(props?: Partial<Turret>);
/** JSON.stringify() calls this automatically */
toJSON(): Record<string, any>;
}
/**
* Building Turret - Specialized turret for building defense
*/
export declare abstract class BuildingTurret extends Turret {
constructor(props?: Partial<BuildingTurret>);
}
/**
* Unit Turret - Specialized turret for unit add-ons (like Dreadnought modules)
*/
export declare abstract class UnitTurret extends Turret {
constructor(props?: Partial<UnitTurret>);
}
//# sourceMappingURL=turret.d.ts.map