UNPKG

@zerospacegg/iolin

Version:

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

93 lines 2.62 kB
/** * Arandi Classes - Mercenary faction classes * Arandi are an ancient interdimensional empire with mastery over time and space * As a merc faction, they have: few talents, few units, single building, single hero, single topbar */ import { FactionTalent, Topbar } from "../engine/ability.js"; import { MercenaryOutpostBuilding, SpecialBuilding } from "../engine/building.js"; import { MercFaction } from "../engine/faction.js"; import { HeroUnit, MercUnit } from "../engine/unit.js"; /** * Arandi-specific talent that automatically sets abilityOf to "arandi" */ export class ArandiTalent extends FactionTalent { get type() { return "ability"; } get abilityOf() { return "arandi"; } constructor(props) { super(props); this.faction = "arandi"; this.factionName = "Arandi"; } } /** * Arandi-specific topbar that automatically sets abilityOf to "arandi" */ export class ArandiTopbar extends Topbar { get abilityOf() { return "arandi"; } constructor() { super(); } } /** * Arandi faction class extending MercenaryFaction */ export class ArandiFaction extends MercFaction { constructor() { super(); // Set faction properties this.faction = "arandi"; this.factionName = "Arandi"; // Arandi are an ancient interdimensional empire } } /** * Arandi merc unit class - interdimensional warriors with temporal abilities */ export class ArandiMercUnit extends MercUnit { constructor() { super(); this.faction = "arandi"; this.factionName = "Arandi"; // Arandi units are mercenary units with advanced technology } } /** * Arandi hero unit class - TriArch leaders with cosmic powers */ export class ArandiHeroUnit extends HeroUnit { constructor() { super(); this.faction = "arandi"; this.factionName = "Arandi"; // Arandi heroes are TriArch leaders with interdimensional mastery } } /** * Arandi special building class - merc outpost */ export class ArandiSpecialBuilding extends SpecialBuilding { constructor() { super(); this.faction = "arandi"; this.factionName = "Arandi"; // Arandi special buildings are merc outposts } } /** * Arandi mercenary outpost building class */ export class ArandiMercOutpost extends MercenaryOutpostBuilding { constructor() { super(); this.faction = "arandi"; this.factionName = "Arandi"; // Arandi merc outpost with interdimensional technology } } //# sourceMappingURL=arandi.js.map