UNPKG

@zerospacegg/iolin

Version:

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

121 lines 4.91 kB
"use strict"; /** * Inquisitress - Legion's warrior-priest and melee combat specialist * Melee hero with cleave attacks, charge abilities, and sacrificial protection */ Object.defineProperty(exports, "__esModule", { value: true }); exports.Inquisitress = void 0; const legion_js_1 = require("../../../../defaults/legion.cjs"); const ability_js_1 = require("../../../../engine/ability.cjs"); class Inquisitress extends legion_js_1.LegionHeroUnit { constructor() { super(); // HP will be set at the proper location below this.hexiteCost = 150; this.fluxCost = 150; this.buildTime = 30; this.buildCount = 1; this.name = "Inquisitress"; this.internalId = "Troop_Empire_Inquisitress_C"; this.internalPath = "/Game/Nova/Archetypes_Troops/Troop_Empire_Inquisitress.Default__Troop_Empire_Inquisitress_C"; this.internalTags = [ "Attackable.Unit.Hero", "Logic.SpawnAtOldestSpawner", "Attackable.Biological", "Logic.NoVeterancy", ]; this.internalSecondaryTags = ["Infantry"]; this.uuid = "85985ac0-ed49-4642-b37f-6aecd66d1c40"; // Melee warrior stats - divinely enhanced this.hp = 350; this.shields = 0; this.armor = 0; this.armorType = "medium"; this.speed = 500; // Divine purpose this.supply = 10; // Heroes consume supply this.stunResist = 50; // Divine protection this.energy = 100; // Standard hero energy this.vision = 1800; this.turnSpeed = 6000; this.pushability = 0.1; // Costs // Relationships this.createdBy = ["faction/legion/building/altar"]; this.unlockedBy = ["faction/legion/building/altar"]; this.upgradedBy = ["faction/legion/building/armory"]; // Tags // Tags for identification and targeting - none needed for Inquisitress // Powerful melee attack with blessed weaponry (faster attacks, longer leash range in patch) this.attacks.attack = new ability_js_1.Attack({ name: "Attack", damage: 30, range: 150, cooldown: 1.05, cooldownBetweenShots: 1.05, armorPenetration: 0, delay: 0.303, targets: ["ground"], parentId: this.id, parentUUID: this.uuid, }); // Cleave spell - frontal area damage and slow this.spells.cleave = new ability_js_1.Spell({ name: "Cleave", hotkey: "Q", energyCost: 25, energyType: "classic", cooldown: 5, targets: ["ground"], description: "deals 65 damage to and slows by 50% for 2 seconds to enemy units in front of the hero.", parentId: this.id, parentUUID: this.uuid, }); // Charge spell - mobility and damage this.spells.charge = new ability_js_1.Spell({ name: "Charge", hotkey: "W", energyCost: 14, energyType: "classic", cooldown: 6, targets: ["ground"], description: "Charge to a location dealing 25 damage to enemy units in its way. Gain increased +50% movement speed for 5s", parentId: this.id, parentUUID: this.uuid, }); // Improved Charge upgrade - enhanced range and charges this.upgrades.improvedCharge = new ability_js_1.Upgrade({ name: "Improved Charge", description: "+25% Charge range. Charge now has 2 cast charges.", tier: "T2.5", fluxCost: 125, researchTime: 40, parentId: this.id, parentUUID: this.uuid, }); // Improved Cleave upgrade - doubled area this.upgrades.improvedCleave = new ability_js_1.Upgrade({ name: "Improved Cleave", description: "+100% Cleave area", tier: "T2.5", fluxCost: 125, researchTime: 40, parentId: this.id, parentUUID: this.uuid, }); // One Life for Another upgrade - ultimate survival ability this.upgrades.oneLifeForAnother = new ability_js_1.Upgrade({ name: "One Life for Another", description: "When taking fatal damage, sacrifice a nearby Thrall and heal instead. Each sacrifice consumes a green orb. Orbs regenerate when not attacked.", tier: "T3.5", fluxCost: 175, researchTime: 55, parentId: this.id, parentUUID: this.uuid, }); // Lore - warrior-priest embodying martial fanaticism } } exports.Inquisitress = Inquisitress; Inquisitress.src = "src/zerospace/faction/legion/hero/inquisitress.ts"; exports.default = Inquisitress; //# sourceMappingURL=inquisitress.js.map