UNPKG

@zerospacegg/iolin

Version:

Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)

96 lines 2.83 kB
/** * Dread Raiders Classes - Mercenary faction classes * Dread Raiders are ruthless space pirates and raiders who strike fear across the galaxy * As a merc faction, they have: few talents, few units, outpost buildings, no hero, multiple topbars */ import { FactionTalent, Topbar } from "../engine/ability.js"; import { SpecialBuilding } from "../engine/building.js"; import { MercFaction } from "../engine/faction.js"; import { HeroUnit, MercUnit } from "../engine/unit.js"; /** * Dread Raiders-specific talent that automatically sets abilityOf to "dread-raiders" */ export class DreadRaidersTalent extends FactionTalent { get type() { return "ability"; } constructor(props) { super(props); this.faction = "dread"; this.factionName = "Dread Raiders"; } get abilityOf() { return "dread"; } } /** * Dread Raiders-specific topbar that automatically sets abilityOf to "dread-raiders" */ export class DreadRaidersTopbar extends Topbar { get type() { return "ability"; } get abilityOf() { return "dread"; } constructor() { super(); } } /** * Dread Raiders faction class extending MercenaryFaction */ export class DreadRaidersFaction extends MercFaction { constructor() { super(); // Set faction properties this.faction = "dread"; this.factionName = "Dread Raiders"; // Dread Raiders are ruthless space pirates and raiders } } /** * Dread Raiders merc unit class - pirates, raiders, and scavengers */ export class DreadRaidersMercUnit extends MercUnit { constructor() { super(); this.faction = "dread"; this.factionName = "Dread Raiders"; // Dread Raiders units are hardened pirates and raiders } } /** * Dread Raiders hero unit class - enigmatic leaders with Robin Hood philosophy */ export class DreadRaidersHeroUnit extends HeroUnit { constructor() { super(); this.faction = "dread"; this.factionName = "Dread Raiders"; // Dread Raiders heroes are enigmatic leaders fighting corporate oppression } } /** * Dread Raiders outpost building class - pirate bases and raider camps */ export class DreadRaidersOutpost extends SpecialBuilding { constructor() { super(); this.faction = "dread"; this.factionName = "Dread Raiders"; // Dread Raiders outposts are fortified pirate bases } get buildingType() { return "merc-outpost"; } } /** * Alias for DreadRaidersOutpost to match expected naming convention */ export const DreadRaidersBuilding = DreadRaidersOutpost; /** * Alias for DreadRaidersMercUnit to match expected naming convention */ export const DreadRaidersUnit = DreadRaidersMercUnit; //# sourceMappingURL=dread.js.map