@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
110 lines • 4.5 kB
JavaScript
"use strict";
/**
* Inquisitress - Legion's warrior-priest and melee combat specialist
* Melee hero with cleave attacks, charge abilities, and sacrificial protection
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Inquisitress = void 0;
const ability_js_1 = require("../../../../engine/ability.cjs");
const legion_classes_js_1 = require("../../legion-classes.cjs");
const altar_js_1 = __importDefault(require("../building/altar.cjs"));
const armory_js_1 = __importDefault(require("../building/armory.cjs"));
class Inquisitress extends legion_classes_js_1.LegionHeroUnit {
constructor() {
super();
this.name = "Inquisitress";
this.hexiteCost = 200;
this.fluxCost = 200;
this.buildTime = 30;
this.buildCount = 1;
this.uuid = "85985ac0-ed49-4642-b37f-6aecd66d1c40";
// Melee warrior stats - divinely enhanced
this.hp = 400;
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
// Costs
// Relationships
this.createdBy = [altar_js_1.default.id];
this.unlockedBy = [altar_js_1.default.id];
this.upgradedBy = [armory_js_1.default.id];
// 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: 0.9,
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