@zerospacegg/iolin
Version:
Pure TypeScript implementation of ZeroSpace game data processing (PKL-free)
123 lines • 5.22 kB
JavaScript
"use strict";
/**
* Galavax - Legion's High Priest and master of sacrificial magic
* Spellcaster hero with fireball conjuration and sacrificial spear abilities
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Galavax = 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"));
const sacrificial_site_js_1 = __importDefault(require("../building/sacrificial-site.cjs"));
class Galavax extends legion_classes_js_1.LegionHeroUnit {
constructor() {
super();
this.name = "Galavax";
this.hexiteCost = 0;
this.fluxCost = 200;
this.buildTime = 30;
this.buildCount = 1;
this.uuid = "11ed3f29-7fce-4882-86c4-9207b2f27b56";
// Spellcaster stats - divinely enhanced
this.hp = 300;
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];
// Creates sacrificial sites
this.creates = [sacrificial_site_js_1.default.id];
// Tags for identification and targeting - none needed for Galavax
// Magical ranged attack effective against all targets
this.attacks.attack = new ability_js_1.Attack({
name: "Attack",
damage: 25,
range: 1200,
cooldown: 1.4,
targets: ["ground", "air"],
parentId: this.id,
parentUUID: this.uuid,
});
// Fireball spell - slow moving projectile with burn effects
this.spells.fireball = new ability_js_1.Spell({
name: "Fireball",
hotkey: "D",
energyCost: 40,
energyType: "classic",
cooldown: 14,
targets: ["map"],
targetMode: "strip",
description: "Hurl a fireball which slowly moves across battlefield and burns enemy units and structures. 90 damage the first time it hits a unit, 20 damage per tick after.",
parentId: this.id,
parentUUID: this.uuid,
});
// Sacrificial Spear spell - dual purpose offensive and healing
this.spells.sacrificialSpear = new ability_js_1.Spell({
name: "Sacrificial Spear",
hotkey: "F",
energyCost: 25,
energyType: "classic",
cooldown: 10,
targets: ["ground"],
description: "Choose one: Deals 80 damage and slows an enemy unit for 5 seconds OR Sacrifices a friendly Thrall, healing nearby units for 15 seconds.",
parentId: this.id,
parentUUID: this.uuid,
});
// Lightning Spear upgrade - area lightning damage
this.upgrades.lightningSpear = new ability_js_1.Upgrade({
name: "Lightning Spear",
description: "Sacrificial Spear releases lightning upon impact, dealing 40 damage and slowing 4 nearby enemies.",
tier: "T2.5",
fluxCost: 125,
researchTime: 40,
parentId: this.id,
parentUUID: this.uuid,
});
// Improved Sacrifice upgrade - enhanced healing
this.upgrades.improvedSacrifice = new ability_js_1.Upgrade({
name: "Improved Sacrifice",
description: "Doubles heal radius and rate of healing for Sacrificial Spear (increased base heal radius in patch).",
tier: "T2.5",
fluxCost: 125,
researchTime: 40,
parentId: this.id,
parentUUID: this.uuid,
});
// Burning Fireball upgrade - explosive ground fire
this.upgrades.burningFireball = new ability_js_1.Upgrade({
name: "Burning Fireball",
description: "Fireball explodes when it reaches the target setting the ground on fire.",
tier: "T2.5",
fluxCost: 175,
researchTime: 55,
parentId: this.id,
parentUUID: this.uuid,
});
// Fast Fireball upgrade - increased projectile speed
this.upgrades.fastFireball = new ability_js_1.Upgrade({
name: "Fast Fireball",
description: "Increases fireball speed by 75%",
tier: "T2.5",
fluxCost: 175,
researchTime: 55,
parentId: this.id,
parentUUID: this.uuid,
});
// Lore - High Priest embodying sacrificial magic mastery
}
}
exports.Galavax = Galavax;
Galavax.src = "src/zerospace/faction/legion/hero/galavax.ts";
exports.default = Galavax;
//# sourceMappingURL=galavax.js.map